【问题标题】:How to programmatically set the load balancer ciphers on Amazon Elastic BeansTalk?如何以编程方式在 Amazon Elastic BeansTalk 上设置负载均衡器密码?
【发布时间】:2019-02-22 08:39:12
【问题描述】:

我一直在阅读 Amazon Elastic Beanstalk 文档,并且能够将以下行添加到 .ebextensions 中的配置文件中,以将 Elastic Load Balancer 设置为使用 HTTPS:

option_settings:
  # Elastic Load Balancer Options
  - namespace: aws:elb:loadbalancer
    option_name: LoadBalancerHTTPPort
    value: 80
  - namespace: aws:elb:loadbalancer
    option_name: LoadBalancerPortProtocol
    value: HTTP
  - namespace: aws:elb:loadbalancer
    option_name: LoadBalancerHTTPSPort
    value: 443
  - namespace: aws:elb:loadbalancer
    option_name: LoadBalancerSSLPortProtocol
    value: HTTPS
  - namespace: aws:elb:loadbalancer
    option_name: SSLCertificateId
    value: arn:aws:iam:<my cert ARN>

效果很好。但是,我无法在文档中找到有关如何在不诉诸控制台或 CLI 命令的情况下为此负载均衡器设置允许密码列表的任何要点。关于如何做到这一点的任何想法?

【问题讨论】:

    标签: load-balancing amazon-elastic-beanstalk


    【解决方案1】:

    已联系 AWS 支持并确认尚不支持此功能。无赖。

    【讨论】:

    【解决方案2】:

    我不确定这种情况何时/是否发生了变化,但您可以使用 .ebextensions 在“经典”负载均衡器上执行此操作:

    option_settings:
      aws:elb:policies:tlspolicy:
        SSLProtocols: "Protocol-TLSv1.2,Server-Defined-Cipher-Order,ECDHE-RSA-AES256-SHA384,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES128-SHA256,ECDHE-RSA-AES128-GCM-SHA256"
        LoadBalancerPorts: "443"
    

    https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options-general.html

    【讨论】:

      【解决方案3】:

      现在看来这是可能的。根据this Elastic Load Balancer doc,您可以创建自己的策略:

      自定义安全策略

      您可以使用所需的密码和协议创建自定义协商配置。请注意,某些安全合规标准(例如 PCI、SOX 等)可能需要一组特定的协议和密码来确保满足安全标准。在这种情况下,您可以创建自定义安全策略来满足这些标准。

      AWS 页面Update the SSL Negotiation Configuration of Your Load Balancer 上有关于使用aws elb 命令自定义策略的说明。

      我不想只引用那里的内容,但我想指出,如果其他人在这里遇到问题,现在似乎是可能的。不过,简而言之,您可以使用 aws elb create-load-balancer-policy 创建一个策略,在其中定义一组密码及其顺序,然后使用 aws elb set-load-balancer-policies-of-listener 在负载均衡器上启用它。

      【讨论】:

      • 是的,但在 Elastic Beanstalk 环境配置选项中似乎仍然不受支持,这是我的问题所引用的:docs.aws.amazon.com/elasticbeanstalk/latest/dg/…
      • 如果您在应用程序安装过程中添加一个脚本来执行此操作,您需要硬编码 ELB 名称,对吗?如果这是环境配置中的一个选项,则没有必要。
      猜你喜欢
      • 2019-04-21
      • 2018-01-30
      • 2017-04-19
      • 1970-01-01
      • 2022-08-10
      • 2018-04-23
      • 1970-01-01
      • 2016-12-13
      • 2017-09-28
      相关资源
      最近更新 更多