如何對 VPC 內從網際網路到 Amazon EC2 執行個體的連線功能問題進行疑難排解?

1 分的閱讀內容
0

我無法從網際網路連線至 Amazon Virtual Private Cloud (Amazon VPC) 中的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體。

簡短描述

從網際網路到 Amazon EC2 執行個體的連線問題通常與下列組態設定有關:

解決方案

在開始之前,請確認您的 EC2 執行個體是否通過系統狀態檢查和執行個體狀態檢查

如果您使用的是網路防火牆,請參閱如何對規則未如預期運作時的網路防火牆問題進行疑難排解?

檢查安全群組

確認與執行個體的彈性網路介面相關聯的安全群組是否允許來自所需連接埠的連線。因為安全群組是有狀態的,所有無需設定安全群組輸出規則。

**重要事項:**在正式作業環境中,只允許特定的 IP 位址或位址範圍存取您的執行個體。為了測試目的,請指定自訂 IP 位址 0.0.0.0/0,以允許所有 IP 位址使用 SSH 或 RDP 來存取您的執行個體。

例如,如果您使用 SSH 從網際網路連線到執行個體,則在連接埠 22 上新增規則。確保規則允許來源 IP 位址存取執行個體。若要允許任何人連線,請新增規則以允許 IP 位址 0.0.0.0/0 的連接埠 80。

檢查網路 ACL

檢查您的網路 ACL 是否有下列組態設定:

  • 與 VPC 子網路相關聯的網路 ACL 必須允許流量通過所需連接埠。如需詳細資訊,請參閱使用網路 ACL 控制子網路的流量新增和刪除規則
  • 同時允許傳入和傳出流量。網路 ACL 是無狀態的。對允許的傳入流量的回應會受到傳出流量的規則所約束。對允許的傳出流量的回應會受到傳入流量的規則所約束。
  • 確保暫時連接埠是唯一開放給傳出網路 ACL 的連接埠。最佳實務是僅允許您需要的連接埠。

**重要事項:**如果仍然不確定哪些因素阻止流量存取執行個體,請開啟 VPC 流程日誌。流程日誌會擷取流經 VPC 的 IP 位址流量。如果您在流程日誌中看到拒絕的流量,請再次檢查您的安全群組和網路 ACL 設定。

檢查路由表

若要檢查網際網路閘道是否已連接至您的 VPC,請完成下列步驟:

  1. 開啟 Amazon VPC 主控台
  2. 在導覽窗格的虛擬私有雲端區段中,選擇網際網路閘道
  3. 搜尋連接至 VPC 的網際網路閘道。您也可以搜尋連接的 VPC ID,例如 vpc-xxxxxxxx
  4. 記下網際網路閘道的 ID,例如 igw-xxxxxxxx

如果網際網路閘道已連接至您的 VPC,請完成下列步驟:

  1. 檢查 VPC 的路由表是否有網際網路閘道的路由。尋找其目標是連接至 VPC 的網際網路閘道 ID 且目的地0.0.0.0/0 的路由項目。
  2. 如果路由不存在,請新增路由項目,以網際網路閘道作為其目標0.0.0.0/0 作為其目的地
  3. 確定子網路路由表也具有網際網路閘道的路由項目。如果此項目不存在,則表示執行個體位於私有子網路中,且無法從網際網路存取。

**注意事項:**確認作業系統層級路由表是否允許來自網際網路的流量。取決於的組態,對 Linux 執行個體使用 route -n 命令,或對 Linux 或 Windows 執行個體使用 netstat -rn 命令。

檢查 IP 位址

  • 確認已將公有 IP 位址指派給您的 VPC 執行個體,或彈性 IP 位址已連接至執行個體的網路介面。如果未指派公有 IP 位址或彈性 IP 位址,請指派一個。
    **注意事項:**如需詳細資訊,請參閱 VPC 和子網路的 IP 位址使用彈性 IP 位址
  • 確定執行個體上的作業系統層級軟體或防火牆允許透過所需連接埠的流量。

相關資訊

為什麼我的 EC2 執行個體無法使用 NAT 閘道存取網際網路?

Amazon VPC 中的網際網路流量隱私權

AWS 官方
AWS 官方已更新 8 個月前