防御SSH口令爆破攻击
防御SSH口令爆破攻击
只要服务器在线且ssh是默认的22端口,总能看到大量的IP在做SSH暴力破解工作。虽然可以通过修改ssh端口来避免这个问题,但有些情况可能不好修改。接下来就开始配置,让我们服务器更加安全,避免被当作肉鸡。
安装
CentOS系统
1 | yum install fail2ban |
Debian或Ubuntu系统
1 | apt-get install fail2ban |
配置
增加sshd的配置
1 | vi /etc/fail2ban/jail.d/sshd.local |
例如:
1 | [ssh-iptables] |
如果是debian或ubuntu系统,logpath需要修改成/var/log/auth.log
保存这个文件。
启动
CentOS 7等使用systemctl方式启动
1 | systemctl start fail2ban.service |
老的init启动脚本方式的启动
1 | service fail2ban start |
或
1 | /etc/init.d/fail2ban start |
巡检
1.检查fail2ban状态
使用参数’ping’来运行fail2ban-client 命令。 如果fail2ban服务正常运行,可以看到“Server replied:pong”作为响应。
1 | fail2ban-client ping |
1 | # fail2ban-client status |
检查封禁情况
1 | fail2ban-client status ssh-iptables |
2.解锁IP地址
1).解锁特定的IP地址
1 | fail2ban-client set ssh-iptables unbanip 1.1.1.1 |
2).解锁所有的IP地址
第一种方法:停止Fail2ban 服务
停止Fail2ban 服务,那么所有的IP地址都会被解锁。当你重启 Fail2ban,它会从/var/log/secure中找到异常的IP地址列表,如果这些异常地址的发生时间仍然在禁止时间内,那么Fail2ban会重新将这些IP地址禁止。
第二种方法:日志滚动
1 | logrotate -f /etc/logrotate.conf |
查看/var/log/secure有无被清理,如果没有,手动清理
重启fail2ban
1 | /etc/init.d/fail2ban restart |
重启iptables
1 | /etc/init.d/iptables restart |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 疯疯の神奇小窝!
评论