在 Ubuntu 上做 FTP 服务器审计,通常取决于你使用的 FTP 服务软件(最常见的是 vsftpd、proftpd、pure-ftpd)。下面以 vsftpd(最常用) 为主,兼顾其他方案,系统性说明如何做审计。
编辑配置文件:
sudo nano /etc/vsftpd.conf
确保以下参数开启:
xferlog_enable=YES
xferlog_std_format=NO
log_ftp_protocol=YES
dual_log_enable=YES
重启服务:
sudo systemctl restart vsftpd
/var/log/vsftpd.log —— 详细 FTP 协议日志(推荐审计用)/var/log/xferlog —— 传输日志(标准格式)查看日志:
sudo tail -f /var/log/vsftpd.log
示例记录:
CONNECT: Client "192.168.1.10"
LOGIN: User "alice"
DOWNLOAD: File "/pub/test.txt"
安装:
sudo apt install auditd
监控 FTP 目录(如 /srv/ftp):
sudo auditctl -w /srv/ftp -p rwxa -k ftp_audit
查看审计记录:
sudo ausearch -k ftp_audit
持久化规则:
echo "-w /srv/ftp -p rwxa -k ftp_audit" | sudo tee -a /etc/audit/rules.d/ftp.rules
sudo systemctl restart auditd
sudo grep "FAIL" /var/log/vsftpd.log
sudo apt install fail2ban
配置 vsftpd jail:
sudo nano /etc/fail2ban/jail.d/vsftpd.conf
[vsftpd]
enabled = true
port = ftp,ftp-data,ftps,ftps-data
logpath = /var/log/vsftpd.log
maxretry = 5
bantime = 3600
重启:
sudo systemctl restart fail2ban
sudo nano /etc/proftpd/proftpd.conf
SystemLog /var/log/proftpd/proftpd.log
ExtendedLog /var/log/proftpd/xfer.log ALL
sudo touch /var/log/pureftpd.log
sudo pure-ftpd -O clf:/var/log/pureftpd.log
✅ vsftpd 详细日志
✅ auditd 文件级监控
✅ fail2ban 防爆破
✅ 定期日志审查
如果你能告诉我:
我可以给你一套可直接用的配置模板。