本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
為 TCP Passthrough 設定環境的負載平衡器
如果您不希望 AWS Elastic Beanstalk 環境中的負載平衡器解密HTTPS流量,您可以設定安全接聽程式,將請求轉送至後端執行個體。
重要
將負載平衡器設定為轉送HTTPS流量而不解密,這會造成不利。負載平衡器看不到加密的請求,因此無法最佳化路由或報告回應指標。
首先將環境的EC2執行個體設定為終止 HTTPS。在單一執行個體環境內測試組態,以確保一切正常運作,之後再將負載平衡器新增至組合。
將組態檔案新增至您的專案,以在連接埠 443 上設定接聽程式,將TCP封包按原樣傳遞至後端執行個體上的連接埠 443:
.ebextensions/https-lb-passthrough.config
option_settings:
aws:elb:listener:443:
ListenerProtocol: TCP
InstancePort: 443
InstanceProtocol: TCP
在預設的 Amazon Virtual Private Cloud (Amazon VPC) 中,您也需要將規則新增至執行個體的安全群組,以允許 443 上來自負載平衡器的傳入流量:
.ebextensions/https-instance-securitygroup.config
Resources:
443inboundfromloadbalancer:
Type: AWS::EC2::SecurityGroupIngress
Properties:
GroupId: {"Fn::GetAtt" : ["AWSEBSecurityGroup", "GroupId"]}
IpProtocol: tcp
ToPort: 443
FromPort: 443
SourceSecurityGroupName: { "Fn::GetAtt": ["AWSEBLoadBalancer", "SourceSecurityGroup.GroupName"] }
在自訂 中VPC,Elastic Beanstalk 會為您更新安全群組組態。