Sur mon PC équipé de Windows 10, je dois utiliser OpenSSL. J'ai téléchargé la version 1.0.2n et je suis ce guide : Création d'un certificat SSL avec plusieurs noms d'hôtes J'ai modifié le fichier de configuration openssl.cfg (situé dans C:\OpenSSL -Win64 \bin ).
Après quelques essais, je peux générer sans problème les clés et les certificats.
Mon problème est le suivant : mes indications pour la génération des certificats sont telles que les Sujet Nom alternatif ne doit avoir qu'une seule valeur et doit correspondre à l'élément Nom commun domaine. Ainsi, si (en remplissant le certificat) je remplis le champ commonName avec exemple.com Le nom alternatif du sujet doit également être exemple.com . Je sais que je peux modifier à chaque fois le fichier cfg et définir manuellement la valeur du SAN dans la section v3-req, mais je veux éviter cela ; je cherche un moyen de copier la valeur que je demande pour le nom commun dans le champ SAN.
J'ai donc essayé ceci : dans le fichier openss.cfg, je suis allé dans la section v3 req et je l'ai modifiée de cette façon :
[ v3_req ]
# Extensions to add to a certificate request
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = @alt_names
[alt_names]
DNS.1 = commonName:copy
c'est-à-dire que j'ai essayé d'exploiter la fonction :copy mais, malheureusement, cette action ne fonctionne pas. Si, après la génération du certificat, je lance la commande
req -text -noout -in <filename.csr>
pour vérifier mon certificat, dans la section spécifique j'obtiens ceci :
X509v3 Subject Alternative Name:
DNS:commonName.copy
Comme vous pouvez le voir, le résultat est le côté droit de ma déclaration sous la rubrique [alt_names]
section.
Les questions sont donc les suivantes : Existe-t-il une méthode permettant de transformer le nom commun en nom alternatif pour le sujet ? Et si oui, comment ?