Cos’è Lets’s Encrypt….

Let’s Encrypt è una (CA) Autorità di Certificazione che rilascia certificati SSL per siti internet in maniera gratuita e con una validità di 90 giorni, rinnovabili di volta in volta gratuitamente.
Rispetto ai tradizionali Certificati acquistabili comunemente online, ad esempio: Domain, i Certificati SSL rilasciati da Let’s Encrypt, in quanto gratuiti, non hanno una garanzia di tutela nel caso in cui una terza persona (man in the middle) riesca a sabotare tale connessione.

Let’s Encrytp è installabile sia su ambienti Windows che su ambienti Linux, ma le procedure automatiche di installazione esistono solo per ambienti Linux (Debian, Ubuntu, Centos..), pertanto in questa guida impareremo come installare e fare interagire in modo automatico il certificato in un Server Ubuntu 18.04 con installato un WebServer Nginx.

Acquisto dominio e noleggio di una VPS

Per prima cosa bisognerà acquistare un dominio, es. www.omarbaruzzo.it (se non sapete dove procedere all’acquisto, cliccate QUI). Nel caso non disponiate già di un vostro Server, il passaggio successivo sarà quello di noleggiare una VPS (Virtual Private Server) dove poter alloggiare il vostro Sito Internet. Se desiderate noleggiare una VPS ad ottimo prezzo, vi consiglio di visitare questo Provider

Configurazione di Nginx su Porta 80

Supponendo che il sito internet alloggiato nella VPS appena noleggiata abbia questo percorso interno: /opt/myWebsite/index.html, La prima operazione da eseguire sarà quella di configurare il Web Server Nginx eseguendo questi comandi:

sudo nano /etc/nginx/conf.d/myWebsite.nginx.conf

Con l’editor aperto (nano) inseriremo il seguente file di configurazione:

server {
listen 80;
server_name www.mywebsite.it mywebsite.it;
location / {
root /opt/myWebsite/;
index index.htm;
}
}

Una volta editata la configurazione del sito nell’nginx si dovrà riavviare il WebServer con il seguente comando:

sudo service nginx restart

Dopo aver riavviato il Web Server si potrà testare tramite un browser se il sito internet è visibile in rete inserendo nella barra degli indirizzi: www.mywebsite.it

Installazione Certbot

Per installare Certbot Let’s Encrypt editare i seguenti comandi:

sudo apt-get update
sudo apt-get install software-properties-common 
sudo add-apt-repository ppa:certbot/certbot 
   - Premere [ENTER] alla richiesta
sudo apt-get update 
sudo apt-get install python-certbot-nginx

Installato il pacchetto python-certbot-nginx, si potrà proseguire assegnando il certificato SSL al sito mywebsite.it con il seguente comado:

sudo certbot --nginx

essendo la prima installazione, verrà richiesto:
– una mail
– il consenso a procedere (A e Y)

come da figura sottostante

Una volta date tutte le conferme Certbot vi mostrerà l’elenco dei siti da proteggere; In questo caso:
– mywebsite.it
– www.mywebsite.it

Si dovrà selezionare entrambi i domini.
Creato il certificato, Certbot chiederà di scegliere una delle 2 opzioni seguenti:
1) No redirect
2) Redirect

E’ fortemente consigliata l’opzione 2 in quanto servirà a dirottare tutte le chiamate da http (80) su https (443).

Inserendo ora sulla barra degli indirizzi di un qualsiasi browser www.mywebsite.it, la chiamata verrà dirottata automaticamente a https://www.mywebsite.it