Openssl x509v3 utilisation de la clé étendue

je sais que vous pouvez spécifier le but pour lequel une clé publique de certificat peut être utilisée en ajoutant une ligne comme celle-ci dans le openssl.cfg fichier:

extendedKeyUsage=serverAuth,clientAuth

mais puisque j'ai plusieurs certificats à créer, chacun avec une utilisation de clé étendue différente, est-il possible de spécifier l'attribut dont j'ai besoin dans la ligne de commande (sans utiliser openssl.fichier cfg)? Quelque chose comme:

openssl req -newkey rsa:4096 
            -extendedKeyUsage "serverAuth,clientAuth" 
            -keyform PEM 
            -keyout server-key.pem 
            -out server-req.csr 
            -outform PEM

Merci!

28
demandé sur umläute 2013-06-13 18:38:30

3 réponses

Vous ne pouvez utiliser quelque chose comme ceci:

openssl -extensions mysection -config myconfig.cnf

et maconfig.cnf:

[mysection]
keyUsage         = digitalSignature
extendedKeyUsage = codeSigning

Je ne suis pas au courant de l'interface en ligne de commande de cette fonctionnalité.

28
répondu patrikbeno 2013-11-19 15:22:51

ce que j'ai fini par faire est de créer plusieurs openssl différents.les fichiers cfg et se référer à la bonne en utilisant l'un ou l'autre - config ou - extfile switch.

9
répondu David Caissy 2013-06-13 16:23:52

la même chose que le traitement de SAN openssl req -subj "/CN=client" -sha256 -new -key client-key.pem -out client.csr\ -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "\n[SAN]\nsubjectAltName=DNS:example.com,DNS:www.example.com\nextendedKeyUsage=serverAuth,clientAuth"))

1
répondu fatfatson 2018-07-30 08:40:20