AWS VPC传输加密:ALB与ECS容器间TLS证书验证问询
解答:VPC内部ALB与ECS Envoy边车的TLS证书配置与验证
核心结论
ALB与ECS Envoy边车之间通信所用的ACM证书,不能直接复用API Gateway的公开证书,需要使用AWS Private CA签发的ACM私有证书(属于AWS内部托管的私有证书体系)。
具体细节与验证方式
证书类型差异
- API Gateway的HTTPS监听器使用的是ACM公开证书,对应你的公网访问域名(如
api.yourdomain.com),用于CloudFront到API Gateway的公网TLS终止,这类证书面向公网域名签发,无法用于VPC内部的私有域名验证。 - ALB到ECS Envoy边车的通信属于VPC内部流量,目标是ECS服务的私有域名(如
your-ecs-service.your-vpc-domain)或自定义内部域名,必须使用AWS Private CA签发的ACM私有证书——这类证书仅在你的AWS账户VPC内部生效,由AWS托管,无需自行维护证书生命周期。
- API Gateway的HTTPS监听器使用的是ACM公开证书,对应你的公网访问域名(如
验证配置步骤
- 在AWS Private CA中创建根CA或从属CA(按需选择),确保CA的信任链能被ALB识别。
- 通过ACM申请私有证书,关联VPC内部的目标域名(比如Envoy边车监听的内部服务域名)。
- 配置Envoy边车:将ACM私有证书挂载到ECS容器中,让Envoy使用该证书终止TLS(监听HTTPS端口)。
- 配置ALB的HTTPS目标组:在目标组的TLS验证设置中,导入AWS Private CA的根证书作为信任锚,这样ALB发起请求时会验证Envoy证书的有效性。
证书复用的误区
不要尝试用API Gateway的公开证书用于内部通信:一方面域名不匹配会导致TLS握手失败,另一方面公开证书的根CA是公网信任机构,VPC内部通信使用这类证书完全没必要,反而增加不必要的暴露风险。
内容的提问来源于stack exchange,提问作者dingo
相关产品推荐
相关产品推荐

