如何将我的应用程序负载均衡器 TLS/SSL 侦听器配置为使用 ECDSA 密码?

2 分钟阅读
0

我的应用程序负载均衡器的安全策略列出了 RSA 和 ECDSA 密码。但是当我连接到我的负载均衡器时,只看到了所选的 RSA 密码。

简短描述

您可以为应用程序负载均衡器 HTTPS 侦听器配置多个证书。但是,需要有一个安全策略。每个安全策略都要包含 RSA 和 ECDSA 加密算法的密码。在 TLS 握手期间,应用程序负载均衡器会使用选择过程逻辑来确定使用哪个应用程序负载均衡器证书进行 HTTPS 连接。如果所选证书是使用 RSA 或 ECDSA(椭圆曲线)密钥创建的,那么应用程序负载均衡器会使用 RSA 或 ECDSA 密码进行加密。

解决方法

要在应用程序负载均衡器中使用 ECDSA 密码,请完成以下步骤:

在 ACM 上创建新的 ECDSA 证书或向 ACM 导入新的 ECDSA 证书并将其绑定到 HTTPS 侦听器

创建新的 ECDSA 证书

首先,确定您的证书要求。然后,向 AWS Certificate Manager (ACM) 申请 ECDSA 证书

将 ECDSA 证书导入 ACM

在您向证书颁发机构为您的域获取 .pem 格式的 ECDSA 证书后,将新的 ECDSA 证书导入 ACM

在 ACM 上创建您的 ECDSA 证书或向 ACM 导入您的 ECDSA 证书后,将您的证书与应用程序负载均衡器进行关联

(可选)测试您的负载均衡器的 TLS 侦听器以确定支持的密码

要测试使用了哪些协议和密码,请使用开源命令行工具,例如 sslscan

**注意:**使用 sslscan,可以让您获得所有密码的完整信息,而无需使用额外的第三方实用程序。例如,如果您使用 curl,则必须指定单个密码套件。这需要通过单独的 curl 请求来指定 TLS 协议和密码套件。

您可以在任何 Amazon Elastic Compute Cloud (Amazon EC2) Linux 实例上或者从本地系统安装和运行 sslscan 命令。确保您要测试的负载均衡器可接受来自您源 IP 地址的 TLS 连接。

要在 Amazon Linux EC2 实例上使用 sslscan,请完成以下步骤:

1.启用 Extra Packages for Enterprise Linux (EPEL) 存储库

2.在您的 Amazon EC2 Linux 实例上安装 sslscan

sudo yum install sslscan

3.要扫描您的应用程序负载均衡器以确定支持的密码,请运行以下命令。将 example.com 替换为您的域名:

[ec2-user@ ~]$ sslscan --show-ciphers example.com | grep Accepted

以下是输出示例,显示了在您的应用程序负载均衡器上运行漏洞扫描的结果。在此示例中,负载均衡器使用的是 P-256 ECDSA 证书和默认的安全策略:

    Accepted  TLSv1  256 bits  ECDHE-ECDSA-AES256-SHA
    Accepted  TLSv1  128 bits  ECDHE-ECDSA-AES128-SHA
    Accepted  TLS11  256 bits  ECDHE-ECDSA-AES256-SHA
    Accepted  TLS11  128 bits  ECDHE-ECDSA-AES128-SHA
    Accepted  TLS12  256 bits  ECDHE-ECDSA-AES256-GCM-SHA384
    Accepted  TLS12  256 bits  ECDHE-ECDSA-AES256-SHA384
    Accepted  TLS12  256 bits  ECDHE-ECDSA-AES256-SHA
    Accepted  TLS12  128 bits  ECDHE-ECDSA-AES128-GCM-SHA256
    Accepted  TLS12  128 bits  ECDHE-ECDSA-AES128-SHA256
    Accepted  TLS12  128 bits  ECDHE-ECDSA-AES128-SHA

以下输出示例中的负载均衡器使用的是 RSA 2048 证书和默认安全策略:

    Accepted  TLSv1  256 bits  ECDHE-RSA-AES256-SHA
    Accepted  TLSv1  256 bits  AES256-SHA
    Accepted  TLSv1  128 bits  ECDHE-RSA-AES128-SHA
    Accepted  TLSv1  128 bits  AES128-SHA
    Accepted  TLS11  256 bits  ECDHE-RSA-AES256-SHA
    Accepted  TLS11  256 bits  AES256-SHA
    Accepted  TLS11  128 bits  ECDHE-RSA-AES128-SHA
    Accepted  TLS11  128 bits  AES128-SHA
    Accepted  TLS12  256 bits  ECDHE-RSA-AES256-GCM-SHA384
    Accepted  TLS12  256 bits  ECDHE-RSA-AES256-SHA384
    Accepted  TLS12  256 bits  ECDHE-RSA-AES256-SHA
    Accepted  TLS12  256 bits  AES256-GCM-SHA384
    Accepted  TLS12  256 bits  AES256-SHA256
    Accepted  TLS12  256 bits  AES256-SHA
    Accepted  TLS12  128 bits  ECDHE-RSA-AES128-GCM-SHA256
    Accepted  TLS12  128 bits  ECDHE-RSA-AES128-SHA256
    Accepted  TLS12  128 bits  ECDHE-RSA-AES128-SHA
    Accepted  TLS12  128 bits  AES128-GCM-SHA256
    Accepted  TLS12  128 bits  AES128-SHA256
    Accepted  TLS12  128 bits  AES128-SHA

如果您在应用程序负载均衡器上正确配置了 ECDSA 证书,则输出将显示协商的 ECDHE-ECDSA-* 密码套件。如果您的输出显示其他密码套件,请查看并更新您的应用程序负载均衡器安全策略

AWS 官方
AWS 官方已更新 9 个月前