¿Cómo puedo resolver un error de vencimiento del certificado Let's Encrypt en mi instancia de EC2?

3 minutos de lectura
0

No puedo conectarme a una URL remota desde mi instancia de Amazon Elastic Compute Cloud (Amazon EC2) que tiene un certificado Let's Encrypt. O bien, recibo un error que indica que mi certificado Let's Encrypt ha vencido. ¿Cómo lo soluciono?

Descripción corta

Algunas instancias EC2 experimentan errores de certificados vencidos debido a un DST Root CA X3 con firma cruzada de Let's Encrypt vencido. Es posible que las instancias que ejecutan los siguientes sistemas operativos no puedan conectarse a los servidores mediante certificados Let's Encrypt. Es posible que estos sistemas operativos tampoco puedan acceder a los puntos de enlace de Let's Encrypt para emitir o renovar certificados después del 30 de septiembre de 2021:

  • CentOS y RHEL 7 o anterior
  • Amazon Linux y Amazon Linux 2
  • Ubuntu 16.04 o anterior
  • Debian 8 o anterior

Por motivos de compatibilidad, los certificados Let's Encrypt utilizan de forma predeterminada una cadena de certificados con firma cruzada de DST CA X3 que venció el 30 de septiembre de 2021.

Con OpenSSL 1.0.2, siempre se prefiere la cadena que no es de confianza. Esto significa que se ve el certificado vencido y se desconfía de toda la cadena como vencida. Los servidores con la versión afectada de OpenSSL y el certificado DST Root CA X3 en su almacén raíz no pueden emitir ni renovar certificados Let's Encrypt. Los servidores afectados tampoco pueden acceder a los servidores que los utilizan.

Resolución

Este problema se corrige en Ubuntu 16.04 con una versión reciente del paquete OpenSSL. Amazon Linux y Red Hat también han publicado nuevos paquetes de certificados CA que deniegan el vencimiento del certificado.

Actualizaciones de paquetes

Ubuntu 16.04: actualiza OpenSSL a la versión 1.0.2g-1ubuntu4.20 o posterior.

Amazon Linux y Amazon Linux 2: las instancias de Amazon Linux pueden relanzarse para aplicar el paquete actualizado de certificados CA de forma automática. Si se deben actualizar las instancias existentes, los clientes pueden ejecutar el siguiente comando para actualizar los certificados CA:

sudo yum update ca-certificates

Nota: Si utiliza una AMI con un GUID de repositorio bloqueado, como Elastic Beanstalk, instale el paquete de certificados CA mediante los siguientes comandos:

Amazon Linux 1

sudo yum install https://cdn.amazonlinux.com/patch/ca-certificates-update-2021-09-30/ca-certificates-2018.2.22-65.1.24.amzn1.noarch.rpm

Amazon Linux 2

sudo yum install https://cdn.amazonlinux.com/patch/ca-certificates-update-2021-09-30/ca-certificates-2021.2.50-72.amzn2.0.1.noarch.rpm

Red Hat y CentOS 7: actualiza el paquete de certificados CA a 2021.2.50-72.el7_9 o posterior.

Nota: Las versiones de Ubuntu anteriores a 16.04 están al final de su vida útil. La intervención manual puede ser posible, pero no se admite.

Corrección manual para sistemas basados en Amazon Linux

Se recomienda actualizar las instancias existentes mediante el comando yum anterior. Para modificar el sistema vigente, utilice los siguientes comandos como alternativa:

Amazon Linux 1

sudo sed -i'' '/Alias: DST Root CA X3/,/No Rejected Uses./d' /usr/share/pki/ca-trust-source/ca-bundle.trust.crt
sudo update-ca-trust

Amazon Linux 2

sudo sed -i'' '/DST Root CA X3/,/\[p11-kit-object-v1\]/d' /usr/share/pki/ca-trust-source/ca-bundle.trust.p11-kit 
sudo update-ca-trust

Solución manual para sistemas basados en Red Hat

1.    Copie la copia de seguridad del almacén raíz existente:

cp -i /etc/pki/tls/certs/ca-bundle.crt ~/ca-bundle.crt-backup

2.    Agregue el certificado al directorio de lista de denegación:

trust dump --filter "pkcs11:id=%c4%a7%b1%a4%7b%2c%71%fa%db%e1%4b%90%75%ff%c4%15%60%85%89%10" | openssl x509 | sudo tee /etc/pki/ca-trust/source/blacklist/DST-Root-CA-X3.pem

3.    Actualice el almacén raíz:

sudo update-ca-trust extract

4.    Verifique la eliminación de certificados:

diff ~/ca-bundle.crt-backup /etc/pki/tls/certs/ca-bundle.crt

Información relacionada

Ampliación de la compatibilidad de dispositivos Android para los certificados Let's Encrypt

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años