Il tuo titolo è fuorviante; stai usando il file di configurazione di default, bene, come mostrato nella prima riga di output.
How do I revoke the certificate and generate a CRL?
Questi sono due passaggi separati con OpenSSL.
Prima usa openssl ca -revoke $certfile
come hai fatto tu, ma se vuoi specificare un motivo (non è necessario) devi usare un flag come -crl_reason superseded
e non solo superseded
. Questo passaggio aggiorna solo il 'database' (un semplice file di testo normalmente chiamato index.txt
sebbene possa essere configurato diversamente). Se la chiave CA e i file cert sono specificati nel file di configurazione, che normalmente dovrebbero essere, non è necessario specificarli nella riga di comando. (Questa operazione non ha realmente bisogno di loro ma li accede, vedi Perché OpenSSL ha bisogno della chiave privata per revocare un certificato? )
Ogni volta che il 'database' viene aggiornato, usa openssl ca -gencrl [options]
per generare effettivamente un CRL dal contenuto corrente (aggiornato). Il periodo CRL (in giorni, ore o secondi) deve essere specificato sulla riga di comando o nel file di configurazione; la configurazione predefinita upstream lo imposta a 30 giorni, ma non so quale pacchetto o altra modifica si sta utilizzando. Altre opzioni possono essere aggiunte secondo la pagina man. Questa operazione richiede la chiave e il certificato CA, poiché il CRL è firmato con quella chiave e contrassegnato per la verifica con tale certificato.
Questo schema "database" è identificato, piuttosto brevemente, nel primo paragrafo di testo della pagina man per ca(1ssl?)
su un sistema Unix con OpenSSL o sul web :
The ca command is a minimal CA application. It can be used to sign certificate requests in a variety of forms and generate CRLs it also maintains a text database of issued certificates and their status.
Il 'database di testo' è il file index.txt (normalmente) e 'stato [dei certificati emessi]' è se, quando e perché sono stati revocati. Se è indicato dal primo tabelimitato campo che è V per valido o R per revocato; l'altra informazione è nel terzo campo e dovrebbe essere abbastanza ovvia.