In questo scenario abbiamo un sito web ed un certificato Let’s Encrypt ottenuto con certbot per il dominio mydomain.com e dobbiamo ora aggiungere anche la gestione del certificato per www.mydomain.com
Opzione 1: Usare il plugin webroot
Avendo già un sito in esecuzione, possiamo usare il plugin webroot. In questo modo Certbot scrive un file temporaneo nella cartella del nostro sito e il server web esistente risponde alla challenge.
Lanciamo quindi il seguente comando:
sudo certbot certonly --webroot -w /var/www/html/ -d mydomain.com -d www.mydomain.com
-w /var/www/html → percorso della root del sito (da sostituire con quello corretto)
-d mydomain.com -d www.mydomain.com → domini per cui generare il certificato
Questo comando non richiede di fermare il webserver.
Opzione 2: Fermare temporaneamente il server
Alternativamente possiamo utilizzare il flag standalone, ma dobbiamo temporaneamente fermare il server che sta in ascolta sulla porta 80:
sudo systemctl stop nginx # se usi Nginx
sudo systemctl stop apache2 # se usi Apache
A questo punto lanciamo il comando
sudo certbot certonly --standalone -d mydomain.com -d www.mydomain.com
Certbot proverà a creare temporaneamente un server web sulla porta 80 per verificare il dominio
Opzione 3: Usare il plugin di Certbot specifico per Nginx/Apache
Volendo, Certbot può modificare direttamente la configurazione del server web e fare il redirect HTTPS automaticamente:
- Per Nginx:
sudo certbot --nginx -d mydomain.com -d www.mydomain.com
- Per Apache:
sudo certbot --apache -d mydomain.com -d www.mydomain.com