Di seguito sono riportati i passaggi per le creazioni della CA principale: -
$ cd /media/$USER/safe_storage
$ mkdir -p example.net.ca/root-ca/{certreqs,certs,crl,newcerts,private}
$ cd example.net.ca/root-ca
$ chmod 700 private
$ touch root-ca.index
$ echo 00 > root-ca.crlnum
$ openssl rand -hex 16 > root-ca.serial
$ export OPENSSL_CONF=./root-ca.cnf
$ openssl req -new -out root-ca.req.pem
$ chmod 400 private/root-ca.key.pem
Genera CSR dalla chiave esistente
$ openssl req -new \
-key private/root-ca.key.pem \
-out root-ca.req.pem
Enter pass phrase for private/root-ca.key.pem: ********
Autofirmazione del certificato radice
$ openssl rand -hex 16 > root-ca.serial
$ openssl ca -selfsign \
-in root-ca.req.pem \
-out root-ca.cert.pem \
-extensions root-ca_ext \
-startdate 'date +%y%m%d000000Z -u -d -1day' \
-enddate 'date +%y%m%d000000Z -u -d +10years+1day'
Puoi verificare se sarà riconosciuto come valido:
$ openssl verify -verbose -CAfile root-ca.cert.pem \
root-ca.cert.pem
root-ca.cert.pem: OK
Di seguito sono riportati i passaggi di configurazione del server: -
Generazione di server Keypair: -
$ openssl genrsa -out s_priv.key 2048
$ openssl rsa -pubout -in s_priv.key -out s_pub.key
Generazione CSR basata su chiave privata del server
$ openssl req -config csr.conf -out codesigning.csr -key s_priv.key -new
crea il certificato del server firmato root-ca utilizzando la chiave privata RootCA e il CSR del server: -
$ openssl ca -config root-ca.cnf -policy signing_policy -extensions signing_req -out servercert.pem -infiles codesigning.csr
L'obiettivo principale dietro questo è capire i concetti, sto ricevendo errore nel firmare il certificato del server con root-ca. Errore durante il caricamento della sezione di estensione signing_req
ti invitiamo a rivedere i passaggi.