AWS弹性beanstalk应用程序上的https超时

时间:2018-05-08 18:40:45

标签: amazon-web-services ssl https dns elastic-beanstalk

我们在其中一个Elastic Beanstalk应用上遇到了一个奇怪的问题,其中每个https连接都会导致超时。通过openssl s_client验证证书本身是正常的,所以它看起来像负载均衡器的问题 - 但一切都在那里读得很好,所以我有点难过。

我们没有使用Route 53(在namecheap上管理DNS),我们的证书是从外部购买的(不使用AWS证书管理器)。

我的主要问题是:

  • 我无法访问我们的Namecheap帐户,但我确信一切都在那里 - 我是否在正确的轨道上专注于负载均衡器/ aws配置为罪魁祸首,或者这听起来好像是一些奇怪的DNS配置错误?

  • 在不通过路由53管理DNS时,是否有充分的理由避免使用AWS证书管理器?如果使用AWS提供的证书可以解决这个问题,我很乐意转而使用这条路线。 This问题非常相似,但处理AWS提供的证书。

3 个答案:

答案 0 :(得分:12)

您可能将Load Balancer指向端口443 + HTTPS,而不是80 + HTTP。如图所示,尝试设置Classic Load Balancer。

Example 1

Example 2

答案 1 :(得分:0)

There are two places to enable https on elastic beanstalk:
Place 1: From elastic beanstalk environment
select Services
select Elastic Beanstalk
select the environment within the application
select Configuration
in Load balancer section: select modify 
select Add listener
  listener port: 443
  listener protocol: HTTPS
  Instance port: 80
  Instance protocol: HTTP
  SSL certificate: Add an ACM certificate created from AWS or another

Place 2: The load balancer
select Services
select EC2
scroll down left panel: select Load balancers
select Action
select Edit Listeners
select Add
  listener port: 443
  listener protocol: HTTPS
  Instance port: 80
  Instance protocol: HTTP
  SSL certificate: Add an ACM certificate created from AWS or another
select Save

答案 2 :(得分:0)

There are two places to enable https on elastic beanstalk:
Place 1: From elastic beanstalk environment
select Services
select Elastic Beanstalk
select the environment within the application
select Configuration
in Load balancer section: select modify 
select Add listener
  listener port: 443
  listener protocol: HTTPS
  Instance port: 80
  Instance protocol: HTTP
  SSL certificate: Add an ACM certificate created from AWS or another

Place 2: The load balancer
select Services
select EC2
scroll down left panel: select Load balancers
select Action
select Edit Listeners
select Add
  listener port: 443
  listener protocol: HTTPS
  Instance port: 80
  Instance protocol: HTTP
  SSL certificate: Add an ACM certificate created from AWS or another
select Save