🛡️ FortiGate 防火牆策略最佳化:從 NAT、Policy 到 Session 排查全解析
FortiGate 的強大之處在於其策略引擎能精準控制流量,但若設定不當,常會出現「封包被誤擋」、「NAT 未生效」、「連線中斷」等問題。本文將從 NAT、Policy、Session 三個層面,帶你逐步掌握 CLI 排查技巧與最佳化建議。
📋 一、Policy 策略檢查基礎
首先確認策略順序與匹配情況:
# 顯示目前生效的策略清單
show firewall policy
# 查詢特定流量匹配到的策略(含ID與名稱)
diagnose firewall iprope lookup 192.168.1.10 8.8.8.8 6
# (6 代表 TCP,可用 17 表示 UDP)
✅ 建議:確保策略順序正確,避免上層允許條件阻擋下層規則生效。
🌐 二、NAT 轉換與來源檢查
NAT 常見問題多出現在 源地址轉換 (SNAT) 或 目的轉換 (DNAT) 錯誤。可使用以下指令檢查:
# 查看 NAT 配置狀態
show firewall ippool
show firewall vip
# 監控 NAT 映射與 Session 狀態
diagnose sys session filter clear
diagnose sys session filter dst 8.8.8.8
diagnose sys session list
✅ 建議:NAT 與 Policy 綁定時請確認「use outgoing interface IP」或「ippool-name」設定一致。
🔍 三、Session 排查與效能監控
當連線異常時,可透過 session table 分析連線流向與封鎖原因:
# 查看特定來源的連線
diagnose sys session filter src 192.168.1.10
diagnose sys session list
# 顯示每秒新開與終止的 session 數量
diagnose sys session stat
# 移除異常 session
diagnose sys session clear
✅ 若出現 no session matched,代表封包尚未匹配策略,需檢查是否被 IPS 或 policy route 攔截。
🧠 四、進階策略分析與常見誤區
- Policy 阻擋問題:確認是否開啟
denylogging,以便觀察封鎖流量。 - VPN 相關封包未通過:須確認 phase1 / phase2 selector 與 Policy 一致。
- 流量方向誤設:特別留意 Incoming Interface 與 Outgoing Interface 對應錯置。
- 診斷順序:route → policy → nat → session → log。
⚙️ 五、CLI 自動化排查範例
# 快速收集防火牆診斷資訊
get system performance status
diagnose debug flow filter addr 192.168.1.10
diagnose debug flow trace start 50
diagnose debug enable
# (停止)
diagnose debug disable
上述流程可快速釐清封包在策略鏈中被阻擋的節點。
📘 結語
防火牆的效能與安全性取決於策略清晰度與監控能力。透過本文介紹的 CLI 排查流程與最佳化建議,你可更精準掌握 FortiGate 的 NAT、Policy 與 Session 運作邏輯,確保網路穩定與安全。
🔗 延伸閱讀
- 🧱 FortiGate 網路診斷全攻略:最實用的 CLI 介面、路由與封包抓取指令教學
- 🐧 Linux systemctl 與服務管理全攻略
- 📊 Linux Proxy Server 日誌分析與安全強化(Squid + GoAccess)
— WWFandy・技術筆記
沒有留言: