當出現大量誤封、測試結束、或規則混亂時,
可以將 Fail2ban 重置回乾淨狀態。
以下是最直接的完整重置方法。
⚠️ 注意
此操作會:
- 清空所有被封鎖 IP
- 刪除封鎖歷史資料
- 清空所有 f2b-* 防火牆規則
- 重新建立 jail 規則
請確保你仍有伺服器存取權限。
✅ 重置步驟
1️⃣ 停止 Fail2ban
systemctl stop fail2ban
2️⃣ 刪除封鎖資料庫(關鍵)
rm -f /var/lib/fail2ban/fail2ban.sqlite3
這一步會清除所有封鎖歷史與 recidive 記錄。
3️⃣ 清空防火牆規則
iptables -F
iptables -X
清除所有自訂 chain(包括 f2b-*)。
4️⃣ 重新啟動 Fail2ban
systemctl start fail2ban
系統會:
- 自動建立新的資料庫
- 重新載入 jail
- 重建 f2b-* chain
✅ 可選:清空 fail2ban log(僅為閱讀乾淨)
truncate -s 0 /var/log/fail2ban.log
注意:
這不影響封鎖狀態,只是清空顯示紀錄。
✅ 完整指令總結
systemctl stop fail2ban
rm -f /var/lib/fail2ban/fail2ban.sqlite3
iptables -F
iptables -X
systemctl start fail2ban
✅ 結語
當規則混亂或測試過程造成大量封鎖時,
回到乾淨狀態,往往比逐條排錯更有效率。
清楚、可控、可驗證,
才是穩定運行的基礎。