在Ubuntu系统中,SFTP(SSH File Transfer Protocol)的日志记录可以通过配置SSH服务器来实现。以下是详细的步骤:
首先,你需要编辑SSH服务器的配置文件/etc/ssh/sshd_config
。
sudo nano /etc/ssh/sshd_config
在sshd_config
文件中,找到或添加以下行来启用SFTP的详细日志记录:
Subsystem sftp internal-sftp -l INFO
这里的-l INFO
参数指定了日志级别为INFO,你可以根据需要调整为其他级别,如DEBUG、WARN等。
保存并关闭文件后,重启SSH服务以使更改生效。
sudo systemctl restart sshd
SSH服务器的日志通常记录在/var/log/auth.log
文件中。你可以使用以下命令查看SFTP相关的日志条目:
sudo tail -f /var/log/auth.log | grep sftp
这个命令会实时显示包含sftp
关键字的日志条目。
如果你希望将SFTP的日志记录到单独的文件中,可以在sshd_config
文件中添加以下行:
SyslogFacility AUTHPRIV
LogLevel INFO
然后,确保你的系统日志配置允许将AUTHPRIV设施的日志写入到你指定的文件中。通常,这可以通过编辑/etc/rsyslog.conf
或/etc/rsyslog.d/50-default.conf
文件来实现。
例如,在/etc/rsyslog.d/50-default.conf
中添加:
authpriv.* /var/log/sftp.log
& stop
然后重启rsyslog服务:
sudo systemctl restart rsyslog
这样,SFTP的日志就会被记录到/var/log/sftp.log
文件中。
通过以上步骤,你就可以在Ubuntu系统中成功设置SFTP的日志记录。