fail2ban是由Python語言開發監控軟件,通過監控系統日志(Debian/Ubuntu:/var/log/auth.log、CentOS/Redhat:/var/log/secure)的錯誤登錄信息來調用iptables屏蔽相應登錄IP,以阻止某個IP不停嘗試密碼。fail2ban在防御對SSH服務器的暴力密碼破解上非常有用。經過網友強烈要求,已經集成到《OneinStack》
使用《OneinStack》,內置fail2ban,一鍵安裝並設置好即可
wget mirrors.linuxeye.com/oneinstack.tar.gz pushd oneinstack ./addons.sh #選擇8,安裝fail2ban
[root@OneinStack ~]# cat /etc/fail2ban/jail.local [DEFAULT] ignoreip = 127.0.0.1/8 #指定哪些地址可以忽略 fail2ban 防御 bantime = 86400 #客戶端主機被禁止的時長(秒) findtime = 600 #查找失敗次數的時長(秒) maxretry = 5 #客戶端主機被禁止前允許失敗的次數 [ssh-iptables] enabled = true filter = sshd action = iptables[name=SSH, port=22, protocol=tcp] logpath = /var/log/secure
fail2ban會自動禁止在最近10分鐘內有超過5次訪問嘗試失敗的任意IP地址。這個IP地址將會在24小時內一直被禁止訪問SSH服務。安裝設置啟用後,Fail2ban會在iptables添加相關規則,如下:
ssh 你的服務器IP,輸錯密碼5次以上,查看日志/var/log/fail2ban.log [ssh-iptables] Ban 91.195.103.166即被禁用
/usr/local/python/bin/fail2ban-client status ssh-iptables
顯示出被禁止IP地址列表
為了解鎖特定的IP地址命令:
/usr/local/python/bin/fail2ban-client set ssh-iptables unbanip 91.195.103.166原文:https://blog.linuxeye.cn/454.html