Submitted by glardone on
Una delle caratteristiche più attese dell'ultima versione di ISPConfig è certamente l'integrazione diretta per il rilascio dei certificati SSL gratuiti della Let's Encrypt: vediamo come integrare questa preziosa feature con ISPConfig 3.1 installato sulla distro Ubuntu 14.04 LTS.
1) Il primo passo è aggiungere il supporto per Let's Encrypt, installando il set di script ufficiali:
mkdir /opt/certbot
cd /opt/certbot
wget https://dl.eff.org/certbot-auto
chmod a+x ./certbot-auto
Ora eseguiamo il comando certbot-auto per scaricare e installare tutto il software necessario:
./certbot-auto
Se la vostra è una nuova installazione (e non avete ancora installato ISPConfig) quando lo script vi avviserà che non ha trovato nomi nei files di configurazione, rispondete "No", perché sarà poi ISPConfig ad effettuare tutte le configurazioni necessarie ad attivare i certificati SSL sui virtual host che attiverete.
Se invece state installando il supporto Let's Encrypt a posteriori, quando al termine dell'installazione vi chiederà per quale vhost creare un certificato SSL, rispondete con la "c" di Cancel e terminate lo script.
2) Ora dal pannello di amministrazione di ISPConfig sarà possibile attivare i certificati SSL Let's Encrypt semplicemente spuntando la check box dedicata.
Una particolarità molto interessante (e per nulla scontata) è che saranno inseriti nel certificato anche tutti gli alias configurati sul virtual host principale, evitando quindi i fastidiosi alert dei browser sui certificati non sicuri.
Se desiderate controllare quali certificati sono stati emessi, è sufficiente dare il seguente comando da terminale:
./certbot-auto certificates
Il set completo dei comandi disponibili lo trovate con questo altro comando:
./certbot-auto --help
3) Poiché i certificati SSL hanno una durata di 90 giorni, è opportuno schedulare il cron in modo tale verificare ed aggiornare i certificati da rinnovare:
sudo crontab -e
e aggiungiamo la seguente riga al fondo del file:
15 3 * * * /usr/bin/certbot renew --quiet; service apache2 reload
in questo modo ogni giorno alle ore 3:15 sarà lanciata la verifica sui certificati installati.
4) Nel caso lo si desideri è anche possibile installare un certificato SSL per il portale di amministrazione dell'ISPConfig.
Fermiamo il server web:
service apache2 stop
Sempre da terminale:
cd /opt/certbot/
./certbot-auto certonly
selzioniamo l'opzione "2: Spin up a temporary webserver (standalone)"
e inseriamo il nome del server che desideriamo certificare, ad esempio:
srv1.mycompany.com
Ora effettuiamo il backup dei certificati self signed pre-esistenti:
mkdir /usr/local/ispconfig/interface/ssl/originales
mv /usr/local/ispconfig/interface/ssl/isp* /usr/local/ispconfig/interface/ssl/originales
e creiamo i link ai nuovi certificati letsencrypt appena creati:
ln -s /etc/letsencrypt/live/srv1.mycompany.com/fullchain.pem /usr/local/ispconfig/interface/ssl/ispserver.crt
ln -s /etc/letsencrypt/live/srv1.mycompany.com/privkey.pem /usr/local/ispconfig/interface/ssl/ispserver.key
Quindi riavviare il server web:
service apache2 start