使用fail2ban防止恶意ssh登陆
最近检查了一下系统的流量等情况,发现有人尝试以root身份登陆系统,简单粗暴地尝试各种密码,实在是很没品的事。对付这种无聊人无聊事最好的办法就是安装fail2ban,让他们醒悟吧。
fail2ban的原理简而言之就是:扫描log文件,发现有告警就记录。当告警超过一定的阀值,例如失败了6次,就调用iptables,将对应的IP地址屏蔽一段时间(缺省为600秒)。因此首先要确保iptables已经安装了,否则仅仅靠fail2ban是没有任何作用的。
在Ubuntu 10.04环境安装fail2ban是件轻松愉快的事,运行以下命令即可:
sudo apt-get install fail2ban
安装后,fail2ban默认会随系统启动而启动。
由于ssh默认最大尝试数为6,我们希望改成3, 因此需要修改/etc/fail2ban/jail.conf文件。找到ssh段落简单修改即可:
[ssh] ... maxretry = 3
然后重启fail2ban使新配置生效:
sudo service fail2ban restart
可以检查/var/log/fail2ban.log文件了解各种过滤情况。