On a vu précédemment comment créer une autorité de certification Windows et des templates. On va maintenant voir comment faire un certificat.
Il y a plusieurs façon d'en demander un. Avec le temps je préfère utiliser openssl au lieu de l'interface graphique.
Sur le sujet j'ai trouvé ces articles :
Pour faire une demande de certificat à une autorité de certification Windows via openssl, il faut commencer par faire un fichier que l'on va nommer ici demandecertificat.conf
Coller y dedans le contenu ci-dessous et adaptez le en fonction de votre besoin.
Vous pouvez trouver des informations sur les différentes options sous CONFIGURATION FILE FORMAT dans https://www.openssl.org/docs/man1.1.1/man1/openssl-req.html
On a un détail complet sur https://www.openssl.org/docs/man1.0.2/man5/x509v3_config.html
Ici vous voyez que dans la partie [ alt_names ] on renseigne le nom dns du site, son nom court ou netbios et son ip, mais vous n'être pas obligé de tout mettre. Vous pouvez mettre uniquement le nom dns.
[req]
default_bits = 2048
prompt = no
default_md = sha256
req_extensions = req_ext
distinguished_name = dn
[ dn ]
C=FR
L=MaVille
ST=MonDepartement
O=MaSocieté
OU=IT
CN = monsiteweb.mondomaine.fr
[ req_ext ]
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = monsiteweb.mondomaine.fr
DNS.2 = monsiteweb
IP.1 = 182.28.12.xxx
Lien vers le fichier : cliquez ici
Ne modifiez pas les valeurs des lignes req_extensions et distinguished_name,
elles font elles-mêmes référence à une section située plus loin.
Même chose pour subjectAltName
Maintenant, on va générer une clé privée en modifiant "nommachine" par le nom de votre serveur
openssl genrsa -out nommachine.key 2048
Lien vers le fichier : cliquez ici
Générer une demande de certificat, cad un fichier csr (pour Certificate Signing Request) en adaptant cette commande.
Vous voyez qu'elle nécessite le fichier de configuration demandecertificat.conf créé au début ainsi que la clé privée.
openssl.exe req -new -sha256 -nodes -out nommachine.csr -newkey rsa:2048 -keyout nommachine.key -config demandecertificat.conf
Lien vers le fichier : cliquez ici
Copier le fichier .csr généré dans un répertoire de votre autorité de certification.
Pour soumettre la demande, cad le .csr, il va falloir indiquer le template à utiliser.
Si le nom du template est bien indiqué, une fenêtre de sélection apparaitra
certreq -submit -attrib "CertificateTemplate:TutoWebServer"
Lien vers le fichier : cliquez ici
Attention au nom du template, il faut bien prendre la valeur du champ Template name qui n'a en général pas d'espaces, et non pas celle du Template display name
Dans le cas contraire vous aurez une erreur du type
The requested certificate template is not supported by this CA 0x80094800 -2146875392 CERTSRV_E_UNSUPPORTED_CERT_TYPE Denied by Policy Module 0x80094800 etc
Pointer sur le .csr généré précédemment
Sélectionner votre autorité de certification
Enregistrer le certificat avec l'extension cer de préférence (et non pas crt)
On peut indiquer plus de paramètres à certreq pour n'avoir aucune interaction avec une interface graphique.
En plus du nom du template à utiliser, il faut indiquer le CAHostName\CAName, l'emplacement du csr source et le nom du certificat cible.
Exemple
certreq -submit -attrib "CertificateTemplate:TutoWebServer" -config MySubCa.mydomain.local\mydomain-MYSUBCA-CA serveurzog.csr serveurzog.cer
Lien vers le fichier : cliquez ici
Comme indiqué sur https://techcommunity.microsoft.com/t5/core-infrastructure-and-security/a-simple-way-to-set-the-certutil-config-option/ba-p/1128386
on peut récupérer le CAHostName\CAName avec
certutil -config - -ping
Lien vers le fichier : cliquez ici
Ensuite, générer un pfx en adaptant cette commande
openssl.exe pkcs12 -export -in nommachine.cer -inkey nommachine.key -out nommachine.pfx
Lien vers le fichier : cliquez ici
Un mot de passe sera demandé pour protéger la clé privée.
Stocker ce mot de passe dans un endroit sécurisé comme dans un keepass.
Vérifier ensuite que vous arrivez bien à extraire la clé privée du pfx avec votre mot de passe en adaptant cette commande
openssl pkcs12 -in moncertificat.pfx -nocerts -nodes -out moncertificat.key
Lien vers le fichier : cliquez ici
Déclarer votre certificat sur votre serveur ou autre.
Si le mot de passe est bien validé, par sécurité il est préférable d'effacer le ou les .key pour ne garder que le pfx.
Téléchargement(s)
Nom | Site Web d origine | Description |
---|---|---|
openssl_V0.9.8d_for_Windo... | OpenSSL pour Windows |
Article(s) précédent(s)