Networking

刪除入站安全組規則後,EC2 實例為何繼續響應 ping 請求?

  • April 20, 2019

在玩 AWS 控制台時,我嘗試了以下操作

  1. 在預設 VPC 中使用預設安全組和預設子網啟動 EC2 實例(啟用公共 IP)。
  2. EC2 在具有公共 IP 的預設子網中啟動。
  3. 使用公共 IP 從命令提示符 ping EC2 實例。
  4. 請求超時。
  5. 注意到預設安全組入站規則僅允許來自安全組內源的流量。
  6. 修改了安全組入站規則並允許來自任何地方的流量(0.0.0.0/0)
  7. 再次使用公共 IP ping EC2 實例。
  8. 得到了伺服器的響應。到目前為止一切都很好。
  9. 來自 EC2 主機的 ping 回复繼續顯示在控制台中。
  10. 我刪除了入站安全組規則。現在安全組沒有入站規則。
  11. 在終端上,來自 EC2 實例的回复繼續顯示。

我的問題是 - 為什麼我看到主機(EC2 實例)的回复,即使安全組的入站規則已被刪除?

入站安全組規則的更改不會立即應用嗎?為什麼主機(EC2 實例)在沒有入站安全組規則的情況下繼續響應?

更改立即生效,但安全組規則控制流量流的建立(由使用埠號的協議的源和目標地址、協議和埠號標識)。

根據所討論的特定規則,網路可能會或可能不會主動跟踪流,但始終會跟踪 ICMP 流。建立跟踪流後,該流不再需要匹配規則,因為網路已為該流創建了一個狀態表條目,該條目將一直持續到網路將其刪除,無論是由於不活動超時還是由於關閉/重置用於面向連接的協議,如 TCP。

刪除允許創建它們的規則不會中斷跟踪的流。

停止 ping 並重新啟動它。如果它繼續工作,請停止它並等待幾秒鐘,然後再重新啟動它。您應該會發現,在刪除規則後不久,再次嘗試 ping 目標實例會導致超時。

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#security-group-connection-tracking

引用自:https://serverfault.com/questions/963865