阻斷記錄是自動防禦機制(fail2ban)的封鎖事件簿。當同一個來源在短時間內反覆失敗——例如密碼一直輸入錯誤、反覆嘗試寄信認證失敗——系統會依「自動防禦設定」的規則把該來源暫時封鎖,每次封鎖與解除都會寫進這一頁。
它是「誰被我擋掉了、什麼時候擋的、為什麼擋」的直接證據。當有人反映「我明明沒做錯事卻連不上」、或您想確認自動防禦是否真的在運作時,就來這一頁。
什麼時候會用到這一頁:
- 要確認自動防禦有沒有實際擋下來源
- 使用者反映「突然無法收發信、過一會又好了」,懷疑被誤鎖
- 想查出是哪個來源 IP 在大量嘗試
- 調整「自動防禦設定」後,要驗證規則是否真的生效
- 需要解除封鎖前的判斷依據(先看紀錄再決定)
頁面組成
頁面分成三個頁籤:
- 記錄:選日誌檔案 → 瀏覽內容(主要使用區)
- 設定:這個日誌檔的輪替設定
- 空間使用:日誌檔(含輪替檔與壓縮檔)的空間占用
日誌檔案
這一頁只有一個日誌來源:/var/log/fail2ban.log。畫面上的下拉選單標示為「選擇日誌檔案」(其他日誌頁標示為「日誌檔案」),用來切換到較舊的輪替檔(fail2ban.log.1、fail2ban.log.2.gz…)。
檔案清單依最後修改時間新到舊排列,每個選項後面標示修改時間。日常排查看最新那一支即可。
記錄頁籤:怎麼讀阻斷記錄
日誌中會出現的訊息型態與意義:
| 訊息 | 意義 |
|---|---|
Jail 'xxx' started/stopped |
某個防禦規則(jail)開始/停止運作。服務重啟或設定套用時會看到 |
Found <IP> |
偵測到某個來源失敗(還沒封鎖,只是記錄) |
Ban <IP> |
已封鎖該來源(接下來該 IP 的連線會被拒) |
Unban <IP> |
封鎖期滿自動解除(或手動解除) |
already banned |
該來源已在封鎖中又再度失敗(代表它持續在嘗試) |
判讀重點:
- 看到
Found但沒有Ban,代表失敗次數還沒達到門檻——這是正常的,門檻與觀察時間在(防火牆設定 / 自動防禦設定)調整 - 看到同一 IP 反覆
Ban/Unban,代表該來源是持續性的攻擊;這種情況適合啟用「累犯」規則(同一來源反覆被鎖時給予更長的封鎖時間) Jail ... stopped頻繁出現,代表防禦服務反覆重啟,請一併看(系統日誌 / 主機日誌)
搜尋:輸入即時生效,語法為 字A,字B=任一命中(OR)、字A+字B=兩個都要命中(AND),其他寫法當成單一字串;+ 與 , 混用不會被拆解。比對不分大小寫,.gz 輪替檔會自動解壓後搜尋。常用關鍵字:Ban、Unban、某個來源 IP、jail 名稱(例如 postfix、popimap、recidive)。
欄位與排序:只有「內容」一欄,可點標題切換排序方向;預設由大到小(最新在上面);每頁 50 筆。沒有資料時顯示「暫無阻斷記錄資料」。
這一頁記錄哪些防禦規則
本頁的紀錄來自「自動防禦設定」中啟用的規則。MailVSR-GW 出廠提供三組:
| 規則 | 監看的行為 | 出廠狀態 |
|---|---|---|
| 郵件服務(postfix) | 郵件認證/連線失敗 | 啟用 |
| POP/IMAP 代理(popimap) | 郵件軟體登入失敗 | 啟用 |
| 累犯(recidive) | 已被上述規則封鎖卻仍持續嘗試 | 停用 |
出廠參數為:觀察時間 600 秒、失敗 5 次即封鎖、封鎖 600 秒;累犯規則的觀察時間為 86400 秒、封鎖 604800 秒(7 天)。
⚠️ 兩件事不會出現在這一頁,這是刻意的設計,不是故障:
- 管理介面(後台)的登入失敗不會被 fail2ban 封鎖。後台的登入保護由系統自己的機制處理(請看(系統設定 / 偏好設定)的「登入保護」),因此後台被嘗試登入不會留下阻斷記錄,要看那一段請到(系統日誌 / 操作日誌)
- 系統 SSH 不在防禦範圍內(本產品未將 SSH 納入)
也就是說,這一頁涵蓋的是郵件相關服務的失敗嘗試。
匯出與刪除
- 匯出:下載該檔完整內容(不受畫面搜尋與分頁影響),檔名自動加時間戳;系統以 root 讀取
- 刪除:活檔(
fail2ban.log)→ 只清空內容、保留檔案,確認視窗顯示「此為目前正在寫入的日誌,刪除將僅清空其內容(檔案保留)。確定要清空「fail2ban.log」嗎?」;輪替檔 → 真正刪除,確認視窗顯示「確定要刪除日誌檔案「:file」嗎?」 - 成功訊息為「日誌檔案「:file」內容已清空」或「日誌檔案「:file」已刪除」
- 失敗訊息為「刪除日誌檔案失敗」、「刪除日誌檔案失敗:檔案無法刪除(權限或檔案屬性限制)」、「清空日誌檔案失敗:檔案無法寫入(權限或檔案屬性限制)」
⚠️ 清空阻斷記錄不會解除已封鎖的來源。紀錄檔只是「事件簿」,封鎖狀態由防禦服務自己維護;要解除封鎖請到(防火牆設定 / 自動防禦設定)操作(或等待封鎖期滿)。
設定頁籤:輪替設定
- 記錄週期:每週(預設)或每天
- 保留天數/保留週數:可填 1–400,出廠預設保留 8 週
- 單檔大小上限:可填 1–200 MB,出廠預設 50 MB
- 壓縮 rotate 檔:預設開啟
按「儲存設定」,成功顯示「logrotate 設定已儲存」,失敗顯示「logrotate 設定儲存失敗」。設定於下次輪替時生效。
容量提醒:若遭受持續攻擊,這一支日誌可能快速成長(每次失敗都有一行 Found)。建議保留份數不要設太小,因為攻擊的歷史紀錄對事後追查很有價值。
空間使用頁籤
列出 fail2ban.log 及其輪替檔與壓縮檔的「檔案名稱/最後修改/空間占用」,最後顯示「總計(N 個檔案)」,依時間新到舊。沒有檔案顯示「目前沒有日誌檔。」;讀取失敗顯示「讀取失敗」。
常見情境與判讀
- 「使用者突然不能收發信」:用他的來源 IP 搜尋。若該 IP 出現在
Ban,就是被自動防禦擋掉;請確認是真的攻擊還是誤鎖(例如使用者改了密碼卻沒更新郵件軟體,會反覆失敗直到被鎖) - 「每天都有人被鎖」:看被鎖的 IP 是否固定。固定 IP 且屬於公司辦公室,通常是某台裝置的密碼設定錯誤,請修正裝置而非放寬規則
- 「攻擊有沒有被擋下來」:搜尋
Ban的數量與來源分布;若同一來源反覆Ban/Unban,建議啟用累犯規則拉長封鎖時間 - 「調整規則後沒有效果」:先看有沒有
Jail ... started(設定有沒有真的套用),再看後續失敗有沒有轉成Ban - 「想確認是否誤鎖」:以來源 IP 搜尋完整經過,看它失敗的服務與次數;次數與時間分布是判斷誤鎖與否的關鍵(正常使用者不會在數十秒內失敗數十次)
注意事項
- 日誌內容是歷史紀錄,這一頁只讀不寫(唯一的例外是「設定」頁籤的輪替參數)
- 這裡只顯示郵件相關服務的封鎖;管理介面登入失敗與 SSH 都不在此範圍
- 封鎖是暫時的:期滿會自動解除並留下
Unban;「累犯」規則被停用時,長期攻擊者只會被反覆短期封鎖 - 封鎖的是來源 IP,不是帳號;同一辦公室共用對外 IP 時,一個人被鎖可能影響同 IP 的其他人——這是使用這類機制時必須知道的取捨
- 這一頁的紀錄與(系統日誌 / SMTP日誌)、(系統日誌 / POP/IMAP日誌)是同一批失敗事件的兩個視角:那裡看「失敗的內容」,這裡看「有沒有被擋」
- 相關頁面:(防火牆設定 / 自動防禦設定)調整門檻與封鎖時間、(系統設定 / 偏好設定)的管理介面登入保護