Certbot: differenze tra le versioni

nessun oggetto della modifica
Nessun oggetto della modifica
Riga 15: Riga 15:
<pre># a2enmod headers ssl</pre>
<pre># a2enmod headers ssl</pre>


== Premessa ==
== Esempi ==
Nel seguito di questa sezione si faranno le seguenti ipotesi:
 
=== Apache ===
 
==== Ipotesi ====
Nel seguito si faranno le seguenti ipotesi:
* l'utente ha le porte standard, ovvero '''80''' e '''443''', aperte anche in ingresso. In caso contrario molti degli automatismi dello strumento andrebbero persi e la procedura standard non sarebbe più applicabile. Da notare che i propri virtualhost possono usare qualsiasi porta, ovvero non sono obbligati ad usare le porte standard, è semplicemente <code>certbot</code> che richiede che dette porte siano aperte per funzionare correttamente;
* l'utente ha le porte standard, ovvero '''80''' e '''443''', aperte anche in ingresso. In caso contrario molti degli automatismi dello strumento andrebbero persi e la procedura standard non sarebbe più applicabile. Da notare che i propri virtualhost possono usare qualsiasi porta, ovvero non sono obbligati ad usare le porte standard, è semplicemente <code>certbot</code> che richiede che dette porte siano aperte per funzionare correttamente;
* l'utente ha già configurato il proprio eventuale firewall di rete in modo da reindirizzare correttamente le succitate porte.
* l'utente ha già configurato il proprio eventuale firewall di rete in modo da reindirizzare correttamente le succitate porte.
Riga 22: Riga 26:
* l'utente non è interessato ad ottenere ''wild certificates'', cioè un certificato che copra tutti i possibili sottodomini (tipo ''*.mio_dominio.abc'').
* l'utente non è interessato ad ottenere ''wild certificates'', cioè un certificato che copra tutti i possibili sottodomini (tipo ''*.mio_dominio.abc'').


== Scaricamento certificato e sua installazione ==
==== Scaricamento certificato e sua installazione ====
Dato il dominio <code>mio_dominio.abc</code> ed una lista di suoi sottodomini è possibile scaricare ed installare un certificato che li includa tutti digitando un comando del tipo
Dato il dominio <code>mio_dominio.abc</code> ed una lista di suoi sottodomini è possibile scaricare ed installare un certificato che li includa tutti digitando un comando del tipo
<pre># certbot --apache -d ind1.mio_dominio.abc,ind2.mio_dominio.abc,ind3.mio_dominio.abc,ecc.</pre>
<pre># certbot --apache -d ind1.mio_dominio.abc,ind2.mio_dominio.abc,ind3.mio_dominio.abc,ecc.</pre>
Riga 29: Riga 33:
Nel caso di singolo dominio e riprendendo l'esempio fatto precedentemente il comando diviene
Nel caso di singolo dominio e riprendendo l'esempio fatto precedentemente il comando diviene
<pre># certbot --apache -d ind1.mio_dominio.abc</pre>
<pre># certbot --apache -d ind1.mio_dominio.abc</pre>
{{Cautionbox|La procedura guidata descritta di seguito potrebbe cambiare nel tempo.}}
Lo strumento proporrà innanzitutto tre domande
Lo strumento proporrà innanzitutto tre domande
<pre>
<pre>
Riga 141: Riga 148:
==== Rinnovo dei certificati ====
==== Rinnovo dei certificati ====


Certbot permette di rinnovare in automatico tutti i propri certificati con il comando <code>certbot renew</code>. Per testare subito che il predetto comando funzioni è possibile usare l'opzione <code>--dry-run</code>, ovvero:
Certbot permette di rinnovare in automatico tutti i propri certificati con il comando <code>certbot renew</code>, tuttavia è molto probabile che durante lo scaricamento ed installazione dei certificati <code>certbot</code> stesso si sia già preoccupato di creare un'attività programmata per il rinnovo dei certificati.<br/>
Per verificare se detta attività è stata effettivamente pianificata digitare:
<pre># systemctl list-timers</pre>
e verificare che sotto la colonna <code>UNIT</code> compaia una riga con scritto <code>certbot.timer</code>. Se presente non è necessario impostare manualmente alcuna attività di rinnovo, viceversa sarà possibile automatizzare il processo di rinnovo inserendo in [[Utilizzo del servizio di scheduling Cron | crontab]] il comando <code>certbot renew -q</code>, dove l'opzione <code>-q</code> permette di sopprimere l'output del comando, fatta eccezione il caso di eventuali errori.
 
{{Box|Nota|Il comando <code>renew</code> non innesca automaticamente il rinnovo dei certificati, infatti questi saranno effettivamente rinnovati '''solo quando prossimi alla scadenza'''.<br>
 
Per esempio volendo ripetere la verifica ogni 10 del mese alla 1:30 la riga da inserire in [[Utilizzo del servizio di scheduling Cron | crontab]] sarebbe:
<pre>30 1 10 * * /usr/bin/certbot renew -q</pre>
 
È comunque caldamente consigliato testare subito che il comando <code>renew</code> funzioni specificando l'opzione <code>--dry-run</code>, ovvero:
<pre># certbot renew --dry-run</pre>
<pre># certbot renew --dry-run</pre>
che in caso di successo dovrebbe restituire qualcosa di simile a:
che in caso di successo dovrebbe restituire qualcosa di simile a:
Riga 180: Riga 197:
   making regular backups of this folder is ideal.
   making regular backups of this folder is ideal.
</pre>
</pre>
A questo punto è possibile automatizzare il processo di rinnovo inserendo in [[Utilizzo del servizio di scheduling Cron | crontab]] il comando <code>certbot renew -q</code>, visto che i certificati '''NON''' saranno rinnovati a meno che non siano prossimi alla scadenza (l'opzione <code>-q</code> permette di sopprimere l'output del comando, fatta eccezione per eventuali errori).<br>
Per esempio volendo ripetere la verifica ogni 10 del mese alla 1:30 la riga da inserire in [[Utilizzo del servizio di scheduling Cron | crontab]] sarebbe:
<pre>30 1 10 * * /usr/bin/certbot renew -q</pre>


== Errori ==
==== Errori ====


=== Apache non raggiungibile ===
===== Apache non raggiungibile =====


Se per una qualsiasi ragione il proprio webserver non risultasse raggiungibile dall'esterno la pocedurà fallirà mostrando qualcosa di simile a quanto segue:
Se per una qualsiasi ragione il proprio webserver non risultasse raggiungibile dall'esterno la pocedurà fallirà mostrando qualcosa di simile a quanto segue:
3 155

contributi