您已在ECS管理主控台中配置了相應連接埠的安全性群組規則,但安全性群組規則似乎並未按預期生效,出現了無法訪問應用或業務的情況。本文介紹ECS執行個體的安全性群組規則未生效問題排查的方法。
問題原因
導致該問題的可能原因如下:
ECS執行個體未加入已配置規則的對應安全性群組中,即ECS執行個體與安全性群組不關聯。
執行個體內對應程式或服務未正常啟動。
執行個體中對應連接埠沒有被正常監聽。
執行個體中連接埠監聽地址配置為單個特定IP地址。
安全性群組規則配置錯誤,與實際期望不符。
執行個體內系統內建防火牆限制導致連接埠未開放。
解決方案
ECS執行個體的安全性群組規則未生效的現象和原因較多,請您進行以下操作快速排查問題。
檢查ECS執行個體是否已加入目標安全性群組
如果執行個體未加入已配置對應規則的安全性群組,則安全性群組規則不會對該執行個體生效。
您可以進入執行個體詳情頁面,查看執行個體綁定的安全性群組資訊。具體操作,請參見查看執行個體資訊。
您可以將ECS執行個體加入一個或多個安全性群組。具體操作,請參見安全性群組與ECS執行個體關聯的管理。
檢查服務狀態及連接埠監聽狀態
即使安全性群組或防火牆規則已被設定為允許特定連接埠的流量通過,但如果執行個體內對應的服務沒有正常啟動,或者連接埠未被正常監聽,則該連接埠的串連請求將無法得到響應,進而導致串連失敗。具體操作,請參見檢查服務狀態及連接埠監聽狀態。
檢查連接埠監聽地址配置是否正確
連接埠監聽地址的配置決定了服務可以接受來自單個還是全部網路介面的串連請求:
當監聽地址設為
0.0.0.0時,服務將接受通過伺服器上任何IPv4網路介面發起的串連請求,不限制源IP地址。若監聽地址設定為特定IP地址,服務僅接受發送到該特定IP的串連請求,從而限制服務只在指定的網路介面上可訪問。
例如,如果一個伺服器具有兩個IP地址,192.168.XX.XX和10.0.XX.XX,且某個服務的監聽地址設定為192.168.XX.XX,那麼只有通過192.168.XX.XX這個地址發起的串連請求才會被接受,通過10.0.XX.XX或任何其他地址到此服務的串連請求都會被拒絕。
檢查安全性群組規則配置是否正確
請您根據以下內容進行安全性群組規則排查。具體操作,請參見檢查ECS執行個體安全性群組規則。
核查安全性群組規則配置,確認協議類型、連接埠號碼和源IP位址區段等參數是否與期望匹配,並確保對應規則滿足特定訪問需求。
如果執行個體關聯了多個安全性群組,需確保當前規則優先順序足夠高,或者在其他安全性群組中沒有衝突且優先順序更高的規則。
針對網站提供Web服務、遠端連線執行個體等常見情境,為您提供了一些安全性群組規則配置樣本。更多資訊,請參見安全性群組應用案例。
有關更多安全性群組規則資訊,請參見安全性群組規則。
檢查執行個體內系統防火牆對開放連接埠的限制
除了安全性群組規則之外,請檢查ECS執行個體內系統內建的防火牆設定,確保其未阻止對應連接埠的訪問,並避免與安全性群組規則發生衝突。具體操作,請參見檢查ECS防火牆設定。
您也可以關閉防火牆改為使用安全性群組。具體操作,請參見開啟或關閉Linux系統防火牆。