CNAME接入模式下,網站的業務流量經過WAF防護後流回來源站點。若來源站點IP泄露則攻擊者會繞過WAF直接攻擊來源站點。您可以為來源站點伺服器配置存取控制策略,只允許存取WAF回源IP段入方向的流量來保護來源站點。本文以部署了阿里雲Server Load Balancer的ECS伺服器為例,講解如何配置存取控制策略。
網站接入WAF防護後,無論您是否設定來源站點保護,都不影響正常業務的轉寄。
如果您使用透明接入方式,將來源站點阿里雲伺服器ECS和Server Load Balancer的業務流量接入WAF防護,引流連接埠的所有流量都會被牽引到WAF防護,攻擊者無法繞過WAF直接攻擊來源站點。因此,您無需設定來源站點保護。
風險須知
配置來源站點伺服器的存取控制策略存在一定風險。在設定來源站點保護前,請注意以下事項:
請確保同一來源站點ECS執行個體或SLB執行個體上的所有網域名稱都已經接入WAF進行防護,避免攻擊者通過未接入WAF的網域名稱入侵來源站點,從而影響其他網域名稱業務。
在WAF叢集出現故障時,WAF可能會將網域名稱訪問請求旁路回源至來源站點,確保網站正常訪問。這種情況下,如果來源站點已設定ECS安全性群組或SLB白名單存取控制策略,可能會導致來源站點暫時無法通過公網訪問。
當WAF叢集擴容增加新的回源IP段時,如果來源站點已設定ECS安全性群組或SLB白名單防護,可能會導致頻繁出現5XX錯誤響應。建議您定期關注Web Application Firewall控制台發布的回源網段變更通知,及時更新涉及回源IP網段的存取控制策略。
如果您不再使用WAF,在將業務流量切回來源站點伺服器之前,請務必先刪除已添加的存取控制策略,允許存取所有業務流量,避免業務流量切回後出現業務中斷。
前提條件
確認來源站點伺服器為阿里雲伺服器ECS,並部署Server Load Balancer。更多資訊,請參見Elastic Compute Service、Server Load Balancer。
來源站點ECS執行個體或SLB執行個體上的所有網域名稱都已經通過CNAME接入方式接入WAF防護。具體操作,請參見添加網域名稱。
步驟一:檢測來源站點是否存在IP暴露風險
您可以在非阿里雲環境直接使用Telnet工具串連來源站點公網IP地址的業務連接埠,檢測是否能夠成功建立串連:
如果可以連通,表示來源站點存在IP泄露風險,一旦駭客擷取到來源站點公網IP就可以繞過WAF直接存取來源站點。
如果無法連通,表示來源站點當前不存在IP泄露風險。
樣本:測試已接入WAF進行防護的來源站點IP的80連接埠和8080連接埠是否能成功建立串連。以下截圖中的測試結果顯示連接埠可以連通,說明來源站點存在IP泄露風險。
步驟二:擷取WAF回源IP段
WAF回源IP段會定期更新,請關註定期變更通知,及時將更新後的回源IP段添加至相應的安全性群組或白名單規則中,避免出現誤攔截。
登入Web Application Firewall控制台,在頂部功能表列,選擇WAF執行個體的資源群組和地區(中國內地、非中國內地)。
在左側導覽列,選擇 。
在產品資訊頁面右下方的回源IP段地區,單擊複製全部IP。
回源IP段地區即時顯示WAF回源IP段。
步驟三:設定ECS安全性群組規則
如果您的來源站點伺服器為Elastic Compute Service,請在擷取WAF回源IP段後,參照以下步驟設定來源站點ECS執行個體的安全性群組規則,只允許存取WAF回源IP段的入方向流量,拒絕所有其他IP段的入方向流量。
進入安全性群組頁面。
登入ECS管理主控台。
在左側導覽列,選擇 。
在頂部功能表列左上方處,選擇地區。
找到目標安全性群組,在操作列中,單擊管理規則。
選擇安全性群組規則所屬的方向。
如果安全性群組的網路類型為專用網路,請選擇入方向或出方向。
如果安全性群組的網路類型為傳統網路,請選擇入方向、出方向、公網入方向或公網出方向。
添加一條優先順序最高的安全性群組規則,允許存取WAF回源IP段的入方向流量。
在訪問規則地區的入方向頁簽下,單擊手動添加。
完成以下規則配置,並單擊儲存。
配置項
說明
授權策略
選擇允許。
優先順序
輸入1,表示優先順序最高。
協議類型
選擇自訂TCP。
連接埠範圍
選擇HTTP(80)和HTTPS(443)。
授權對象
將已複製的WAF回源IP段粘貼到源輸入框。
描述
自訂描述資訊。樣本:允許存取WAF回源IP。
重要如果當前安全性群組防護的伺服器與WAF回源IP以外的其他IP、HTTP或HTTPS以外的其他應用有互動,請將這些互動IP和連接埠通過安全性群組一併加白允許存取。
成功添加該安全性群組規則後,ECS執行個體安全性群組將以最高優先順序允許存取WAF回源IP段的所有入方向流量。
警告請務必確保所有WAF回源IP段都已通過來源站點ECS執行個體的安全性群組規則設定了入方向的允許策略,否則可能導致網站訪問異常。
添加一條優先順序最低的安全性群組規則,拒絕其餘所有IP段的入方向流量。
在訪問規則地區的入方向頁簽下,單擊手動添加。
完成以下規則配置,並單擊儲存。
配置項
說明
授權策略
選擇拒絕。
優先順序
輸入100,表示優先順序最低。
協議類型
選擇自訂TCP。
連接埠範圍
選擇HTTP(80)和HTTPS(443)。
授權對象
在源輸入框,輸入0.0.0.0/0(表示所有IP段)並按斷行符號鍵。
描述
自訂描述資訊。樣本:拒絕所有入方向流量。
成功添加該安全性群組規則後,ECS執行個體安全性群組除了允許存取WAF回源IP段的入方向流量外,還將拒絕所有其他IP段的入方向流量,保證所有業務流量都經WAF轉寄到來源站點ECS執行個體。
步驟四:設定SLB存取控制
如果您的來源站點伺服器部署了Server Load Balancer,您還需要設定SLB執行個體的存取控制(白名單)策略,只允許存取WAF回源IP段的入方向流量。
以下操作描述以傳統型負載平衡CLB為例進行介紹。如果您使用應用型負載平衡ALB,請結合以下操作描述及ALB存取控制文檔進行操作。
- 登入傳統型負載平衡CLB控制台。
在頂部功能表列,選擇執行個體所屬地區。
在左側導覽列,選擇 。
建立存取控制策略組。
在存取控制頁面,單擊建立存取控制策略組。
在建立存取控制策略組面板,完成以下策略組配置,並單擊建立。
以下配置表示為WAF回源IP建立一個策略組。
配置項
說明
策略組名稱
自訂策略組名稱。樣本:WAF回源IP段。
大量新增IP地址/位址區段和備忘
粘貼所有WAF回源IP。
每行只允許輸入一個條目。多個條目間通過斷行符號分隔。
說明由於複製擷取的所有WAF回源IP段之間以半形逗號(,)分隔,建議您使用支援擴充替換的文字編輯器,將半形逗號(,)統一替換為分行符號(\n)再進行粘貼。
為監聽設定存取控制策略。
在左側導覽列,選擇 。
在執行個體管理列表,定位到要操作的執行個體,單擊執行個體ID。
在監聽列表,定位到要設定的監聽,在操作列下單擊表徵圖,然後單擊設定存取控制。
請根據已接入WAF防護的業務類型,選擇要設定的監聽:
如果您已將HTTP業務接入WAF防護,則需要設定HTTP監聽。
如果您已將HTTPS業務接入WAF防護,則需要設定HTTPS監聽。
如果您已將HTTP和HTTPS業務接入WAF防護,則需要分別設定HTTP監聽和HTTPS監聽。
在存取控制設定面板,開啟啟動存取控制開關並完成以下配置。
配置項
說明
存取控制方式
選擇白名單:允許特定IP訪問Server Load Balancer。
選擇存取控制策略組
選擇WAF回源IP對應的存取控制策略組。
完成以上配置後,CLB執行個體監聽將會允許存取WAF回源IP段的入方向流量。
後續操作
完成ECS安全性群組或SLB白名單設定後,您可以通過測試來源站點IP的80連接埠和8080連接埠是否能成功建立串連,驗證設定是否已生效。
如果連接埠無法直接連通,但網站業務仍可正常訪問,則表示來源站點保護已設定成功。