OpenVPN Rinnovo e Verifica Certificato

OpenVPN Rinnovo e Verifica Certificato

L’articolo OpenVPN Rinnovo e Verifica Certificato ha lo scopo di presentare una soluzione per la gestione dei certificati utilizzati da  OpenVPN© per l’attivazione di connessioni VPN. OpenVPN© è uno dei più diffusi software per la creazione di tunnel VPN per connessioni remote sicure. Smartworking o telelavoro sono ormai diventate modalità di lavoro ampiamente diffuse e OpenVPN© è uno strumento che permette di implementarle e supportarle in maniera sicura e veloce.

Generalmente OpenVPN© ha come impostazioni di default la porta di ascolto 1194/UDP e la scadenza dei certificati (client, server e CA) impostata a 3650 giorni, cioè 10 anni. OpenVPN Rinnovo e Verifica Certificato descrive le principali operazioni da effettuare.

Per verificare la scadenza di un certificato, per esempio della CA possiamo usare il comando:

  • #openssl x509 -in ca.crt -text -noout | grep After

oppure per verificare la scadenza di un certificato, per esempio del server possiamo usare il comando:

  • #openssl x509 -in server.crt -text -noout | grep After

il risultato sarà del tipo:

  • Not After : Sep 13 13:48:00 2029 GMT

che indica la data di termine validità del cerificato in questione.

Scopo di questo breve articolo è quello di illustrare come rinnovare o creare certificati con durata diversa dallo standard.  Per modificare la durata dei certificati è possibile agire in due modi:

  • Attraverso il file di configurazione vars presente in /etc/openvpn. Questo file valorizza i vari parametri utilizzati dagli script di generazione dei certificati. In particolare i parametri coinvolti sono:
    • export CA_EXPIRE=3650
    • export KEY_EXPIRE=3650
      entrambi i valori possono essere modificati secondo l’esigenza.
      Dopo aver modificato i valori contenuti nel file vars, per generare un certificato si utilizzano i seguenti comandi:
    • #. vars o #source vars
      #./buid-key-server <NOME>
      in caso di rinnovo è necessario specificare un <NOME> diverso da quello per evitare  l’errore di update database.
  • DIrettamente in fase di rinnovo con il comando:
    • openssl x509 -in ca.crt -days 36500 -out ca.crt.new -signkey ca.key
      specificando esplicitamente il numero di giorni ad es. 10 anni