Come generare Let's Encrypt SSL utilizzando Certbot

2 dic 2022 3 min di lettura
Come generare Let's Encrypt SSL utilizzando Certbot
Indice dei contenuti

Introduzione

Let's Encrypt è un'autorità di certificazione gratuita, automatizzata e aperta: ti consente di creare e installare certificati TLS gratuiti nel tuo server Web con alcuni argomenti della riga di comando. Con Let's Encrypt, puoi fornire HTTPS sul tuo sito Web per ogni utente senza spendere soldi o preoccuparti delle date di rinnovo.

Il Certbot fornisce un modo semplice per generare certificati gratuiti Let's Encrypt per tutti i siti Web che supportano HTTP e servono i loro contenuti su HTTPS. In questo articolo vedremo come utilizzare Certbot per automatizzare il processo di generazione dei certificati Let's Encrypt.

Installare Certbot

La maggior parte dei sistemi Linux ha il pacchetto certbot nei repository di pacchetti predefiniti. Certbot è uno strumento per ottenere certificati da Let's Encrypt e configurarli sul tuo server web. Il pacchetto Snap è il modo più semplice per installare il certbot sul sistema Ubuntu.

Apri un terminale ed esegui il comando seguente per installare certbot:

sudo snap install --classic certbot 

Una volta che una nuova versione di certbot sarà disponibile, Snap aggiornerà automaticamente il pacchetto.

Generare il certificato SSL con Certbot

Ora puoi richiedere certificati SSL da Let's encrypt in base al server web. Abbiamo discusso 4 metodi per ottenere un nuovo certificato SSL, che dipendono dal server web in esecuzione sul tuo sistema. Potrebbe essere che non ci sia un server web in esecuzione sul sistema.

Quindi scegli il metodo corretto in base all'ambiente:

Nessun server Web in esecuzione

Nel caso, non hai alcun server web in esecuzione sul tuo sistema. Puoi --standalone scegliere di completare la convalida del dominio indicando un server Web fittizio. Questa opzione deve essere collegata alla porta 80 per eseguire la convalida del dominio.

sudo certbot certonly --standalone 

Se stai eseguendo il certbot per la prima volta, ti verrà chiesto di accettare i termini e di fornire un indirizzo email per l'invio delle notifiche.

Puoi anche fornire gli input dalla riga di comando, ad esempio:

sudo certbot certonly --standalone -d example.com --staple-ocsp -m [email protected] --agree-tos  

Certbot con Apache

I sistemi che eseguono il server Web Apache eseguono il seguente comando. Questo elencherà tutti i domini/sottodomini configurati sul tuo server web. Selezionare i numeri appropriati per richiedere un certificato.

sudo certbot --apache 

Questo leggerà i file di configurazione di Apache ed elencherà tutti i nomi di dominio configurati. Inserisci il numero del dominio a cui vuoi rilasciare un certificato. È possibile inserire più numeri separati da virgola.

Una volta verificata la proprietà del dominio, verrà emesso il certificato e creato il file di configurazione di Apache con le impostazioni SSL.

Certbot con Nginx

Per i sistemi che eseguono il server Web Nginx, utilizzare il comando seguente per richiedere i certificati SSL.

sudo certbot --nginx -d example.com -d www.example.com 

Alcuni altri server Web in esecuzione

Per il sistema con altri server Web in esecuzione tranne Apache o Nginx. Quindi puoi ottenere solo il certificato e configurarli manualmente.

Questo comando ti chiederà il nome di dominio e la radice del documento per il dominio.

sudo certbot certonly --webroot 

Puoi anche passare il nome di dominio e/o la radice del documento sulla riga di comando.

sudo certbot certonly --webroot -w /var/www/html -d example.com -d www.example.com 

Durante l'utilizzo dei comandi precedenti, il dominio deve essere indirizzato al server in DNS. Inoltre, assicurati che /.well-known/acme-challenge sia servito dal server web.

Visualizzare i file del certificato

Una volta emesso un certificato dall'autorità Lets Encrypt. Tutti i file del certificato vengono creati nella directory /etc/letsencrypt . Se il tuo nome di dominio è example.com, i file verranno creati nella posizione seguente.

ls -l /etc/letsencrypt/live/example.com/ 
-rw-r--r-- 1 root root 692 Mar  9 06:59 README
lrwxrwxrwx 1 root root  37 Sep  6 09:56 cert.pem -> ../../archive/example.com/cert1.pem
lrwxrwxrwx 1 root root  38 Sep  6 09:56 chain.pem -> ../../archive/example.com/chain1.pem
lrwxrwxrwx 1 root root  42 Sep  6 09:56 fullchain.pem -> ../../archive/example.com/fullchain1.pem
lrwxrwxrwx 1 root root  40 Sep  6 09:56 privkey.pem -> ../../archive/example.com/privkey1.pem

Cambia example.com con il tuo nome di dominio per ottenere i file corretti.

Conclusione

Let's Encrypt è un'autorità di certificazione che fornisce certificati SSL gratuiti per i siti Web pubblici. Possiamo emettere certificati per qualsiasi numero di domini. I certificati SSL vengono emessi solo per 3 mesi, poi è necessario rinnovarli. Certbot è un'utilità della riga di comando che aiuta a gestire i certificati SSL Let's Encrypt. Con l'aiuto di certbot possiamo emettere un nuovo certificato, rinnovarlo ed eliminarlo.

Spero che questo tutorial ti aiuti a lavorare con Certbot per la gestione del certificato SSL sul tuo sistema.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.