Come posso installare un certificato SSL Let's Encrypt in uno stack Bitnami in Lightsail?
Desidero installare un certificato SSL per il mio sito Web in un'istanza Amazon Lightsail con uno stack Bitnami.
Breve descrizione
Per informazioni su come installare un modello di istanza diverso o un certificato standard, consulta i seguenti articoli di AWS Knowledge Center:
- Come posso installare un certificato SSL Let's Encrypt standard in un'istanza Lightsail?Questa soluzione include istanze come Amazon Linux 2 e Ubuntu.
- Come posso installare un certificato SSL Let's Encrypt in uno stack Bitnami in Lightsail?Questa soluzione include istanze come WordPress, LAMP e Magento.
- Come posso installare un certificato SSL Let's Encrypt con caratteri jolly in Amazon Lightsail?Questa soluzione include istanze come Amazon Linux 2 e Ubuntu.
Risoluzione
I passaggi per installare un certificato SSL Let's Encrypt wildcard su un'istanza Lightsail ospitata da Bitnami dipendono dal provider DNS utilizzato dal dominio. Controlla se il tuo provider DNS è elencato tra i provider DNS sul sito Web Lego. Quindi, seleziona il metodo appropriato da utilizzare:
- Se il tuo dominio utilizza uno dei provider DNS elencati, utilizza lo strumento Lego fornito da Bitnami.
- Se il tuo dominio non utilizza uno dei provider DNS elencati, utilizza il pacchetto Certbot.
**Nota:**i percorsi dei file possono cambiare a seconda che il tuo stack Bitnami utilizzi pacchetti di sistema Linux nativi (Approccio A) o un'installazione autonoma (Approccio B). Gli ultimi blueprint di Bitnami WordPress sono disponibili solo per l'Approccio A.
Per identificare il tipo di installazione di Bitnami, esegui il seguente comando:
test ! -f "/opt/bitnami/common/bin/openssl" && echo "Approach A: Using system packages." || echo "Approach B: Self-contained installation."
Strumento Lego
Bitnami fornisce lo strumento bncert-tool e lo strumento Lego. Lo strumento Lego supporta la creazione di certificati SSL wildcard. Lo strumento bncert-tool non supporta la creazione di certificati SSL wildcard.
**Nota:**nel seguente esempio, i provider DNS sono Amazon Route 53 e Amazon Lightsail.
Per utilizzare lo strumento Lego per installare un certificato SSL Let's Encrypt wildcard, completa i seguenti passaggi:
-
Crea un utente AWS Identity and Access Management (IAM) con accesso programmatico. Per determinare le autorizzazioni utente IAM richieste a Lego per completare la sfida DNS, consulta gli esempi di policy IAM sul sito Web Lego.
-
Per aprire il file /root/.aws/credentials nell'editor nano, esegui il seguente comando:
sudo mkdir /root/.aws sudo nano /root/.aws/credentials
-
Inserisci le seguenti righe nel file delle credenziali:
[default] aws_access_key_id = AKIA************E aws_secret_access_key = 1yop**************************l region = us-east-1
Nota: Sostituisci aws\ _access\ _key\ _id e aws\ _secret\ _access\ _key con i tuoi valori. Sostituisci us-east-1 con la regione AWS della tua istanza Lightsail.
-
Per salvare il file, premi Ctrl + X, quindi y e quindi Invio.
-
Se la tua istanza Bitnami non include la directory /opt/bitnami/letsencrypt/, esegui il seguente comando per installare manualmente il client Lego:
cd /tmp curl -Ls https://api.github.com/repos/xenolf/lego/releases/latest | grep browser_download_url | grep linux_amd64 | cut -d '"' -f 4 | wget -i - -O lego.tar.gz tar xzf lego.tar.gz sudo mkdir -p /opt/bitnami/letsencrypt sudo mv lego /opt/bitnami/letsencrypt/lego
-
Per creare un certificato Let's Encrypt wildcard nel server, esegui il seguente comando in base al tipo di server:
Name server Route 53:sudo /opt/bitnami/letsencrypt/lego --email="EMAIL-ADDRESS" --domains="DOMAIN" --domains="*.DOMAIN" --dns route53 --path="/opt/bitnami/letsencrypt" run
Server dei nomi Lightsail:
sudo DNS_ZONE=DOMAIN /opt/bitnami/letsencrypt/lego --email="EMAIL-ADDRESS" --domains="DOMAIN" --domains="*.DOMAIN" --dns lightsail --path="/opt/bitnami/letsencrypt" run
**Nota:**sostituisci EMAIL-ADDRESS con l'indirizzo email a cui desideri ricevere gli aggiornamenti del certificato. sostituisci domain con il tuo dominio.
Il certificato SSL e la chiave privata vengono generati nelle seguenti posizioni: /opt/bitnami/letsencrypt/certificates/DOMAIN.crt o /opt/bitnami/letsencrypt/certificates/DOMAIN.key. -
Per interrompere i servizi dello stack Bitnami, esegui il seguente comando:
sudo /opt/bitnami/ctlscript.sh stop
-
Collega il certificato SSL e il file chiave del certificato alle posizioni attualmente lette dal tuo server web, in base al tuo server e al tuo approccio:
Apache, approccio Asudo mv /opt/bitnami/apache2/conf/bitnami/certs/server.crt /opt/bitnami/apache2/conf/bitnami/certs/server.crt.old sudo mv /opt/bitnami/apache2/conf/bitnami/certs/server.key /opt/bitnami/apache2/conf/bitnami/certs/server.key.old sudo ln -sf /opt/bitnami/letsencrypt/certificates/DOMAIN.key /opt/bitnami/apache2/conf/bitnami/certs/server.key sudo ln -sf /opt/bitnami/letsencrypt/certificates/DOMAIN.crt /opt/bitnami/apache2/conf/bitnami/certs/server.crt
Apache, approccio B
sudo mv /opt/bitnami/apache2/conf/server.crt /opt/bitnami/apache2/conf/server.crt.old sudo mv /opt/bitnami/apache2/conf/server.key /opt/bitnami/apache2/conf/server.key.old sudo mv /opt/bitnami/apache2/conf/server.csr /opt/bitnami/apache2/conf/server.csr.old sudo ln -sf /opt/bitnami/letsencrypt/certificates/DOMAIN.key /opt/bitnami/apache2/conf/server.key sudo ln -sf /opt/bitnami/letsencrypt/certificates/DOMAIN.crt /opt/bitnami/apache2/conf/server.crt
NGINX, approccio A
sudo mv /opt/bitnami/nginx/conf/bitnami/certs/server.crt /opt/bitnami/nginx/conf/bitnami/certs/server.crt.old sudo mv /opt/bitnami/nginx/conf/bitnami/certs/server.key /opt/bitnami/nginx/conf/bitnami/certs/server.key.old sudo ln -sf /opt/bitnami/letsencrypt/certificates/DOMAIN.key /opt/bitnami/nginx/conf/bitnami/certs/server.key sudo ln -sf /opt/bitnami/letsencrypt/certificates/DOMAIN.crt /opt/bitnami/nginx/conf/bitnami/certs/server.crt
NGINX, approccio B
sudo mv /opt/bitnami/nginx/conf/server.crt /opt/bitnami/nginx/conf/server.crt.old sudo mv /opt/bitnami/nginx/conf/server.key /opt/bitnami/nginx/conf/server.key.old sudo mv /opt/bitnami/nginx/conf/server.csr /opt/bitnami/nginx/conf/server.csr.old sudo ln -sf /opt/bitnami/letsencrypt/certificates/DOMAIN.key /opt/bitnami/nginx/conf/server.key sudo ln -sf /opt/bitnami/letsencrypt/certificates/DOMAIN.crt /opt/bitnami/nginx/conf/server.crt
**Nota:**per i comandi precedenti, sostituisci DOMAIN con il tuo nome di dominio.
-
Per avviare i servizi dello stack Bitnami, esegui il seguente comando:
sudo /opt/bitnami/ctlscript.sh start
-
Per automatizzare il rinnovo del certificato, esegui il seguente comando per aprire l'editor crontab:
sudo crontab -e -u bitnami
**Nota:**i certificati Let's Encrypt sono validi per 90 giorni.
Inserisci la riga seguente nel file crontab, quindi salva il file:
Apache
0 0 * * * sudo /opt/bitnami/letsencrypt/lego --path /opt/bitnami/letsencrypt --email="EMAIL-ADDRESS" --domains="DOMAIN" --domains="*.DOMAIN" --dns DNS renew >> /var/log/letsencrypt.log 2>&1 && sudo /opt/bitnami/apache/bin/httpd -f /opt/bitnami/apache/conf/httpd.conf -k graceful
NGINX
0 0 * * * sudo /opt/bitnami/letsencrypt/lego --path /opt/bitnami/letsencrypt --email="EMAIL-ADDRESS" --domains="DOMAIN" --domains="*.DOMAIN" --dns DNS renew >> /var/log/letsencrypt.log 2>&1 && sudo /opt/bitnami/nginx/sbin/nginx -c /opt/bitnami/nginx/conf/nginx.conf -s reload
Nota: sostituisci EMAIL-ADDRESS, DOMAIN e DNS con i tuoi valori. Configura il reindirizzamento HTTPS. Per ulteriori informazioni, consulta Forza il reindirizzamento HTTPS con Apache e Forza il reindirizzamento HTTPS con NGINX sul sito Web di Bitnami.
Pacchetto Certbot
Prerequisiti:
- Installa Certbot.
- Determina la tua distribuzione Linux. Per le istanze ospitate da Bitnami, la distribuzione Linux è Debian o Ubuntu. Esegui il seguente comando per confermare la tua distribuzione Linux:
**Nota:**questo metodo non supporta il rinnovo automatico dei certificati.cat /etc/os-release | grep -i ^id
Per utilizzare il pacchetto Certbot per installare un certificato SSL Let's Encrypt wildcard, completa i seguenti passaggi:
-
Avvia una sessione Linux GNU Screen. Poiché l'aggiunta di record TXT nel provider DNS del dominio richiede tempo, la sessione può scadere. È consigliabile eseguire i comandi in Linux GNU Screen in modo che la sessione non scada. Per avviare una sessione sullo schermo, esegui il comando seguente:
screen -S letsencrypt
-
Per avviare la modalità interattiva Certbot, esegui il seguente comando:
sudo certbot certonly --manual --preferred-challenges dns -d example.com -d *.example.com
**Nota:**sostituisci example.com con il tuo valore.
Se ricevi una risposta di errore, ad esempio «bash: certbot: command not found», potresti dover aggiungere /bin/snap alla tua variabile di ambiente PATH. Innanzitutto, inserisci “exit” e premi Invio. Oppure, premi Ctrl + D per uscire dalla sessione dello schermo. Quindi, modifica /etc/environment e aggiungi /snap/bin nell'elenco. Riavvia il sistema. Per confermare che non c'è più un errore, esegui il comando seguente:$ certbot -h
-
Copia i record TXT forniti da Let's Encrypt. Let's Encrypt fornisce uno o più record TXT da utilizzare per la verifica.
-
Aggiungi il record fornito nel DNS del tuo dominio.
Importante: non premere Invio finché non confermi che il record TXT viene propagato al DNS Internet. Inoltre, non premere Ctrl + D perché questa azione interrompe la sessione dello schermo. -
Per confermare che il record è stato propagato, cercate il record TXT nella sezione DNS text lookup sul sito web di MxToolbox:
_acme-challenge.example.com
**Nota:**sostituisci example.com con il tuo valore.
Se i record TXT vengono propagati, nella pagina viene visualizzato il valore del record TXT. Torna alla schermata precedente e premi Invio. -
Se vieni rimosso dalla shell, esegui il comando seguente per tornare alla shell:
Screen -r SESSIONID
**Nota:**esegui il comando screen -ls per ottenere l'ID della sessione.
-
(Facoltativo) Se richiesto, ripeti i passaggi precedenti per aggiungere un altro record TXT.
Nota: se utilizzi Route 53 per il tuo provider DNS, inserisci un valore TXT per riga. Modifica il record TXT, quindi in una nuova riga aggiungi il valore TXT fornito da certbot. -
Salva le posizioni dei file del certificato SSL e del file chiave. Dopo la generazione del certificato SSL, viene visualizzato il messaggio «Certificato ricevuto con successo».
-
Per configurare il server Web per l'utilizzo del certificato, esegui i seguenti comandi in base al server e all'approccio:
Apache, approccio Asudo /opt/bitnami/ctlscript.sh stop sudo mv /opt/bitnami/apache2/conf/bitnami/certs/server.crt /opt/bitnami/apache2/conf/bitnami/certs/server.crt.old sudo mv /opt/bitnami/apache2/conf/bitnami/certs/server.key /opt/bitnami/apache2/conf/bitnami/certs/server.key.old sudo ln -sf /etc/letsencrypt/live/DOMAIN/privkey.pem /opt/bitnami/apache2/conf/bitnami/certs/server.key sudo ln -sf /etc/letsencrypt/live/DOMAIN/fullchain.pem /opt/bitnami/apache2/conf/bitnami/certs/server.crt sudo /opt/bitnami/ctlscript.sh start
Apache, approccio B
sudo /opt/bitnami/ctlscript.sh stop sudo mv /opt/bitnami/apache2/conf/server.crt /opt/bitnami/apache2/conf/server.crt.old sudo mv /opt/bitnami/apache2/conf/server.key /opt/bitnami/apache2/conf/server.key.old sudo ln -sf /etc/letsencrypt/live/DOMAIN/privkey.pem /opt/bitnami/apache2/conf/server.key sudo ln -sf /etc/letsencrypt/live/DOMAIN/fullchain.pem /opt/bitnami/apache2/conf/server.crt sudo /opt/bitnami/ctlscript.sh start
NGINX, approccio A
sudo /opt/bitnami/ctlscript.sh stop sudo mv /opt/bitnami/nginx/conf/bitnami/certs/server.crt /opt/bitnami/nginx/conf/bitnami/certs/server.crt.old sudo mv /opt/bitnami/nginx/conf/bitnami/certs/server.key /opt/bitnami/nginx/conf/bitnami/certs/server.key.old sudo ln -sf /etc/letsencrypt/live/DOMAIN/privkey.pem /opt/bitnami/nginx/conf/bitnami/certs/server.key sudo ln -sf /etc/letsencrypt/live/DOMAIN/fullchain.pem /opt/bitnami/nginx/conf/bitnami/certs/server.crt sudo /opt/bitnami/ctlscript.sh start
NGINX, approccio B
sudo /opt/bitnami/ctlscript.sh stop sudo mv /opt/bitnami/nginx/conf/server.crt /opt/bitnami/nginx/conf/server.crt.old sudo mv /opt/bitnami/nginx/conf/server.key /opt/bitnami/nginx/conf/server.key.old sudo ln -sf /etc/letsencrypt/live/DOMAIN/privkey.pem /opt/bitnami/nginx/conf/server.key sudo ln -sf /etc/letsencrypt/live/DOMAIN/fullchain.pem /opt/bitnami/nginx/conf/server.crt sudo /opt/bitnami/ctlscript.sh start
**Nota:**per i comandi precedenti, sostituisci DOMAIN con il tuo nome di dominio.
-
Configura il reindirizzamento HTTPS. Per ulteriori informazioni, consulta Forza il reindirizzamento HTTPS con Apache e Forza il reindirizzamento HTTPS con NGINX sul sito Web di Bitnami.

Contenuto pertinente
- AWS UFFICIALEAggiornata un anno fa
- AWS UFFICIALEAggiornata un anno fa
- AWS UFFICIALEAggiornata un anno fa
- AWS UFFICIALEAggiornata un anno fa