在 Linux 下“监控 SFTP”通常有几个不同层次的目标,我先按常见需求分类,再给你具体做法和命令,你可以按需取用。
SFTP 一般通过 SSH 提供,日志在:
/var/log/secure
/var/log/auth.log
查看 SFTP 登录:
grep sftp /var/log/auth.log
查看登录成功/失败:
grep -E "Accepted|Failed" /var/log/auth.log | grep sshd
tail -f /var/log/auth.log | grep sshd
编辑:
/etc/ssh/sshd_config
确保包含:
Subsystem sftp internal-sftp -l INFO
或更详细:
Subsystem sftp internal-sftp -l VERBOSE
重启 SSH:
systemctl restart sshd
然后日志中会出现:
示例:
grep sftp /var/log/auth.log
yum install audit # CentOS
apt install auditd # Ubuntu
auditctl -w /sftp -p rwxa -k sftp_monitor
ausearch -k sftp_monitor
或实时:
tail -f /var/log/audit/audit.log | grep sftp_monitor
✅ 可记录:
ps -ef | grep sftp
或更清晰:
ps -eo pid,user,cmd | grep sftp
Match Group sftpusers
ChrootDirectory /sftp
ForceCommand internal-sftp -l INFO
X11Forwarding no
AllowTcpForwarding no
| 需求 | 推荐方式 |
|---|---|
| 看谁登录 | auth.log / secure |
| 看传了什么文件 | internal-sftp -l VERBOSE |
| 强审计 | auditd |
| 生产环境 | auditd + 日志集中 |
如果你愿意,可以告诉我:
我可以直接给你可复制的配置方案。