doc:appunti:linux:sa:openvpn
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
doc:appunti:linux:sa:openvpn [2018/01/01 06:58] – [Configurazione del client] niccolo | doc:appunti:linux:sa:openvpn [2020/02/24 17:59] (current) – niccolo | ||
---|---|---|---|
Line 32: | Line 32: | ||
* **'' | * **'' | ||
- | * **'' | + | * **'' |
* **'' | * **'' | ||
* **'' | * **'' | ||
Line 84: | Line 84: | ||
# File containing Diffie Hellman parameters in .pem format | # File containing Diffie Hellman parameters in .pem format | ||
# Diffie Hellman parameters may be considered public. | # Diffie Hellman parameters may be considered public. | ||
- | # Generated by: openssl dhparam -out ssl/ | + | # Generated by: openssl dhparam -out ssl/ |
- | dh ssl/ | + | dh ssl/ |
# Certificate Authority (CA) file in .pem format. | # Certificate Authority (CA) file in .pem format. | ||
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 277: | Line 279: | ||
===== Rinnovo del certificato del server ===== | ===== 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.1514786320.txt.gz · Last modified: 2018/01/01 06:58 by niccolo