在Ubuntu中,使用vsftpd(Very Secure FTP Daemon)时,可以通过以下方法防止暴力破解:
sudo apt-get update
sudo apt-get install fail2ban
/etc/fail2ban/jail.local
。如果文件不存在,请创建一个。sudo nano /etc/fail2ban/jail.local
在jail.local
文件中,添加以下内容:
[DEFAULT]
bantime = 600
maxretry = 3
[vsftpd]
enabled = true
port = ftp
filter = vsftpd
logpath = /var/log/vsftpd.log
maxretry = 3
bantime = 600
这里的bantime
是封禁时间(以秒为单位),maxretry
是在封禁之前允许的最大尝试次数。你可以根据需要调整这些值。
/etc/fail2ban/filter.d/
目录下创建一个名为vsftpd.conf
的文件:sudo nano /etc/fail2ban/filter.d/vsftpd.conf
在vsftpd.conf
文件中,添加以下内容:
[Definition]
failregex = ^%(__prefix_line)s(?:error: PAM: )?Authentication failure for <HOST> from <HOST>
ignoreregex =
这个正则表达式用于匹配vsftpd日志中的失败登录尝试。确保failregex
与你的vsftpd日志格式相匹配。
sudo systemctl restart fail2ban
现在,fail2ban将监控vsftpd日志并阻止尝试次数超过maxretry
值的IP地址。