為保護內網核心資產同時對外發布 Web 服務,單純包過濾防火牆存在暴露內網 IP、無法識別應用層攻擊、日誌不足等缺陷。本文分析包過濾與應用代理型防火牆差異,論證雙層防火牆(DMZ)與反向代理的最佳實踐架構。
一、包過濾防火牆發布 Web 的局限
- 需開放 TCP 80/443 至內網 Web 服務器真實 IP,暴露內網拓撲。
- 無法識別 HTTP 協議異常(SQL 注入、XSS、異常 Header),僅能基於 IP/埠/旗標過濾。
- 日誌缺乏應用層語義,難以審計與溯源。
- 若 Web 服務器被攻破,攻擊者直接落地內網,防火牆失去阻隔作用。
二、標準代理防火牆的困境
- 客戶端需手動配置代理 IP,不適用於面向公網的匿名訪問。
- 代理服務器使用公網 DNS 解析,無法直接定位內網私有 IP 的 Web 服務器。
- 傾向於直接屏蔽外部訪問,無法滿足對外發布需求。
三、雙層防火牆(DMZ)架構改進
Internet ↔ 外層防火牆(包過濾,放行 80/443 至 DMZ)
↓
DMZ 區(停火區):Web 服務器、郵件網關、DNS 等對外服務
↓
內層防火牆(應用代理/狀態檢測):嚴格控制 DMZ→內網訪問
↓
內網核心區(資料庫、ERP、AD 等高價值資產)
- 外層防火牆允許外部訪問 DMZ 服務,阻擋直接進入內網。
- 內層防火牆執行嚴格最小權限,僅允許 Web 服務器經特定埠/協議訪問內網資料庫。
- 即使 DMZ 服務器被攻破,內層防火牆仍能阻擋橫向移動。
四、反向代理 + 應用層防火牆(WAF)的最佳實踐
在 DMZ 部署反向代理伺服器(Nginx/Apache/IIS ARR)或專用 WAF:
- 隱藏真實 IP:外部僅見代理 IP,內網拓撲不暴露。
- 應用層防護:識別並阻擋 SQLi、XSS、CC 攻擊、異常爬蟲、惡意 Bot。
- SSL 卸載:終結 HTTPS,減輕後端應用伺服器加解密壓力。
- 負載均衡與快取:分發請求至後端叢集,靜態資源快取提升效能。
- 完整審計日誌:記錄完整 HTTP 請求/回應,支援合規與事後分析。
五、部署檢查清單
- 外層防火牆:僅開放 TCP 80/443 至反向代理/WAF IP,啟用反掃描、SYN Flood 防護。
- 反向代理/WAF:配置虛擬主機、上游伺服器群、SSL 憑證、WAF 規則集(OWASP CRS)、速率限制、IP 信譽庫。
- 內層防火牆:僅允許反向代理 IP 經特定埠(如 3306/1433/8080)訪問內網應用/資料庫,啟用應用層檢測。
- Web 服務器:綁定內網 IP,關閉不必要埠、服務,部署主機入侵檢測 (HIDS)。
- 監控:串流日誌至 SIEM,設定異常流量、規則命中、錯誤率告警。
核心觀點:包過濾防火牆只能做「邊界過濾」,無法替代應用層防護。反向代理/WAF 置於 DMZ,配合雙層防火牆縱深防禦,才能同時實現「對外發布」與「內網隔離、應用層防護、審計溯源」。