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.

Se desideri installare Let's Encrypt su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.

Connessione al Server

Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:

ssh [email protected]_DEL_SERVER

Successivamente sarà necessario inserire la password dell'utente root.

Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:

ssh [email protected]_DEL_SERVER

Successivamente vi verrà chiesto di inserire la password del vostro utente.

La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:

ssh [email protected]_DEL_SERVER -p PORTA

Siete ora connessi al vostro server, siete pronti per iniziare l'installazione di Let's Encrypt su Ubuntu 20.04 LTS Focal Fossa.

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 20.04 LTS.

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 update

sudo apt-get update

Installare le dipendenze necessarie:

sudo apt-get install software-properties-common

Verificare la presenza del repository universe:

sudo add-apt-repository universe

Aggiornare nuovamente la lista dei pacchetti disponibili:

sudo apt update

Installare Certbot per Apache

Eseguire questo comando dalla riga di comando per installare Certbot:

sudo apt-get install certbot python3-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 SSL, 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

Il comando per rinnovare Certbot è installato in uno dei seguenti percorsi:

  • /etc/crontab/
  • /etc/cron.*/*
  • systemctl list-timers

Per confermare che Certbot è stato installato correttamente, visita il tuo sito web https://TUO_DOMINIO.com/ nel tuo browser e cerca l'icona del lucchetto nella barra degli URL.

Conclusione

L'installazione di Let's Encrypt per Apache su Ubuntu 20.04 LTS Focal Fossa utilizzando Certbot è terminata.