温馨提示×

如何监控linux ftpserver日志

小樊
46
2026-10-22 19:08:53
栏目: 智能运维

监控 Linux 上的 FTP Server 日志,取决于你使用的 FTP 服务软件(最常见的是 vsftpd、ProFTPD、Pure-FTPd)。下面以常见场景为例说明。


一、常见 FTP 服务及日志位置

1. vsftpd(最常见)

配置文件

/etc/vsftpd/vsftpd.conf
/etc/vsftpd.conf

日志相关配置

xferlog_enable=YES
xferlog_file=/var/log/xferlog
vsftpd_log_file=/var/log/vsftpd.log
log_ftp_protocol=YES   # 记录详细协议日志(调试用)

查看日志

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

2. ProFTPD

配置文件

/etc/proftpd/proftpd.conf

常见日志配置

SystemLog /var/log/proftpd/proftpd.log
TransferLog /var/log/proftpd/xferlog

查看日志

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

3. Pure-FTPd

通常结合 syslog:

/var/log/messages
/var/log/syslog

或自定义:

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

二、实时监控系统日志(通用)

使用 tail 实时查看

tail -f /var/log/vsftpd.log

查看系统认证日志(登录失败等)

tail -f /var/log/secure        # CentOS / RHEL
tail -f /var/log/auth.log      # Ubuntu / Debian

三、使用 journalctl(systemd 系统)

如果 FTP 使用 systemd 管理:

journalctl -u vsftpd -f
journalctl -u proftpd -f

四、监控登录与异常行为

1. 监控失败登录

grep "authentication failure" /var/log/secure

2. 监控异常 IP

grep "CONNECT" /var/log/vsftpd.log | awk '{print $NF}' | sort | uniq -c

五、高级监控方案

1. fail2ban(防暴力破解)

yum install fail2ban   # CentOS
apt install fail2ban   # Ubuntu

配置示例(/etc/fail2ban/jail.local):

[vsftpd]
enabled = true
logpath = /var/log/vsftpd.log
maxretry = 5

2. logwatch / elk / grafana

  • logwatch:每日邮件汇总
  • ELK / Loki:集中化日志分析
  • Prometheus + Grafana:指标监控

六、推荐监控内容

✅ 登录成功/失败
✅ 文件上传/下载
✅ 异常断开
✅ 非法路径访问
✅ 高频失败 IP


如果你能告诉我:

  • 使用的 FTP 软件
  • Linux 发行版
  • 是想 实时看 还是 自动报警

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

0 踩