防火牆強化套件fail2ban之安裝與設定
本帖最後由 IT_man 於 2016-4-9 22:36 編輯我的環境:
CentOS 6.7 這是RedHat系列的發行版本,與Fedora同系。(發行版本的資料會記錄在 /etc/redhat-release)
1.用yum安裝fail2ban
yum -y install fail2ban (yum安裝的歷程會記錄在 /var/log/yum 中。如有需要確認已安裝的套件,可以回頭查詢這個記錄檔。)
如果上述步驟不能安裝fail2ban,那麼yum會顯示找不到該套件的時候,你需要進入這個步驟。
yum會掃描套件庫來決定要如何安裝套件。然而由於fail2ban並不在預設的套件庫中,所以我們必須手動加入含有fail2ban的套件庫atrpms。
請編輯 /etc/yum.repos.d/CentOS-Base.repo :
vi /etc/yum.repos.d/CentOS-Base.repo
在最後加入以下設定:
name=Red Hat Enterprise Linux $releasever - $basearch - ATrpms
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=1
enabled=1
2. 設定fail2ban
主要有兩個設定檔:/etc/fail2ban/fail2ban.conf 跟 /etc/fail2ban/jail.conf
vi /etc/fail2ban/fail2ban.conf
修改 logtarget 的參數:
#預設的參數
#logtarget = SYSLOG
#調整後的參數
logtarget = /var/log/fail2ban.logvi /etc/fail2ban/jail.conf (fail2ban主要的設定檔)
#預設的參數
#backend = auto
#調整後的參數
backend = gamin gamin是Linux的套件之一。如果缺少你可以用yum來安裝它
#是否啟用
enabled= true
#過濾名稱,使用預設的即可
filter = sshd
#iptables設定
action = iptables
#發生阻擋時的寄信設定
sendmail-whois
#需要掃描的記錄檔
logpath= /var/log/secure
#最高嘗試錯誤次數
maxretry = 2
#阻擋的時間,-1表示永久阻擋
bantime= -1讓fail2ban重新啟動時不會重設阻擋IP規則
在預設的設定中,fail2ban每次重新啟動時都會遺忘被阻擋的IP設定。舉例來說,如果我的電腦因為登入失敗被fail2ban擋掉,那麼只要fail2ban重新啟動,那麼我的電腦又可以繼續嘗試登入server。
如果要讓fail2ban重新啟動時,不會重設阻擋的IP規則,則修改 /etc/init.d/fail2ban 的內容。
vi /etc/init.d/fail2ban
找到start()的區塊,加入以下有#註解的設定:
start() {
echo -n [ DISCUZ_CODE_3 ]quot;Starting fail2ban: "
getpid
if [ -z "$pid" ]; then
rm -rf /var/run/fail2ban/fail2ban.sock # unclean in case of restart fal2ban
$FAIL2BAN -x start > /dev/null
RETVAL=$?
fi
if [ $RETVAL -eq 0 ]; then
touch /var/lock/subsys/fail2ban
echo_success
/sbin/service iptables restart # reloads previously banned ip's
else
echo_failure
fi
echo
return $RETVAL
}再找到stop()區塊,加入以下有#註解的設定:
stop() {
echo -n [ DISCUZ_CODE_4 ]quot;Stopping fail2ban: "
getpid
RETVAL=$?
if [ -n "$pid" ]; then
/sbin/service iptables save # saves banned ip's
$FAIL2BAN stop > /dev/null
sleep 1
getpid
if [ -z "$pid" ]; then
rm -f /var/lock/subsys/fail2ban
echo_success
else
echo_failure
fi
else
echo_failure
fi
echo
return $RETVAL3. 設定fail2ban開機順序
chkconfig --add fail2ban
p.s
以上參考 :
http://blog.pulipuli.info/2011/07/centosfail2ban.html
http://www.vixual.net/blog/archives/252
頁:
[1]