Amazon-Ec2
EC2 與 Kubernetes - 我是否應該禁止 EC2 訪問外部網路以提高安全性?
我想在一些雲(可能是亞馬遜、Google等)上使用 Kubernetes。我應該禁止我的 EC2 機器訪問外部網路嗎?我的猜測如下,不知道是對還是錯?
- 我應該禁止 EC2 訪問外部網路。否則,黑客可以更容易地攻擊我的機器。(真的?)
- 怎麼做:我應該使用一個專用的負載均衡器(可能是 Ingress)和我的域名綁定的外部 IP。然後負載均衡器將與我的實際應用程序(沒有外部 IP,只能訪問內部網路)進行通信。(真的?)
抱歉,我是 Ops 的新手,感謝您的幫助!
你混淆了兩件事:
- EC2 訪問外部世界,以及
- 外部世界訪問 EC2
第一個 - EC2 訪問外部世界- 意味著實例啟動連接。這通常不是問題,您的實例可能需要訪問世界以進行更新、發送日誌、拉取容器映像等。如果它們沒有直接訪問權限,您將必須提供代理、vpc 端點或一些其他方法來解決這些限制。
第二個 -外部世界訪問 EC2 - 限制如何連接到您的實例。出於多種原因,建議在您的實例前使用 Application Load Balancer:
- 對於不知道 pod 的 IP 和埠的 kubernetes,ALB 提供統一的前端 IP
- 您可以終止 SSL 並在 ALB 上使用 Amazon 頒發的 SSL 證書 (ACM)
- 它可以保護您免受某些攻擊
- 等等
所以是的,在進入的過程中使用負載均衡器,但不要限制來自實例的外部訪問,除非您的安全團隊要求您這樣做,並且您已準備好處理額外的運營和成本成本(代理、vpc 端點、 ETC)。
希望有幫助:)