温馨提示×

Linux FTPServer如何开启日志

小樊
46
2026-08-27 22:13:41
栏目: 智能运维

在 Linux 上开启 FTPServer(FTP 服务器)日志,取决于你使用的是哪种 FTP 服务软件。最常见的是 vsftpd,其次是 ProFTPDPure-FTPd。下面分别说明。


一、vsftpd(最常见)

1️⃣ 配置文件位置

/etc/vsftpd/vsftpd.conf
# 或
/etc/vsftpd.conf

2️⃣ 开启日志(推荐配置)

编辑配置文件:

sudo vim /etc/vsftpd/vsftpd.conf

添加或修改以下内容:

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

# 使用标准 xferlog 格式
xferlog_std_format=YES

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

# 启用 vsftpd 自身日志(推荐)
log_ftp_protocol=YES

⚠️ log_ftp_protocol=YES 会记录非常详细的日志,包括命令和响应,仅建议调试时开启,生产环境可关闭。

3️⃣ 重启服务

sudo systemctl restart vsftpd

4️⃣ 查看日志

# 传输日志
cat /var/log/xferlog

# 详细日志(如果开启)
journalctl -u vsftpd
# 或
tail -f /var/log/messages

二、ProFTPD

1️⃣ 配置文件

/etc/proftpd/proftpd.conf

2️⃣ 开启日志

# 传输日志
TransferLog /var/log/proftpd/xferlog

# 系统日志
SystemLog /var/log/proftpd/proftpd.log

3️⃣ 重启服务

sudo systemctl restart proftpd

4️⃣ 查看日志

tail -f /var/log/proftpd/xferlog
tail -f /var/log/proftpd/proftpd.log

三、Pure-FTPd

1️⃣ 启动参数方式(常见)

pure-ftpd -O w3c:/var/log/pureftpd.log

或 systemd 下:

sudo systemctl edit pure-ftpd

添加:

ExecStart=
ExecStart=/usr/sbin/pure-ftpd -O clf:/var/log/pureftpd.log

2️⃣ 重启

sudo systemctl restart pure-ftpd

四、通用系统日志(辅助)

FTP 日志通常也会写入系统日志:

# RHEL / CentOS
/var/log/messages

# Ubuntu / Debian
/var/log/syslog

查看 FTP 相关日志:

grep ftp /var/log/syslog

五、建议配置(生产环境)

✅ 开启:

xferlog_enable=YES
xferlog_std_format=YES

❌ 不建议长期开启:

log_ftp_protocol=YES

六、常见问题

❓ 日志不生成?

  • 确认服务已重启
  • 确认日志目录可写
  • 确认 SELinux 未阻止(CentOS/RHEL)

临时关闭 SELinux 测试:

setenforce 0

如果你愿意,可以告诉我:

  • ✅ 使用的 Linux 发行版
  • ✅ FTP 软件(vsftpd / ProFTPD / Pure-FTPd)

我可以给你 精确到版本的配置示例

0