Come ottenere e gestire certificati SSL/TLS con Certbot e il protocollo ACME
stima del tempo di lettura - minuti: 1, secondi: 43
Passo 1: richiesta di un account ACME
Invia un'email a per richiedere un account ACME.
Nel corpo dell'email, fornisci i seguenti dettagli:
- Nome cognome (se non deducibile dal campo "From" della mail).
- Lista dei nomi a dominio per i quali desideri ottenere certificati SSL/TLS.
Riceverai un'email di risposta con i parametri necessari per la configurazione di Certbot (ACME URL, KEY ID, e HMAC KEY).
Passo 2: installazione di Certbot
- Seleziona i campi Software e System nella sezione Instructions del sito ufficiale di Certbot.
- Segui la guida dettagliata per l’installazione di Certbot.
Se il tuo sistema operativo non è presente nel menu a tendina System, consigliamo l'installazione via Pip.
Passo 3: registrazione del client Certbot
Registra il client Certbot utilizzando i parametri ricevuti nella risposta all'email:
certbot register --email <contact1@email.example>[,contact2@email.example,...,contactN@email.example] \
--server <ACME URL> --eab-kid <KEY ID> --eab-hmac-key <HMAC KEY> --no-eff-email --agree-tos
Passo 4: richiesta del certificato
Ecco un esempio per effettuare una richiesta "generica" di un certificato:
certbot certonly --standalone --email <contact1@email.example>[,contact2@email.example,...,contactN@email.example] \
--server <ACME URL> --domain <FQDN-1>[,FQDN-2,...,FQDN-N] --key-type rsa --rsa-key-size 4096 --cert-name <FRIENDLY-NAME>
Ecco un esempio per richiedere ed installare automaticamente un certificato per il web server Apache:
certbot run --apache --email <contact1@email.example>[,contact2@email.example,...,contactN@email.example] \
--server <ACME URL> --domain <FQDN-1>[,FQDN-2,...,FQDN-N] --key-type rsa --rsa-key-size 4096 --cert-name <FRIENDLY-NAME>
Tutti i certificati creati vengono salvati in /etc/letsencrypt/archive/<FRIENDLY-NAME> e linkati simbolicamente in /etc/letsencrypt/live/<FRIENDLY-NAME>. Le chiavi private sono salvate come privkey.pem.
Passo 5: setup del rinnovo automatico (se installato via Pip)
Il seguente comando permette di schedulare via crontab il rinnovo automatico:
echo "0 0,12 * * * root sleep \$(shuf -i1-3600 -n1) && certbot renew -q" | sudo tee -a /etc/crontab > /dev/null
Maggiori dettagli sono disponibili su questa pagina.