意:如下方法適用於CentOS,並須要配合iptables才能運行-《iptables防火牆的基本應用》
html
wget http://soft.kwx.gd/security/fail2ban-0.8.4.tar.bz2
SSH執行以上命令,下載Fail2Ban 0.8.4版本。python
tar -xjvf fail2ban-0.8.4.tar.bz2
SSH執行以上命令,解壓fail2ban-0.8.4.tar.bz2。bash
cd fail2ban-0.8.4
SSH執行以上命令,進入fail2ban-0.8.4文件夾。ssh
python setup.py install
cd files #
cp ./redhat-initd /etc/init.d/fail2ban
chkconfig --add fail2ban service fail2ban start 行
SSH執行以上逐行命令,安裝Fail2Ban並添加到開機啓動項中。tcp
3、修改配置文件ide
cd /etc/fail2ban
#此ip或者ip段爲例外,不受如下條件影響
ignoreip = 127.0.0.1
# 封鎖時間(如一天爲:86400)
bantime = 600
# 在多長時間之內達到條件則開始執行封鎖,如600秒達到3次則執行。 # 單位:秒
findtime = 600
# 在以上條件的出錯次數,如600秒達到3次則執行。
# 單位:次
maxretry = 3
[ssh-iptables]
enabled = false #是否開啓,開啓則爲true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp] #post爲端口號
sendmail-whois[name=SSH, dest=you@mail.com, sender=fail2ban@mail.com]
#上方紅色字-you@mail.com,則爲您的郵箱地址和發送人地址(建議同樣)
#發信須要sendmail服務的支持,若是沒有此服務或不須要發信可在sendmail前加#號註釋掉。
logpath = /var/log/sshd.log #相應錯誤日誌,通常爲:/var/log/secure
maxretry = 5 #嘗試錯誤次數
[proftpd-iptables]
enabled = false #是否開啓,開啓則爲true
filter = proftpd
action = iptables[name=ProFTPD, port=ftp, protocol=tcp]
sendmail-whois[name=ProFTPD, dest=you@mail.com]
#上方紅色字同上SSH設置同樣。
logpath = /var/log/proftpd/proftpd.log #相應錯誤日誌
maxretry = 6 #嘗試錯誤次數
注意,以上「相應錯誤日誌」文件必須於實際相匹配,不然Fail2Ban也沒法正常工做。post
service fail2ban restart #重啓fail2ban
chkconfig fail2ban on #設置爲開機自動啓動
fail2ban-client status
SSH執行以上命令,查看fail2ban開啓的監控狀態是否運行,但不能看到實際效果。spa