防護你的Linux伺服器,免於惡意駭客入侵 - fail2ban
相信有架過站的都知道,伺服器最令人討厭的就是一些惡意攻擊,像是Try管理帳號密碼或是DDoS等!此種攻擊有些並非伺服器本身有資安漏洞來入侵,而是利用大量封包、查詢網站使之超過其主機與頻寬的負荷程度,使之癱瘓。雖然法律明文規定此種行為是違法的,但通常你是抓不到人的,能做的大概就是封鎖IP了。
註:刑法第360條妨害電腦使用罪規定,「以電腦程式或其他電腦方式干擾他人電腦或其相關設備,致生損害於公眾或他人者須負相關法律責任」
是的,接下來就是要介紹防止這種攻擊的服務,從安裝、設定及查詢結果等步驟來介紹。其實整個步驟照著文件操作下來只要短短的30分鐘內就可以完成保護效果,非常的快速與簡易! 當然如果要玩的深,就要花較多的時間研究設定,基本上預設的功能已經能達到阻擋DDoS攻擊,對於急迫的人來說是很方便的!
以下以OS環境為 CentOS 7當範例
一、安裝 fail2ban,分別執行以下指令
# yum update && yum install epel-release
# yum install fail2ban
(Optional) 若想要收到通知
# yum install sendmail
二、啟動 fail2ban
# systemctl start fail2ban
# systemctl enable fail2ban
三、設定 fail2ban.local
通常不建議直接編輯 fail2ban.conf 檔,此檔案在更新時會被 Overwrite,所以先執行以下步驟
1. cp /etc/fail2ban/fail2ban.conf /etc/fail2ban/fail2ban.local
2. 編輯 fail2ban.local
四、設定 jail.local
一樣不建議直接編輯 jail.conf 檔,此檔案在更新時會被 Overwrite,所以先執行以下步驟
1. cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
2. 可在此參數後面加入IP設定為白名單 ignoreip =
3. 封鎖時間跟Retry次數
bantime = 600 -- 封鎖多久(秒)
findtime = 600 -- 多少時間(秒)內達到 maxretry 的數量則封鎖
maxretry =3 -- Retry次數
五、 Email 告警
destemail:收件人email
sendername:發信人
sender:發信人email
六、修改後重啟服務
# systemctl restart fail2ban
七、查看狀態及Log
# service fail2ban status
# vim /var/log/fail2ban.log
完成,搞定
留言
張貼留言