利于群晖的File Station+SFTP实现第三方人员快速获取服务器应用日志

本文涉及的产品
文件存储 NAS,50GB 3个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: 利于群晖的File Station+SFTP实现第三方人员快速获取服务器应用日志

利于群晖的File Station+SFTP实现第三方人员快速获取服务器应用日志

需求场景:

由于供应商或者第三方技术人员需要查看应用服务器上的日志进行问题排查

但是基于运维安全和权限考虑,又不想将服务器SSH权限给到用户(虽然通过堡垒机上授权给到第三方用户)

也不想每次都自己SSH登录服务器后手工下载日志文件后打包发给第三

方用户,这样太浪费精力

解决方案:

服务器上创建SFTP用户,然后利于群晖的File Station为第三方用户提供方便查看nginx服务器访问日志的途径

具体步骤如下

假设第三方用户是要查看Nginx服务器的访问日志

1、Nginx服务器IP 192.168.31.170

2、群晖NAS 192.168.31.140

一、nginx服务器上创建SFTP用户

参考如下链接完成

https://www.linuxprobe.com/linux-sftp.html
https://blog.csdn.net/zhangzhenzhou777/article/details/120126015

1、Nginx服务器上面创建SFTP用户

SFTP用户只能登录SFTP,无法登录shell

groupadd sftpusers
useradd -d /var/log/nginx -s /sbin/nologin -G sftpusers sftpuser
passwd sftpuser

(图片点击放大查看)

2、修改sshd_config

vi /etc/ssh/sshd_config
#Subsystem      sftp    /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp
Match Group sftpusers
       ChrootDirectory %h
       ForceCommand internal-sftp
       AllowTcpForwarding no
systemctl  restart sshd

(图片点击放大查看)

(图片点击放大查看)

Tips

1、如果通过sftp登录时报如下错误时

sftp sftpuser@192.168.31.170
packet_write_wait: Connection to 192.168.31.170 port 22: Broken pipe
Couldn't read packet: Connection reset by peer

(图片点击放大查看)

可以在该服务器上查看日志

tail -f /var/log/secure

(图片点击放大查看)

根据如下报错

fatal: bad ownership or modes for chroot directory

问题的原因是ChrootDirectory的权限问题,请确保sftp用户根目录的所有人是root 修改

解决办法:chown root SFTP用户的家目录

2、权限报错

sftp> dir
remote readdir("/"): Permission denied

无法读取目录下文件

(图片点击放大查看)

解决办法

(图片点击放大查看)

(图片点击放大查看)

chmod -R 755 /var/log/nginx

二、群晖上创建日志查看的用户

1、先创建logviewer专门查看日志的用户

(图片点击放大查看)

2、单独创建一个目录LogSpace,授权给到这个logviewer用户

(图片点击放大查看)

(图片点击放大查看)

3、在FileStation设置中允许这个logviewer用户装载服务器

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

三、登录群晖NAS后FileStation中装载SFTP服务器

logviewer登录NAS上装载SFTP后 这样可以在NAS中查看到Nginx服务器的日志

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

总结:这样就无需给第三方用户提供Nginx服务器的SSH权限

只用提供一个NAS登录地址和NAS账号就可以让第三方用户方便快捷地查看nginx的日志

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
16天前
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL的服务器日志文件
本文介绍了PostgreSQL数据库的物理存储结构,重点讨论了服务器日志文件。通过`pg_ctl`命令启动PostgreSQL实例时,使用`-l`参数指定日志文件位置,记录数据库启动、运行及关闭过程中的关键信息。附有相关视频讲解和日志文件示例。
|
2月前
|
监控 中间件 Java
后端技术:构建高效、稳定的服务器端应用
【10月更文挑战第5天】后端技术:构建高效、稳定的服务器端应用
103 0
|
1月前
|
存储 缓存 前端开发
如何优化 SSR 应用以减少服务器压力
优化SSR应用以减少服务器压力,可采用代码分割、缓存策略、数据预加载、服务端性能优化、使用CDN、SSR与SSG结合、限制并发请求、SSR与CSR平滑切换、优化前端资源及利用框架特性等策略。这些方法能有效提升性能和稳定性,同时保证用户体验。
|
2月前
|
机器学习/深度学习 人工智能 运维
企业内训|LLM大模型在服务器和IT网络运维中的应用-某日企IT运维部门
本课程是为某在华日资企业集团的IT运维部门专门定制开发的企业培训课程,本课程旨在深入探讨大型语言模型(LLM)在服务器及IT网络运维中的应用,结合当前技术趋势与行业需求,帮助学员掌握LLM如何为运维工作赋能。通过系统的理论讲解与实践操作,学员将了解LLM的基本知识、模型架构及其在实际运维场景中的应用,如日志分析、故障诊断、网络安全与性能优化等。
90 2
|
1月前
|
弹性计算 开发工具 git
2分钟在阿里云ECS控制台部署个人应用(图文示例)
作为一名程序员,我在部署托管于Github/Gitee的代码到阿里云ECS服务器时,经常遇到繁琐的手动配置问题。近期,阿里云ECS控制台推出了一键构建部署功能,简化了这一过程,支持Gitee和GitHub仓库,自动处理git、docker等安装配置,无需手动登录服务器执行命令,大大提升了部署效率。本文将详细介绍该功能的使用方法和适用场景。
2分钟在阿里云ECS控制台部署个人应用(图文示例)
|
20天前
|
运维 监控 Cloud Native
一行代码都不改,Golang 应用链路指标日志全知道
本文将通过阿里云开源的 Golang Agent,帮助用户实现“一行代码都不改”就能获取到应用产生的各种观测数据,同时提升运维团队和研发团队的幸福感。
|
18天前
|
开发框架 .NET PHP
网站应用项目如何选择阿里云服务器实例规格+内存+CPU+带宽+操作系统等配置
对于使用阿里云服务器的搭建网站的用户来说,面对众多可选的实例规格和配置选项,我们应该如何做出最佳选择,以最大化业务效益并控制成本,成为大家比较关注的问题,如果实例、内存、CPU、带宽等配置选择不合适,可能会影响到自己业务在云服务器上的计算性能及后期运营状况,本文将详细解析企业在搭建网站应用项目时选购阿里云服务器应考虑的一些因素,以供参考。
|
21天前
|
存储 Prometheus 监控
Docker容器内进行应用调试与故障排除的方法与技巧,包括使用日志、进入容器检查、利用监控工具及检查配置等,旨在帮助用户有效应对应用部署中的挑战,确保应用稳定运行
本文深入探讨了在Docker容器内进行应用调试与故障排除的方法与技巧,包括使用日志、进入容器检查、利用监控工具及检查配置等,旨在帮助用户有效应对应用部署中的挑战,确保应用稳定运行。
30 5
|
1月前
|
安全 开发工具 Swift
Swift 是苹果公司开发的现代编程语言,具备高效、安全、简洁的特点,支持类型推断、闭包、泛型等特性,广泛应用于苹果各平台及服务器端开发
Swift 是苹果公司开发的现代编程语言,具备高效、安全、简洁的特点,支持类型推断、闭包、泛型等特性,广泛应用于苹果各平台及服务器端开发。基础语法涵盖变量、常量、数据类型、运算符、控制流等,高级特性包括函数、闭包、类、结构体、协议和泛型。
29 2
|
1月前
|
存储 SQL 监控
下一篇
DataWorks