Fail2ban

Fail2ban 是一套以 Python 語言所撰寫的 GPLv2 授權軟體,藉由分析系統紀錄檔,並透過設定過濾條件 (filter) 及動作 (action),當符合我們所設定的過濾條件時,將觸發相對動作來達到自動化反應的效果 (如封鎖來源 IP、寄信通知管理者、查詢來源 IP 資訊等)

設定檔說明

  • jail.(conf|local)

    • 用來設定 jail,即是定義 filter 與 action 的對應關係。

  • filter.d/

    • 用來定義過濾條件 (filter),目錄下已定義多種既有的過濾條件,常見的軟體有 apache、sshd、vsftpd、postfix 等,而常見記錄檔格式也可能為 Syslog、Common Log Format 等。

  • action.d/

    • 用來定義動作內容 (action),目錄下已定義多種既有的動作內容,如「sendmail 寄信通知」、「iptables 阻擋來源位址」、「使用 whois 查詢來源 domain 資訊」或「自動通知該來源 IP 的管理者」。

jail.local

default

[DEFAULT]
#忽略 IP 的清單,以空白區隔不同 IP
ignoreip = 127.0.0.1/8 192.168.1.0/24
#封鎖的時間,單位:秒,600=10分鐘,改為 -1 表示「永久」封鎖  
bantime  = 600
#在多久的時間內,單位:秒,600=10分鐘
findtime = 600
#登入失敗幾次封鎖
maxretry = 3

for bitwarden

filter.local

for bitwarden

Using Docker-compose

Commands

for docker 前面加上 sudo docker exec -t fail2ban

like:

Last updated