我無法連線至在 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體上執行的服務。我已允許安全群組和網路存取控制清單 (network ACL) 中必要連接埠的傳入流量,但還是無法正常運作。我該如何解決這個問題?
簡短說明
安全群組屬於具狀態,因此允許必要連接埠的傳入流量時啟用連線。網路 ACL 屬於無狀態,因此您必須同時允許傳入和傳出流量。
解決方法
若要開啟在執行個體上執行的服務連線,相關聯的網路 ACL 必須允許下列內容:
- 服務接聽連接埠上的傳入流量
- 暫時性連接埠的傳出流量
當用戶端連線至伺服器時,暫時性連接埠範圍 (1024-65535) 的隨機連接埠會變成用戶端的來源連接埠。
指定的暫時性連接埠則會變成從服務傳回流量的目的地連接埠。網路 ACL 中必須允許暫時性連接埠的傳出流量。如需修改網路 ACL 規則的詳細資訊,請參閱新增並刪除規則。
預設情況下,網路 ACL 會允許所有傳入和傳出流量。如果您的網路 ACL 限制更嚴格,則須明確允許暫時性連接埠範圍的流量。
**注意:**如果接受來自網際網路的流量,則您也必須透過網際網路閘道建立路由。如果接受通過 VPN/AWS Direct Connect/Transit Gateway 的流量,則您必須透過虛擬私有閘道/傳輸閘道建立對應的路由。
相關資訊
使用網路 ACL 控制子網路的流量
使用安全群組控制資源的流量