温馨提示×

ubuntu ftpserver如何做日志

小樊
41
2026-10-08 10:47:38
栏目: 智能运维

在 Ubuntu 上搭建 FTP 服务器(常见为 vsftpd),日志配置主要有以下几种方式和实践。下面以 vsftpd 为例说明(最常见)。


一、vsftpd 日志基本配置

1. 安装 vsftpd

sudo apt update
sudo apt install vsftpd

2. 编辑配置文件

sudo nano /etc/vsftpd.conf

3. 开启日志功能

添加或修改以下内容:

# 启用上传/下载日志
xferlog_enable=YES

# 使用标准 xferlog 格式
xferlog_std_format=YES

# 日志文件路径(默认)
xferlog_file=/var/log/vsftpd.log

# 详细操作日志(推荐开启)
log_ftp_protocol=YES

# 双写日志(syslog + 文件)
syslog_enable=NO

✅ log_ftp_protocol=YES 会记录每一个 FTP 命令,非常详细


二、日志文件位置

类型 路径
传输日志 /var/log/vsftpd.log
系统日志 /var/log/syslog
认证日志 /var/log/auth.log

查看日志:

tail -f /var/log/vsftpd.log

三、使用 syslog(可选)

如果你想用系统日志统一管理:

syslog_enable=YES

日志会出现在:

/var/log/syslog

过滤查看:

grep vsftpd /var/log/syslog

四、使用 logrotate 管理日志

Ubuntu 默认有 vsftpd 的 logrotate 配置:

/etc/logrotate.d/vsftpd

示例内容:

/var/log/vsftpd.log {
    weekly
    rotate 4
    compress
    missingok
    notifempty
}

手动测试:

sudo logrotate -f /etc/logrotate.d/vsftpd

五、查看用户登录与操作

登录记录

grep ftp /var/log/auth.log

上传/下载记录

cat /var/log/vsftpd.log

示例:

Mon Jan 01 10:00:00 2024 1 192.168.1.10 1024 /test.txt b _ o r user ftp 0 *

六、常见问题

1. 没有日志文件?

  • 确认 xferlog_enable=YES
  • 重启服务:
sudo systemctl restart vsftpd

2. 日志不更新?

  • 检查权限:
ls -l /var/log/vsftpd.log
  • vsftpd 通常以 ftp 或 nobody 运行

七、其他 FTP 服务器(简要)

ProFTPD

sudo apt install proftpd

日志:

/var/log/proftpd/proftpd.log

Pure-FTPd

sudo apt install pure-ftpd
/var/log/syslog

如果你愿意,我可以:

  • 帮你 定制日志格式
  • 配置 按用户记录日志
  • 做 FTP 审计方案
  • 或写成 systemd + rsyslog 方案

告诉我你用的 FTP 软件和需求即可。

0 踩