Ubuntu 上查看 vsftpd 日志的常用方法
Ubuntu 系统中,vsftpd 的日志文件通常位于 /var/log/vsftpd.log(服务本身日志),认证相关的日志也会记录在 /var/log/auth.log 中。若未找到日志文件,需检查 vsftpd 配置是否启用了日志记录。
若需实时监控 vsftpd 日志的最新动态(如用户登录、文件传输等),可使用 tail -f 命令。例如:
sudo tail -f /var/log/vsftpd.log
该命令会持续输出日志文件的新增内容,按 Ctrl+C 可退出实时查看。
若需查看完整的日志历史记录,可使用 less 或 more 命令进行分页浏览。例如:
sudo less /var/log/vsftpd.log
使用上下箭头键、PgUp/PgDn 键翻页,按 q 键退出。
若需查找特定关键字(如“error”“connection”“192.168.1.100”)的日志条目,可使用 grep 命令。例如:
sudo grep 'error' /var/log/vsftpd.log      # 查找错误日志
sudo grep '192.168.1.100' /var/log/auth.log  # 查找特定IP的登录日志
该命令会过滤出包含关键字的日志行,便于快速定位问题。
若系统使用 systemd(Ubuntu 16.04 及以上版本默认使用),可通过 journalctl 命令查看 vsftpd 服务的日志。常用选项:
sudo journalctl -u vsftpd.service          # 查看所有 vsftpd 日志
sudo journalctl -u vsftpd.service -f       # 实时跟踪日志
sudo journalctl -u vsftpd.service -n 10    # 查看最近10条日志
该命令整合了系统日志与服务日志,适合查看与系统相关的 ftp 事件。
若日志文件不存在或未记录所需信息,需修改 vsftpd 配置文件 /etc/vsftpd.conf,启用日志记录:
sudo nano /etc/vsftpd.conf
确保以下配置项存在且未被注释(取消行首的 #):
xferlog_enable=YES       # 启用传输日志
xferlog_file=/var/log/vsftpd.log  # 指定日志文件路径
xferlog_std_format=YES   # 使用标准日志格式
修改后,重启 vsftpd 服务使配置生效:
sudo systemctl restart vsftpd
若使用旧版初始化系统,可使用 sudo service vsftpd restart。