Fail2ban 防止 SSH 密碼嘗試攻擊

測試環境

  • CentOS 7

1.安裝 Fail2ban

CentOS 7

sudo yum install -y fail2ban

2.執行 Fail2ban

sudo systemctl start fail2ban

3.開機啟動 Fail2ban

systemctl enable fail2ban

4.新增設定檔

預設路徑

/etc/fail2ban/jail.local

檔案內容

[ssh-iptables]
#名稱
enabled  = true 
# 啟用 SSH
filter   = sshd
#規則的名稱,必須位於filter.d目錄裡面,sshd 是 fail2ban 内置 ssh 規則
logpath  = /var/log/secure 
# Log 檔的位置
findtime = 600
#統計時間範圍,在此範圍內滿足條件封鎖
maxretry = 3 
# 登入失敗幾次封鎖
bantime  = 3600 
# 封鎖的時間,單位:秒,3600=1小時

其他參數

  • port:對應端口
  • action:採取行動

5.重啟服務

sudo systemctl restart fail2ban

6. 確認服務狀態

sudo fail2ban-client status

如下圖

其他常用指令

  #查看被規則目前狀態,其中sshd為名稱
  fail2ban-client status sshd
  #刪除被 Ban IP , 自行替換規則名稱(sshd) 及 IP(XX.XX.XX.XX)
  fail2ban-client set sshd unbanip XX.XX.XX.XX
  #查看 fail2ban 日志
  tail /var/log/fail2ban.log
  #默认配置
  vim /etc/fail2ban/jail.conf
  #fail2ban 設定檔
  /etc/fail2ban/fail2ban.conf
  #阻擋文件設定檔
  /etc/fail2ban/jail.conf
  #阻擋條件規則(正規表示示)
  /etc/fail2ban/filter.d

參考來源

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *