A política de segurança do My Application Load Balancer lista as cifras RSA e ECDSA. Mas quando me conecto ao meu balanceador de carga, vejo somente as cifras RSA selecionadas.
Breve descrição
É possível configurar um receptor HTTPS do Application Load Balancer com vários certificados. No entanto, isso requer uma política de segurança. Cada política de segurança contém cifras para algoritmos criptográficos RSA e ECDSA. Durante o handshake TLS, o Application Load Balancer usa a lógica do processo de seleção para determinar qual certificado do Application Load Balancer usar para a conexão HTTPS. Se o certificado escolhido for criado com chaves RSA ou ECDSA (curva elíptica), o Application Load Balancer usará cifras RSA ou ECDSA para criptografia.
Resolução
Para usar cifras ECDSA com seu Application Load Balancer, conclua as seguintes etapas:
Crie ou importe um novo certificado ECDSA para o ACM e vincule-o a um receptor HTTPS
Crie um novo certificado ECDSA
Primeiro, determine os requisitos do seu certificado. Em seguida, solicite um certificado ECDSA do AWS Certificate Manager (ACM).
Importe o certificado ECDSA para o ACM
Depois de trabalhar com sua autoridade de certificação para obter o certificado ECDSA para seu domínio no formato.pem, importe seu novo certificado ECDSA para o ACM.
Depois de criar ou importar seu certificado ECDSA para o ACM, associe seu certificado ao seu Application Load Balancer.
(Opcional) Teste o receptor TLS do seu balanceador de carga para ver se há cifras compatíveis
Para testar quais protocolos e cifras são usados, use uma ferramenta de linha de comando de código aberto, como sslscan.
Observação: o uso do sslscan permite obter informações completas sobre todas as cifras sem usar um utilitário adicional de terceiros. Por exemplo, se você usar curl, deverá especificar conjuntos de cifras individuais. Eles exigem solicitações curl separadas que especificam protocolos TLS e conjuntos de cifras.
É possível instalar e executar o comando sslscan em qualquer instância Linux do Amazon Elastic Compute Cloud (Amazon EC2) ou do seu sistema local. Verifique se o balanceador de carga que você deseja testar aceita conexões TLS do seu endereço IP de origem.
Para usar o sslscan em uma instância do Amazon Linux EC2, conclua as seguintes etapas:
1. Ative o repositório Extra Packages for Enterprise Linux (EPEL).
2. Instale o sslscan em sua instância Linux do Amazon EC2:
sudo yum install sslscan
3. Para escanear seu Application Load Balancer em busca de cifras compatíveis, execute o comando a seguir. substitua exemplo.com pelo seu nome de domínio:
[ec2-user@ ~]$ sslscan --show-ciphers example.com | grep -E "Preferred|Accepted"
Aqui está um exemplo de saída que mostra os resultados da execução de uma verificação de vulnerabilidade no seu Application Load Balancer. Neste exemplo, o balanceador de carga usa um certificado P-256 ECDSA e uma política de segurança padrão:
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
O exemplo de saída a seguir apresenta um balanceador de carga com um certificado RSA 2048 e uma política de segurança padrão:
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
Se você configurou corretamente seu certificado ECDSA no Application Load Balancer, sua saída mostrará os conjuntos de cifras ECDHE-ECDSA-* negociados. Se sua saída mostrar outros conjuntos de cifras, revise e atualize sua política de segurança do Application Load Balancer.