Certificato OpenVPN scaduto? Controllate prima l’orologio, poi il certificato
Un orologio sbagliato può far sembrare scaduto un certificato valido. Leggete l’errore TLS esatto, trovate il certificato che fallisce e rinnovatelo tramite l’emittente.
Il client si connette, negozia per un secondo e poi segnala che un certificato è scaduto. Prima di chiedere a qualcuno di riemettere qualcosa, guardate la data del dispositivo davanti a voi: un portatile rimasto sospeso per un mese, un telefono con orologio manuale e un router senza una fonte NTP funzionante riportano tutti al momento sbagliato a uno stack TLS. Un certificato è valido solo dentro una finestra, e il controllo confronta quella finestra con ciò che afferma l’orologio locale. Mettete a posto l’orologio, poi decidete se il problema è reale.
Iniziate dall’orologio del dispositivo
Aprite un terminale e leggete l’idea che il sistema ha dell’UTC, non il widget dell’orologio del desktop, che può mostrare una vista regolata sul fuso orario o un valore obsoleto memorizzato nella cache dall’interfaccia grafica.
date -u
timedatectl statusUn orologio molto avanti fa sembrare scaduto un certificato valido, e uno molto indietro lo fa sembrare non ancora valido, cosa che alcuni client segnalano con lo stesso errore generico di handshake. Se la sincronizzazione è disattivata o la fonte di tempo non è raggiungibile, correggete prima quello e riprovate prima di toccare qualsiasi file. Riportare indietro l’orologio per aggirare una scadenza non è una soluzione: rompe altri servizi sul dispositivo e lascia il problema di identità esattamente dov’era.
Se l’orologio è corretto, la scadenza è reale e il resto di questa procedura si applica. Notate quale fuso orario usa il registro del client prima di confrontare timestamp di due dispositivi. Un server in un altro fuso può far sembrare un rinnovo anticipato o tardivo quando non era né l’uno né l’altro. Confrontate con il timestamp nella riga di registro del client stesso invece che con l’orologio da parete sulla scrivania.
Leggete la riga di errore prima del profilo
Conservate il testo esatto. L’errore di verifica di OpenVPN indica una profondità e un motivo, e questi due campi vi dicono chi deve agire.
Un VERIFY ERROR con error=certificate has expired è un errore di validità in un punto preciso della catena. Non è un rifiuto della password né un timeout, e i tre richiedono risposte diverse.
Copiate l’intera riga nelle vostre note insieme alla versione del client. Se il messaggio dice invece che il certificato non è ancora valido, siete tornati alla questione dell’orologio. Se dice che l’emittente è sconosciuto, avete un problema di fiducia e non di durata, e nessun rinnovo lo cambierà.
Scoprite quale certificato è scaduto
La profondità zero è il certificato presentato dal peer a cui vi siete connessi, e le profondità più alte risalgono verso la radice. Una VPN di lavoro di solito lascia scadere un’identità client o un certificato server, e a volte un intermedio che l’organizzazione aveva dimenticato di possedere.
Stampate le date dei file a cui il profilo fa realmente riferimento, iniziando da quello alla profondità indicata nell’errore.
openssl x509 -in client.crt -noout -subject -issuer -dates
openssl x509 -in ca.crt -noout -subject -datesSe il profilo incorpora i certificati come blocchi incorporati invece di puntare a file, i file separati sul disco possono essere più vecchi o più recenti di quello che usa il client, ed è per questo che associare l’errore a un file richiede di leggere il profilo e non l’elenco della directory.
Rinnovate tramite l’emittente
Un certificato client viene sostituito da chi lo ha emesso, e reimpostare la password dell’account non rinnova nulla. Per una connessione di lavoro usate il canale di rinnovo pubblicato dalla vostra organizzazione; per un servizio ospitato accedete al portale del fornitore tramite un indirizzo verificato invece di aprire un allegato che dichiara di contenere un nuovo profilo. Un pacchetto non richiesto non è affidabile solo perché il nome del file menziona VPN.
Se gestite il server, controllate i dettagli pubblici e i registri di emissione prima di sostituire il materiale, perché un cambio di CA influisce su ogni client che si fida di essa.
Rinnovare un’identità non dovrebbe richiedere di sostituire la gerarchia di fiducia. Se qualcuno propone una nuova CA per riparare una sola foglia scaduta, chiedete prima cos’altro dipende da quella vecchia. Le RFC 5280 regole di validità e di percorso sono il modello che entrambe le parti seguono.
Fate in modo che il client usi il sostituto
Scaricare un file non significa importarlo. Controllate la voce di connessione che selezionate davvero e verificate se il profilo fa riferimento a percorsi di certificati esterni che avete dimenticato di sovrascrivere.
Mantenete visibile la voce vecchia finché quella nuova non si connette, poi rimuovetela perché nessuno scelga per abitudine il profilo scaduto. Riconnettetevi e confermate che l’errore di scadenza specifico è sparito.
Se resta un errore TLS diverso, trattatelo come un problema nuovo invece di indebolire le impostazioni di verifica per superarlo. Un rifiuto dell’account o una rotta mancante dopo un rinnovo riuscito è un guasto separato con una soluzione separata.