利于群晖的File Station+SFTP实现第三方人员快速获取服务器应用日志
由于供应商或者第三方技术人员需要查看应用服务器上的日志进行问题排查
但是基于运维安全和权限考虑,又不想将服务器SSH权限给到用户(虽然通过堡垒机上授权给到第三方用户)
也不想每次都自己SSH登录服务器后手工下载日志文件后打包发给第三
方用户,这样太浪费精力
服务器上创建SFTP用户,然后利于群晖的File Station为第三方用户提供方便查看nginx服务器访问日志的途径
假设第三方用户是要查看Nginx服务器的访问日志
1、Nginx服务器IP 192.168.31.170
2、群晖NAS 192.168.31.140
参考如下链接完成
https://www.linuxprobe.com/linux-sftp.html
https://blog.csdn.net/zhangzhenzhou777/article/details/120126015
SFTP用户只能登录SFTP,无法登录shell
groupadd sftpusers
useradd -d /var/log/nginx -s /sbin/nologin -G sftpusers sftpuser
passwd sftpuser
(图片点击放大查看)
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
(图片点击放大查看)
(图片点击放大查看)
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用户的家目录
sftp> dir
remote readdir("/"): Permission denied
无法读取目录下文件
(图片点击放大查看)
解决办法
(图片点击放大查看)
(图片点击放大查看)
chmod -R 755 /var/log/nginx
(图片点击放大查看)
(图片点击放大查看)
(图片点击放大查看)
(图片点击放大查看)
(图片点击放大查看)
(图片点击放大查看)
logviewer登录NAS上装载SFTP后 这样可以在NAS中查看到Nginx服务器的日志
(图片点击放大查看)
(图片点击放大查看)
(图片点击放大查看)
(图片点击放大查看)
(图片点击放大查看)
(图片点击放大查看)
总结:这样就无需给第三方用户提供Nginx服务器的SSH权限
只用提供一个NAS登录地址和NAS账号就可以让第三方用户方便快捷地查看nginx的日志
本文分享自 WalkingCloud 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!