我在 EC2 執行個體上託管網站。如何允許我的使用者透過 HTTP (80) 或 HTTPS (443) 連線?
上次更新日期:2020-10-30
我在 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體上託管我的網站。我希望使用者透過 HTTP (連接埠 80) 或 HTTPS (連接埠 443) 連線至我的網站。我如何做到這一點?
解決方案
若要允許流量通過連接埠 80 和 443,您必須設定關聯的安全群組和網路存取控制清單 (網路 ACL)。
安全群組規則
對於 HTTP 流量,在連接埠 80 上新增來自來源地址 0.0.0.0/0 的傳入規則。對於 HTTPS 流量,在連接埠 443 上新增來自來源地址 0.0.0.0/0 的傳入規則。這些傳入規則允許來自 IPv4 地址的流量。若要允許 IPv6 流量,請在相同的連接埠上新增來自來源地址 ::/0 的傳入規則。如需有關建立或修改安全群組的詳細資訊,請參閱使用安全群組。
安全群組具有狀態,因此會自動允許從執行個體傳回至使用者的流量。您無需修改安全群組的傳出規則。
下列範例顯示了在連接埠 80 和 443 上同時允許 IPv4 和 IPv6 流量的安全群組規則:
傳入規則
類型 | 協定 | 連接埠範圍 | 來源 |
HTTP (80) | TCP (6) | 80 | 0.0.0.0/0 |
HTTP (80) | TCP (6) | 80 | ::/0 |
HTTPS (443) | TCP (6) | 443 | 0.0.0.0/0 |
HTTPS (443) | TCP (6) | 443 | ::/0 |
網路 ACL
預設網路 ACL 允許所有傳入和傳出流量。如果您使用具有限制更多的規則的自訂網路 ACL,則必須明確允許流量通過連接埠 80 和 443。網路 ACL 為無狀態,因此您必須同時新增傳入和傳出規則,才能允許連線至您的網站。如需有關修改網路 ACL 規則的詳細資訊,請參閱網路 ACL。
注意:如果您的使用者透過 IPv6 連線,並且您的 Amazon Virtual Private Cloud (Amazon VPC) 具有關聯的 IPv6 CIDR 區塊,則您的預設網路 ACL 會自動新增允許所有傳入和傳出 IPv6 流量的規則。
下列範例顯示了允許流量通過連接埠 80 和 443 的自訂網路 ACL:
傳入規則
規則編號 | 類型 | 協定 | 連接埠範圍 | 來源 | 允許/拒絕 |
100 | HTTP (80) | TCP (6) | 80 | 0.0.0.0/0 | 允許 |
101 | HTTPS (443) | TCP (6) | 443 | 0.0.0.0/0 | 允許 |
102 | HTTP (80) | TCP (6) | 80 | ::/0 | 允許 |
103 | HTTPS (443) | TCP (6) | 443 | ::/0 | 允許 |
* | 所有流量 | 全部 | 全部 | ::/0 | 拒絕 |
* | 所有流量 | 全部 | 全部 | 0.0.0.0/0 | 拒絕 |
傳出規則
規則編號 | 類型 | 協定 | 連接埠範圍 | 目的地 | 允許/拒絕 |
100 | 自訂 TCP 規則 | TCP (6) | 1024-65535 | 0.0.0.0/0 | 允許 |
101 | 自訂 TCP 規則 | TCP (6) | 1024-65535 |
::/0 | 允許 |
* | 所有流量 | 全部 | 全部 | ::/0 | 拒絕 |
* | 所有流量 | 全部 | 全部 | 0.0.0.0/0 | 拒絕 |