Amazon-Web-Services

在安全組上打開埠後,ec2 實例將不允許從實例內部連接到埠

  • December 13, 2020

我在允許埠 80、443 和 22(tcp,從 0.0.0.0/0 和 ::/0 入站)的安全組上有一個 EC2 實例;以及每個出站連接(到 0.0.0.0/0 和 ::/0,所有 tcp 和 udp)。

我最近設置了一個郵件伺服器,所以我也從 0.0.0.0/0 和 ::/0 添加了埠 25/tcp。

現在我可以按預期使用公共 ip 從任何外部主機連接到我的郵件伺服器,沒有問題。

我也可以使用localhost主機名或 127.0.0.1 作為 ip 從實例內部連接。

但是我無法使用其公共 ip 或主機名從實例內部連接到埠 25 上的實例。我沒有連接被拒絕或任何東西,只是超時。

我在實例中的任何其他開放埠都沒有這個問題,我可以使用實例 shell 中的公共 ip 完美地遠端登錄到埠 80、443 或 22。

我試過重啟、停止/啟動,甚至從頭開始創建一個新的安全組並將實例切換到它。結果仍然相同:外部連接正常,使用公共 ip 的內部連接僅在該埠上失敗。

iptables 看起來不錯,我沒有看到會影響此埠而不影響其他埠的限製或權限。

此實例上未啟用防火牆(Debian buster)

郵件伺服器是後綴(我不知道這是否有任何區別。如果它實際上是後綴配置問題,我很困惑,我在伺服器日誌上看不到任何內容,並且它允許所有其他連接源……)

但是我無法使用其公共 ip 或主機名從實例內部連接到埠 25 上的實例。我沒有連接被拒絕或任何東西,只是超時。

Amazon EC2 不允許來自實例的出站 SMTP 流量(除非您已為您的賬戶申請並收到例外情況)。這意味著您無法通過其公共 IP 地址訪問您伺服器的 SMTP 伺服器(或其他任何人的)。

如果您需要連接到本地主機,請連接到 localhost。

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