Come Installare un certificato Let’s Encrypt via Certbot e gestire le scadenze in automatico
In questo articolo farò vedere come installare dei certificati ssl validi e gratuiti usando Let’s Encrypt. La procedura che spiegherò consentirà l’aggiornamento dei certificati in automatico onde evitare che alla scadenza degli stessi la vostra applicazione possa avere dei problemi. Per ottenere il risultato dovremmo installare due strumenti certbot e snap.
A titolo informativo ricordo che Snap è un gestore di pacchetti ideato da Canonical Ltd. nonché un formato di pacchetti software inizialmente ideato solo per Ubuntu, ma è adottato anche da altre distribuzioni tra cui la Centos, mentre certbot e il gestore dei certificati per Let’s Encrypt. Snap è disponibile per CentOS 8 e CentOS 7, a partire dalla versione 7.6 ed è anche disponibile per Red Hat Enterprise Linux (RHEL) 7.6+ e Ubuntu.
Installazione di snap
Per installare snapd sarà sufficiente eseguire:
$ sudo yum install snapd
Una volta installato, sarà necessario attivare via systemd la unit che gestisce la comunicazione socket principale per snap e per farlo basterà eseguire:
$ sudo systemctl enable --now snapd.socket
Fatto ciò creiamo il link simbolico /var/lib/snapd/snap and /snap:
$ sudo ln -s /var/lib/snapd/snap /snap
Qualora snap fosse già presente sul vostro sistema assicuratevi che sia aggiornato all’ultima versione eseguendo il seguente comando:
sudo snap install core; sudo snap refresh core
A questo punto se tutto è andato per il verso giusto possiamo passare all’installazione di certbot. Per prima cosa assicuratevi di non avere vecchie versione di certbot installate e rimuovete tutte quelle presenti eseguendo uno dei seguenti comandi.
sudo apt-get remove certbot
oppure
sudo dnf remove certbot
oppure
sudo yum remove certbot
Dopo aver eseguito l’operazione di ripulitura sarà possibile installare certbot eseguendo il seguente comando:
sudo snap install --classic certbot
e sarà necessario creare il link simbolico seguente:
sudo ln -s /snap/bin/certbot /usr/bin/certbot
Per installare i certificati sarà possibile scegliere tra due vie:
Sarà possibile eseguire il seguente comando per consentire a certbot di installare e configurare automaticamente i certificati necessari per nginx.
sudo certbot --nginx
oppure se si volesse gestire le configurazioni manualmente, sarà sufficiente eseguire:
sudo certbot certonly --nginx
Il sistema così configurato aggiornerà in automatico i certificati e per verificare il loro stato sarà possibile eseguire il comando
sudo certbot renew --dry-run
Il comando per l’aggiornamento dei certificati sarà periodicamente eseguito o dal crontab o da un timer configurato via systemd. Per verificare lo stato della configurazione potete controllare i seguenti path:
-
- /etc/crontab/
- /etc/cron.*/*
- systemctl list-timers
Sono amante della tecnologia e delle tante sfumature del mondo IT, ho partecipato, sin dai primi anni di università ad importanti progetti in ambito Internet proseguendo, negli anni, allo startup, sviluppo e direzione di diverse aziende; Nei primi anni di carriera ho lavorato come consulente nel mondo dell’IT italiano, partecipando attivamente a progetti nazionali ed internazionali per realtà quali Ericsson, Telecom, Tin.it, Accenture, Tiscali, CNR. Dal 2010 mi occupo di startup mediante una delle mie società techintouch S.r.l che grazie alla collaborazione con la Digital Magics SpA, di cui sono Partner la Campania, mi occupo di supportare ed accelerare aziende del territorio .
Attualmente ricopro le cariche di :
– CTO MareGroup
– CTO Innoida
– Co-CEO in Techintouch s.r.l.
– Board member in StepFund GP SA
Manager ed imprenditore dal 2000 sono stato,
CEO e founder di Eclettica S.r.l. , Società specializzata in sviluppo software e System Integration
Partner per la Campania di Digital Magics S.p.A.
CTO e co-founder di Nexsoft S.p.A, società specializzata nella Consulenza di Servizi in ambito Informatico e sviluppo di soluzioni di System Integration, CTO della ITsys S.r.l. Società specializzata nella gestione di sistemi IT per la quale ho partecipato attivamente alla fase di startup.
Sognatore da sempre, curioso di novità ed alla ricerca di “nuovi mondi da esplorare“.
Comments