Introduzione

Let's Encrypt è una certification authority (CA) che automatizza gratuitamente la creazione, la validazione, il rilascio ed il rinnovo di certificati X.509 per il protocollo TLS / SSL, abilitando l'HTTPS crittografato sui server Web.

In questo tutorial, si utilizzerà Certbot per ottenere un certificato SSL gratuito per Apache su Ubuntu e per impostare il certificato per il rinnovo automatico.

Certbot è un client automatico di facile utilizzo che recupera e distribuisce i certificati SSL / TLS per il server web.

Prerequisiti

Prima di iniziare con questa guida, dovresti avere un utente non root con i privilegi sudo impostati sul tuo server. Segui questa guida: Configurazione Iniziale su Ubuntu 16.04-17.10

Installare Certbot

Il primo passo per utilizzare Let's Encrypt per ottenere un certificato SSL è installare il software Certbot sul tuo server.

Aggiorniamo l'elenco dei pacchetti:
sudo apt-get update

Installiamo il seguente pacchetto che permette di gestire facilmente le sorgenti software dei produttori di software indipendenti:
sudo apt-get install software-properties-common

Aggiungiamo il repository ufficiale di Cerbot per ottenere i pacchetti più aggiornati:
sudo add-apt-repository ppa:certbot/certbot

Avrai bisogno di premere INVIO per accettare.

Aggiorniamo nuovamente l'elenco dei pacchetti:
sudo apt-get update

E infine, installiamo il pacchetto Certbot per Apache:
sudo apt-get install python-certbot-apache

Certbot è ora pronto per l'uso.

Configurazione Firewall (ufw)

Se il firewall ufw è abilitato è necessario creare una nuova regola per consentire il traffico HTTPS.

Per verificare se il firewall è attivo dare questo comando:
sudo ufw status

Per consentire il traffico HTTPS per Apache:
sudo ufw allow 'Apache Full'

Ottenere un certificato SSL

Certbot utilizza il plugin di Apache per ottenere certificati SSL.
sudo certbot --apache

L'esecuzione di questo comando ti permetterà di ottenere un certificato SSL e Certbot modificherà automaticamente la configurazione di Apache.

Altrimenti potresti ottenere il certificato e successivamente configurare manualmente Apache con il seguente comando:
sudo certbot --apache certonly

Rinnovo automatico

I pacchetti Certbot sono dotati di un cron job che rinnoverà automaticamente i tuoi certificati prima che scadano. Poiché i certificati Let's Encrypt durano per 90 giorni, è altamente consigliato sfruttare questa funzionalità. È possibile verificare il rinnovo automatico dei certificati eseguendo questo comando:
sudo certbot renew --dry-run

L'installazione di Let's Encrypt utilizzando Certbot è terminata.