温馨提示×

ubuntu sftp如何开启日志

小樊
36
2026-09-20 14:53:18
栏目: 智能运维

在 Ubuntu 上开启 SFTP 日志,通常是通过 SSH 服务(sshd) 来配置的,因为 SFTP 是基于 SSH 的。下面按常见场景说明。


一、开启 SFTP 基础日志(推荐)

1. 修改 sshd 配置文件

编辑 SSH 服务配置:

sudo vim /etc/ssh/sshd_config

确保或添加以下内容:

Subsystem sftp internal-sftp -l INFO -f AUTH

说明:

  • -l INFO:日志级别(INFO / VERBOSE / DEBUG)
  • -f AUTH:日志分类

2. 设置 SSH 日志级别(可选)

在 sshd_config 中:

LogLevel INFO

3. 重启 SSH 服务

sudo systemctl restart ssh

二、查看 SFTP 日志位置

Ubuntu 通常使用 systemd,日志在:

sudo journalctl -u ssh

或者实时查看:

sudo journalctl -u ssh -f

如果使用 rsyslog:

sudo tail -f /var/log/auth.log

三、为 SFTP 用户单独记录日志(进阶)

示例:为 sftp 用户单独日志

Subsystem sftp internal-sftp -l VERBOSE -f LOCAL6

在 /etc/rsyslog.conf 中添加:

local6.*    /var/log/sftp.log

然后:

sudo systemctl restart rsyslog
sudo systemctl restart ssh

四、记录 SFTP 文件操作(上传/下载)

SSH 默认 不记录具体文件传输内容,如需详细记录:

方法 1:使用 VERBOSE 日志

Subsystem sftp internal-sftp -l VERBOSE

方法 2:使用审计(auditd)

适合安全合规场景:

sudo apt install auditd
sudo auditctl -w /sftp目录 -p rwxa -k sftp

查看:

sudo ausearch -k sftp

五、常见问题

✅ SFTP 无日志?

  • 确认使用的是 internal-sftp
  • 确认日志服务正常运行

✅ 日志太多?

  • 使用 INFO 而非 DEBUG

如果你能说明:

  • 是否使用 chroot
  • 是否用于 审计合规
  • Ubuntu 版本

我可以给你更精确的配置示例。

0 踩