Come risolvo l'errore di scadenza del certificato per il certificato Let's Encrypt sulla mia istanza EC2?
Non riesco a connettermi a un URL remoto dall'istanza Amazon Elastic Compute Cloud (Amazon EC2) che dispone di un certificato Let's Encrypt. In alternativa, ricevo un errore che indica che il mio certificato Let's Encrypt è scaduto. Come posso risolvere il problema?
Breve descrizione
Alcune istanze EC2 presentano errori relativi al certificato scaduto a causa di un DST Root CA X3 con firma incrociata Let's Encrypt scaduta. Le istanze che eseguono i seguenti sistemi operativi potrebbero non essere in grado di connettersi ai server utilizzando i certificati Let's Encrypt. Questi sistemi operativi potrebbero inoltre non essere in grado di accedere agli endpoint Let's Encrypt per emettere o rinnovare certificati dopo il 30 settembre 2021:
- CentOS e RHEL 7 o inferiori
- Amazon Linux e Amazon Linux 2
- Ubuntu 16.04 o inferiori
- Debian 8 o inferiori
Per motivi di compatibilità, i certificati Let's Encrypt di default utilizzano una catena di certificati con firma incrociata dal certificato DST Root CA X3 scaduto il 30 settembre 2021.
Con OpenSSL 1.0.2, si preferisce la catena non attendibile. Ciò significa che il certificato scaduto viene visualizzato e l'intera catena non è attendibile quando scaduto. I server con la versione interessata di OpenSSL e il certificato DST Root CA X3 nell'archiviazione principale non possono emettere o rinnovare certificati Let's Encrypt. Inoltre, i server interessati non possono accedere ai server che li utilizzano.
Risoluzione
Questo problema è stato corretto in Ubuntu 16.04 con una recente versione del pacchetto OpenSSL. Amazon Linux e Red Hat hanno inoltre rilasciato nuovi pacchetti di certificati CA che negano il certificato in scadenza.
Aggiornamenti dei pacchetti
Ubuntu 16.04: aggiorna OpenSSL alla versione 1.0.2g-1ubuntu4.20 o successiva.
Amazon Linux e Amazon Linux 2: le istanze Amazon Linux possono essere riavviate per applicare automaticamente il pacchetto di certificati CA aggiornato. Se le istanze esistenti devono essere aggiornate, è possibile aggiornare i certificati CA eseguendo il seguente comando:
sudo yum update ca-certificates
Nota: se si utilizza un'AMI con un GUID del repository bloccato, ad esempio Elastic Beanstalk, installare un pacchetto di certificati CA aggiornato utilizzando i seguenti comandi:
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 e CentOS 7: aggiorna il pacchetto di certificati CA a 2021.2.50-72.el7_9 o versioni successive.
Nota: le versioni di Ubuntu inferiori a 16.04 sono la fine del ciclo di vita. L'intervento manuale potrebbe essere possibile, ma non è supportato.
Correzione manuale per i sistemi basati su Amazon Linux
È una best practice aggiornare le istanze esistenti utilizzando il precedente comando yum. Per modificare il sistema in uso, utilizzare invece i seguenti comandi:
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
Correzione manuale per i sistemi basati su Red Hat
1. Esegui il backup dell'archiviazione root esistente:
cp -i /etc/pki/tls/certs/ca-bundle.crt ~/ca-bundle.crt-backup
2. Aggiungi il certificato alla directory dell'elenco di negazione:
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. Aggiorna l'archiviazione root:
sudo update-ca-trust extract
4. Verifica la rimozione dei certificati:
diff ~/ca-bundle.crt-backup /etc/pki/tls/certs/ca-bundle.crt
Informazioni correlate
Estensione della compatibilità dei dispositivi Android per i certificati Let's Encrypt
Contenuto pertinente
- AWS UFFICIALEAggiornata 2 anni fa
- AWS UFFICIALEAggiornata 9 mesi fa
- AWS UFFICIALEAggiornata 2 anni fa