如何使用 AWS CLI 确定 ELB 侦听器关联的活动 SSL 安全策略?

2 分钟阅读
0

我想使用 AWS Command Line Interface (AWS CLI) 来确定 Elastic Load Balancing (ELB) 中 HTTPS 或 SSL 侦听器上的活动安全策略。我该如何操作?

简短描述

注意:如果您在运行 AWS CLI 命令时遇到错误,请确保使用的是最新版本的 AWS CLI

您可以为 Amazon Elastic Compute Cloud (Amazon EC2) 的负载均衡器添加 HTTPS 侦听器。侦听器的 SSL 安全策略会显示在 Amazon EC2 控制台中。如需相关说明,请参阅《更新 HTTPS/SSL 负载均衡器的 SSL 协商配置》。

您可以使用类似于以下内容的 AWS CLI 命令 describe-load-balancer-policies 来显示负载均衡器侦听器 SSL 安全策略名称和预定义 SSL 安全策略:

aws elb describe-load-balancer-policies --load-balancer-name EXAMPLEELB --query "PolicyDescriptions[?PolicyTypeName==`SSLNegotiationPolicyType`].{PolicyName:PolicyName,ReferenceSecurityPolicy:PolicyAttributeDescriptions[0].AttributeValue}" --output table

示例输出:

-------------------------------------------------------------------------------------
|                             DescribeLoadBalancerPolicies                          |
+-------------------------------------------------------+---------------------------+
|                     PolicyName                        |  ReferenceSecurityPolicy  |
+-------------------------------------------------------+---------------------------+
| ELBSecurityPolicy-2015-05                             | ELBSecurityPolicy-2015-05 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1446825761570 | ELBSecurityPolicy-2015-03 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1446774067525 | ELBSecurityPolicy-2015-05 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1446774575245 | ELBSecurityPolicy-2015-05 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1447023243695 | ELBSecurityPolicy-2014-10 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1447039877149 | false                     |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1447039147749 | ELBSecurityPolicy-2011-08 |
| AWSConsole-SSLNegotiationPolicy-TESTELB-1447102065672 | ELBSecurityPolicy-2014-10 |
+-------------------------------------------------------+---------------------------+

注意:如果 ReferenceSecurityPolicy 值为 false,说明策略不是用预定义安全策略之一创建。

输出将返回与负载均衡器侦听器关联的 SSL 安全策略,但不指明哪个策略处于活动状态。

解决方法

要确定活动负载均衡器侦听器 SSL 安全策略和任何关联的预定义 SSL 安全策略,请执行以下操作: 1.    运行类似以下内容的 AWS 命令 describe-load-balancers

aws elb describe-load-balancers --load-balancer-name EXAMPLEELB --query "LoadBalancerDescriptions[*].{ActivePolicy:ListenerDescriptions}" --output table

示例输出:

---------------------------------------------------------------------------------
|                             DescribeLoadBalancers                             |
||                                ActivePolicy                                 ||
|||                                 Listener                                  |||
||+-------------------+-------------------------------------------------------+||
|||  InstancePort     |  443                                                  |||
|||  InstanceProtocol |  SSL                                                  |||
|||  LoadBalancerPort |  443                                                  |||
|||  Protocol         |  SSL                                                  |||
|||  SSLCertificateId |  arn:aws:iam::803981987763:server-certificate/ELBSSL  |||
||+-------------------+-------------------------------------------------------+||
|||                                PolicyNames                                |||
||+---------------------------------------------------------------------------+||
|||  AWSConsole-SSLNegotiationPolicy-TESTELB-1447102065672                    |||
||+---------------------------------------------------------------------------+||
||                                ActivePolicy                                 ||
|||                                 Listener                                  |||
||+-----------------------------------------------------+---------------------+||
|||  InstancePort                                       |  80                 |||
|||  InstanceProtocol                                   |  HTTP               |||
|||  LoadBalancerPort                                   |  80                 |||
|||  Protocol                                           |  HTTP               |||
||+-----------------------------------------------------+---------------------+||

输出将返回与负载均衡器关联的策略名称。

2.    要获取有关策略的更多信息,请运行类似以下内容的 AWS CLI 命令 describe-load-balancer-policies

aws elb describe-load-balancer-policies --load-balancer-name EXAMPLEELB --policy-name AWSConsole-SSLNegotiationPolicy-TESTELB-1447102065672 --query "PolicyDescriptions[0].{ReferenceSecurityPolicy:PolicyAttributeDescriptions[0].AttributeValue}" --output table

示例输出:

----------------------------------------------------------
|              DescribeLoadBalancerPolicies              |
+--------------------------+-----------------------------+
|  ReferenceSecurityPolicy |  ELBSecurityPolicy-2014-10  |
+--------------------------+-----------------------------+

相关信息

使用控制台更新 SSL 协商配置

AWS 官方
AWS 官方已更新 2 年前