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 root@IP_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 nome_utente@IP_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 nome_utente@IP_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.