我應用程式負載平衡器的安全政策列出了 RSA 和 ECDSA 密碼。但是當我連接到負載平衡器時,只看到了選擇的 RSA 密碼。
簡短描述
您可以為 Application Load Balancer HTTPS 接聽程式設定多個憑證。但是,它需要安全政策。每個安全政策都包含 RSA 和 ECDSA 加密演算法的密碼。在 TLS 信號交換過程中,Application Load Balancer 會使用選取處理邏輯來決定要使用哪個 Application Load Balancer 憑證進行 HTTPS 連線。如果選取的憑證是使用 RSA 或 ECDSA (橢圓曲線) 金鑰建立,則 Application Load Balancer 會使用 RSA 或 ECDSA 密碼進行加密。
解決方法
若要將 ECDSA 密碼與您的 Application Load Balancer 搭配使用,請完成以下步驟:
建立或匯入新的 ECDSA 憑證到 ACM,並將其繫結到 HTTPS 接聽程式
建立新的 ECDSA 憑證
首先,確定您的憑證要求。然後,從 AWS Certificate Manager (ACM) 要求 ECDSA 憑證。
將 ECDSA 憑證匯入 ACM
與您的憑證授權單位合作取得網域的 ECDSA 憑證 (.pem 格式) 後,將新的 ECDSA 憑證匯入 ACM。
建立 ECDSA 憑證或將其匯入 ACM 後,請將您的憑證與 Application Load Balancer 關聯。
(選用) 測試負載平衡器的 TLS 接聽程式是否有支援的密碼
若要測試使用了哪些通訊協定和密碼,請使用開放原始碼命令列工具,例如 sslscan。
**注意:**使用 sslscan 可讓您取得所有密碼的完整資訊,而無需使用其他第三方公用程式。例如,如果您使用 curl,則必須指定單獨的密碼套件。這些需要單獨的 curl 請求,以指定 TLS 通訊協定和密碼套件。
您可以在任何 Amazon Elastic Compute Cloud (Amazon EC2) Linux 執行個體上或本機系統安裝並執行 sslscan 命令。確認您要測試的負載平衡器接受來源 IP 位址的 TLS 連線。
若要在 Amazon Linux EC2 執行個體上使用 sslscan,請完成下列步驟:
1. 啟用適用於 Enterprise Linux (EPEL) 的額外套件儲存庫。
2. 在您的 Amazon EC2 Linux 執行個體上安裝 sslscan:
sudo yum install sslscan
3. 若要掃描 Application Load Balancer 以尋找支援的密碼,請執行下列命令。將 example.com 替換為您的網域名稱:
[ec2-user@ ~]$ sslscan --show-ciphers example.com | grep -E "Preferred|Accepted"
以下是一個輸出範例,顯示在 Application Load Balancer 上執行弱點掃描的結果。在此範例中,負載平衡器使用 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
如果您在 Application Load Balancer 上正確設定了 ECDSA 憑證,則輸出將顯示協商的 ECDHE-ECDSA-* 密碼套件。如果輸出顯示其他密碼套件,請檢閱並更新 Application Load Balancer 安全政策。