TUTOS.EU

Mise à disposition d'un template pour une autorité de certification

Vous avez une autorité de certification Windows et il vous faut maintenant délivrer des certificats.
On va prendre un exemple courant avec la délivrance d'un certificat pour un serveur web.

Pour cela il va vous falloir un template.

Par défaut, les droits sur les templates sont réservés aux enterprise admins.
Vous pouvez modifier cela sur un DC avec adsiedit.msc et modifier les droits sur Certificate Templates comme montré ici

Même chose sous OID

Pour contrôler ou créer un template, aller sur le serveur qui va délivrer les certificats et accéder à la console de gestion avec

certsrv.msc
Lien vers le fichier : cliquez ici

Aller sur Certificate Templates puis Manage

Si vous n'avez pas déjà créé un template pour votre besoin, il faut en créer un.
Pour cela on prend le modèle existant qui correspond le mieux et on le duplique

Sous général, lui donner un nom et une période de validité

Sous Compatibility, plus vous mettez une version récente de Windows, serveur ou poste client, et plus vous avez de possibilités.

Pour la partie "Certification Authority", il faut mettre la version de l'OS qui héberge votre autorité de certification.

Pour le "Certificate recipient", il faut mettre la version de Windows la plus ancienne qui utilisera le certificat.

Evitez de laisser "Windows XP / Server 2003" sinon vous n'aurez pas accès à autre chose que "Legacy Cryptographic Service Provider" dans l'onglet Cryptography, et vous n'aurez donc pas accès à l'algo RSA.

Pour un template destiné à faire des certificats pour des serveurs Web, les clients seront les serveurs web eux même.

Dans la partie Subject Name, il n'y a rien à modifier,
"Supply in the request" permet de saisir le sujet du certificat ainsi que les champs SAN  / Subject Alternative Name. Ils sont nécessaires pour les serveurs Web.

Si le template était destiné à authentifier des postes clients, pour SCCM par exemple, renseigner manuellement le champ subject de chaque poste serait compliqué. C'est pour cela que le template "Computer" est réglé par défaut sur "Build from this Active Directory information".

Choisir "Supply in the request" génère ce message qui alerte sur les possibilités que cela ouvre.
Cela souligne le fait qu'il faut limiter l'accès à ce template, et donc à ceux qui peuvent émettre ce type de certificat, à des personnes de confiance, des administrateurs systèmes qui connaissent de quoi il retourne.

Sous Request Handling, pour un serveur web, il sera compliqué de faire un certificat au format .pfx si l'export de la clé privée n'est pas permis. Il faut donc prendre soin de permettre l'export de la clé privée.
A ce sujet, le format pfx protègera la clé privée avec un mot de passe.

Sous Cryptography, éviter de prendre un provider legacy (ancien).
Préférer Key Storage Provider avec un algo RSA et un hash en SHA256.
Comme indiqué plus haut, cela n'est possible que si vous avez sélectionné une valeur d'OS plus récente que "Windows XP / Server 2003" au niveau de "Certificate recipient" dans l'onglet Compatibility.

Dans l'onglet security, une façon de faire peut être de tout supprimer sauf "Authenticated Users" qui doit être conservé avec un accès en lecture.
Administrator et les groupes "Domain Admins" et "Enterprise Admins" peuvent éventuellement être remplacés par un groupe dédié aux admins PKI

Ajouter un groupe ou directement les comptes d'ordinateurs (pour un serveur Web Windows) qui doivent recevoir
un certificat.
Il faut donner au moins le droit "Enroll".
Le droit de lecture est normalement donné via Authenticated Users

Sur le serveur / l'autorité de certification Window qui doit émettre les certificats basés sur le template créé,
faire un clic droit sur Certificate Templates>New>Certificate Template to Issue

Sélectionner votre template et cliquer sur Ok