doc:appunti:linux:sa:openvpn
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
doc:appunti:linux:sa:openvpn [2017/02/01 10:50] – [Revoca di una chiave] niccolo | doc:appunti:linux:sa:openvpn [2018/11/29 23:12] – [Configurazione del server] niccolo | ||
---|---|---|---|
Line 139: | Line 139: | ||
push "route 10.38.0.1" | push "route 10.38.0.1" | ||
push " | push " | ||
- | ifconfig-pool 10.38.0.4 10.38.255.251 | + | ifconfig-pool 10.38.0.4 10.38.99.251 |
# | # | ||
# To simplify the above configuration you can use the helper directive | # To simplify the above configuration you can use the helper directive | ||
Line 161: | Line 161: | ||
</ | </ | ||
- | Si può fare il push dal server | + | Si può fare il push verso il client di parametri |
< | < | ||
- | ifconfig-push | + | ifconfig-push |
</ | </ | ||
+ | |||
+ | Notare che l' | ||
I file gestiti da openssl sono in formato **PEM** ([[wp> | I file gestiti da openssl sono in formato **PEM** ([[wp> | ||
Line 194: | Line 196: | ||
</ | </ | ||
- | ===== Revoca di una chiave ===== | + | ===== Revoca di un certificato client (chiave) ===== |
Qualora si voglia impedire l' | Qualora si voglia impedire l' | ||
Line 200: | Line 202: | ||
< | < | ||
openssl ca -config ssl/ | openssl ca -config ssl/ | ||
- | -keyfile ssl/ | + | |
-revoke niccolo@rigacci.org_cert.pem | -revoke niccolo@rigacci.org_cert.pem | ||
</ | </ | ||
Line 210: | Line 212: | ||
< | < | ||
openssl ca -config ssl/ | openssl ca -config ssl/ | ||
- | -keyfile | + | -cert ssl/rigacciorg_cacert.pem -keyfile |
-gencrl -out ssl/ | -gencrl -out ssl/ | ||
</ | </ | ||
Line 275: | Line 277: | ||
</ | </ | ||
+ | ===== Rinnovo del certificato del server ===== | ||
+ | |||
+ | Quando **scade il certificato del server smettono di funzionare TUTTE le VPN**. Per fortuna è sufficiente rinnovare tale certificato e **non è necessario distribuirlo** su tutti i client. La procedura che segue genera una nuova chiave e un nuovo certificato firmato dalla stessa CA locale. | ||
+ | |||
+ | Il discorso è diverso quando **scade il certificato della CA** locale, in questo caso per ripristinare il funzionamento delle VPN senza distribuire il nuovo CA cert è necessario utilizzare un trucco: generare un nuovo CA cert, ma riutilizzando la vecchia chiave . La soluzione (da verificare) è descritta nel post [[ https:// | ||
+ | |||
+ | **ATTENZIONE** ai nomi dei file, che sono **diversi rispetto agli esempi riportati sopra**; tutto è stato eseguito nella directory **/ | ||
+ | |||
+ | Anzitutto si deve **revocare il vecchio certificato**, | ||
+ | |||
+ | < | ||
+ | failed to update database | ||
+ | TXT_DB error number 2 | ||
+ | </ | ||
+ | |||
+ | infatti il nuovo certificato avrà lo stesso nome del vecchio. Dopo aver revocato un certificato si deve sempre rigenerare la CRL lista dei certificati revocati. **ATTENZIONE** a individuare il corretto certificato! Nel nostro esempio è **00.pem**, ma si deve verificare il file **index.txt** e i file nella directory **newcerts/ | ||
+ | |||
+ | < | ||
+ | # Revoke old certificate. | ||
+ | openssl ca -config openssl.cnf -keyfile private/ | ||
+ | -cert vpn.rigacci.org_cacert.pem -revoke newcerts/ | ||
+ | # Generate the new CRL. | ||
+ | openssl ca -config openssl.cnf -gencrl -keyfile private/ | ||
+ | -cert vpn.rigacci.org_cacert.pem -out vpn.rigacci.org_crl.pem | ||
+ | </ | ||
+ | |||
+ | Alla richiesta di **A challenge password** e **An optional company name** si è lasciata una risposta vuota. | ||
+ | |||
+ | Il vecchio certificato può essere salvato o rimosso: | ||
+ | |||
+ | < | ||
+ | mv private/ | ||
+ | mv vpn.rigacci.org_cert.pem vpn.rigacci.org_cert.pem.expired | ||
+ | </ | ||
+ | |||
+ | Ecco quindi la **generazione del nuovo certificato** con la relativa richiesta di firma CSR, seguita dalla **firma da parte della CA**: | ||
+ | |||
+ | < | ||
+ | openssl req -config openssl.cnf -nodes -new \ | ||
+ | | ||
+ | chmod 0600 private/ | ||
+ | openssl ca -config openssl.cnf -in vpn.rigacci.org_csr.pem -cert vpn.rigacci.org_cacert.pem \ | ||
+ | -keyfile private/ | ||
+ | rm vpn.rigacci.org_csr.pem | ||
+ | </ |
doc/appunti/linux/sa/openvpn.txt · Last modified: 2020/02/24 17:59 by niccolo