Errore di registro di Easy-RSA su Windows: controllare la vista del registro
Quel messaggio del registro è un fallimento nella ricerca degli strumenti, non una CA rotta. Confrontate le viste a 32 bit e 64 bit prima di modificare il file batch o la PKI.
Il file batch si ferma con «Il sistema non è riuscito a trovare la chiave o il valore di registro specificati» e tutti presumono che l'autorità di certificazione sia rotta. Non lo è, o almeno non ancora: lo script ha fallito mentre cercava il software, prima di chiedere a Easy-RSA di fare qualsiasi cosa con una chiave. Quest'ordine conta, perché significa che la riparazione è un problema di ricerca e che la PKI è solo spettatrice. Leggere la riga che fallisce è l'intera diagnosi, e richiede meno tempo di qualsiasi soluzione alternativa.
L'errore si verifica prima che la CA venga toccata
I vecchi file batch di Easy-RSA 2 individuano OpenSSL o l'installazione di OpenVPN interrogando il registro, poi impostano variabili in base a ciò che trovano. Quando la query non restituisce nulla, lo script si interrompe prima che venga eseguita qualsiasi operazione sui certificati.
Un messaggio su una chiave di registro è quindi una prova sull'ambiente dello script, non sulla directory della CA.
Due viste del registro, un solo file batch
Un processo a 32 bit e un processo a 64 bit possono vedere viste diverse del registro, e un file batch che ne presuppone una può mancare la voce che esiste nell'altra. Questi confronti in sola lettura mostrano la differenza per la chiave legacy usata da alcuni vecchi script:
reg query "HKLM\SOFTWARE\OpenVPN" /reg:32
reg query "HKLM\SOFTWARE\OpenVPN" /reg:64
La documentazione di reg query descrive i selettori di vista. Eseguite entrambi nello stesso contesto dello script che fallisce, perché la vista dipende da come parte il processo e anche dai flag. Se la voce esiste solo in una vista, confrontate il percorso a cui punta con gli strumenti installati prima di cambiare qualcosa. Una chiave che esiste ma indica una vecchia directory di installazione è un guasto diverso da una chiave assente.
Se nessuna delle due viste contiene la voce, l'installer non l'ha mai creata, e fabbricare un valore a mano non farà funzionare gli strumenti.
Non aggiungete /reg:64 senza condizioni
La correzione tentante è aggiungere il selettore a 64 bit a ogni query e proseguire. Su alcune installazioni è corretto, su altre manda lo script in una vista che davvero non ha nulla.
Cambiate la ricerca solo dopo aver visto quale vista contiene il valore atteso.
Scoprire non è riparare la PKI
Questo errore non dimostra che il certificato della CA, la chiave di firma, il file di serie o il database di revoca siano danneggiati. Eseguire un clean-all copiato da un vecchio tutorial distruggerebbe un insieme di oggetti completamente diverso lasciando la ricerca rotta. Tenete le due attività separate nella testa e nel ticket. Se in seguito un'operazione sui certificati fallisce, valutarla con le sue stesse prove.
Fate un backup della directory della CA prima di qualsiasi esperimento, anche di uno che siete certi sia in sola lettura.
Passare a Easy-RSA 3 è una migrazione
Un'installazione mantenuta dovrebbe usare il launcher e il modello di configurazione del pacchetto attuale, e Easy-RSA 3 non è lo stesso flusso di lavoro con file batch di Easy-RSA 2. La sua guida rapida per una nuova PKI non è un'istruzione di migrazione per un'autorità esistente. Prima di cambiare versione, conservate il materiale della CA insieme ai registri di emissione e revoca, e seguite le indicazioni di aggiornamento di quella versione. Inizializzare una CA sostitutiva nella directory autorevole per far sparire un errore di individuazione degli strumenti è la peggiore opzione dell'elenco.
Un cambio di versione è un progetto; l'errore di registro è un pomeriggio.
Il confronto che lo risolve davvero
Annotate quattro cose e confrontatele direttamente:
- Quale script è stato eseguito e quale riga ha fallito.
- Quale vista del registro ha interrogato quella riga.
- Quale percorso eseguibile lo script si aspettava.
- Quale installazione esiste realmente sulla macchina.
Quando questi quattro concordano, l'errore sparisce, e qualsiasi problema di certificato rimasto può essere letto con le sue stesse prove invece di dare la colpa alla CA.