顯示廣告
隱藏 ✕
看板 Knuckles_note
作者 Knuckles (站長 那克斯)
標題 [CentOS] 安裝 fail2ban 防止try ssh登入密碼
時間 2013年04月21日 Sun. PM 05:48:07



$ sudo yum install fail2ban

找不到的話 啟用 epel 這個 repository 後再裝
CentOS 6.x
$ sudo rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm


修改設定值
$ sudo vim /etc/fail2ban/fail2ban.conf

#設定log檔的位置
#logtarget = SYSLOG
logtarget = /var/log/fail2ban.log


設定要偵測的服務
例如要偵測 ssh 與 pureftp

新增 /etc/fail2ban/jail.local 檔
輸入

[DEFAULT]
ignoreip = 127.0.0.1/8
bantime  = 600
findtime  = 600
maxretry = 3

[ssh-iptables]
enabled  = true
filter   = sshd
action   = iptables[name=SSH, port=ssh, protocol=tcp]
            sendmail-whois[name=SSH, dest=root, sender=fail2ban@example.com]
logpath  = /var/log/secure
maxretry = 5

[pure-ftpd-iptables]
enabled  = true
filter   = pure-ftpd
action   = iptables[name=PureFTPD, port=ftp, protocol=tcp]
            sendmail-whois[name=ProFTPD, dest=you@example.com]
logpath  = /var/log/messages
maxretry = 5


如果 ssh 或 ftp 不是使用預設的 port 的話記得修改上面的 port=xxx


修改 pure-ftpd 的比對規則,也就是 /etc/fail2ban/filter.d/pure-ftpd.conf

failregex = pure-ftpd(?:\[\d+\])?: (.+?@<HOST>) \[WARNING\] %(__errmsg)s \[.+\]$
改為
failregex = pure-ftpd: \(\?@<HOST>\) \[WARNING\] %(__errmsg)s \[.+\]$


啟動 fail2ban
(CentOS6)$ sudo service fail2ban start
(CentOS7)$ sudo systemctl start fail2ban

設定開機時啟動
(CentOS6)$ sudo chkconfig fail2ban on
(CentOS7)$ sudo systemctl enable fail2ban


確認 iptables 的狀態
$ iptables -L -n

如果看到下列的資訊,表示規則已經生效。

Chain fail2ban-PureFTPD (1 references)
target     prot opt source               destination
RETURN     all  --  0.0.0.0/0            0.0.0.0/0
Chain fail2ban-SSH (1 references)
target     prot opt source               destination
RETURN     all  --  0.0.0.0/0            0.0.0.0/0


查看 fail2ban 的狀態
(CentOS6)$ sudo service fail2ban status
(CentOS7)$ sudo systemctl status fail2ban


Fail2ban (pid 31935) is running...
Status
|- Number of jail:      2
	
`- Jail list:           pure-ftpd-iptables, ssh-iptables



注意不可將 iptables 規則寫在 /etc/rc.d/rc.local 裡執行
不然會將 fail2ban 的規則蓋掉
只要有使用 /etc/init.d/iptables save 就可以了


參考
http://pulipuli.blogspot.tw/2011/07/centosfail2ban.html
http://cyrilwang.blogspot.tw/2012/04/fail2ban.html


--
※ 作者: Knuckles 時間: 2013-04-21 17:48:07
※ 編輯: Knuckles 時間: 2018-12-26 15:32:18
※ 看板: KnucklesNote 文章推薦值: 0 目前人氣: 0 累積人氣: 794 
分享網址: 複製 已複製
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇