SUPINFO International University

SUPINFO Institute of Information Technology
Laboratoire Microsoft




Tous les Articles du Laboratoire Microsoft

Implémenter une infrastructure à clés publiques dans un environnement Windows Server 2003
Accueil > Articles > Réseaux
Auteurs 
Alexandre VILLOING
LABORATOIRE SUPINFO DES TECHNOLOGIES MICROSOFT


 Tous les articles de cet auteur

3,3/5

Assez Bien


91971
228/753
Implémentation d'une PKI sous Windows Server 2003

2. Implémenter une infrastructure à clés publiques

2.1 Installation des Services de Certificats sous Windows Server 2003

2.1.1 Installation du service IIS

Si vous envisagez la diffusion de certificats  par l'intermédiaire d'une page Web, il est préférable d'installer IIS (Internet Information Services) avant l'installation de l'autorité de certification. De cette manière, IIS sera automatiquement configuré pour diffuser des certificats.

Pour installer IIS, il faut se rendre dans « Ajout/Suppression de programmes » dans le panneau de configuration. Sélectionner « Ajouter ou supprimer des composants Windows », double cliquer sur « Serveur d'applications », sur « Services IIS » puis sur « Services World Wide Web ». Sur la fenêtre qui s'ouvre, cochez « Active Server Pages (ASP) » ainsi que « Services World Wide Web » puis cliquer sur le bouton OK. Lancez l'installation à l'aide du bouton Suivant.

Une fois la copie des fichiers terminée, ouvrez la page http://127.0.0.1 à l'aide d'Internet Explorer. La page devrait être marquée : « En chantier » si IIS fonctionne correctement.

 

2.1.2 Installation des Services de certificats

Attention : après l'installation des services de certificats, il n'est plus possible de changer le nom ou le domaine du serveur.

Pour installer une autorité de certification sous Windows Server 2003, il faut se rendre dans « Ajout/Suppression de programmes » dans le panneau de configuration. Sélectionner « Ajouter ou supprimer des composants Windows », cocher « Services de certificats » puis cliquer sur le bouton « Suivant ». La première étape de l'installation consiste à choisir le type d'autorité de certification.


Il existe deux types principaux d'installation :

  • Autorité d'entreprise : à utiliser si l'autorité de certification doit délivrer des certificats dans un domaine auquel appartient le serveur (se base sur l'annuaire d'Active Directory). Cette autorité doit-être contrôleur de domaine.
  • Autorité autonome : permet de délivrer des certificats dans un réseau comme Internet

Il existe deux niveaux fonctionnels pour chacun de ces deux types d'installation :

  • Autorité racine : l'autorité de certification est la première du réseau
  • Autorité secondaire : dépend d'une autorité racine

Remarque : Il est possible de spécifier des paramètres avancés pour la génération du couple de clés pour cette autorité de certification, en cochant « Utiliser les paramètres personnalisés ».

Il faut ensuite choisir un nom pour cette autorité de certification ainsi que, dans le cas d'une autorité racine, la période de validité des certificats délivrés. Pour terminer, l'installation propose de changer l'emplacement de la base des certificats et des fichiers journaux. Après avoir validé cette dernière étape, la copie des fichiers nécessaires commence. Une fois l'installation effectuée, un nouveau composant apparait dans le menu « Outils d'administration » : Autorité de certification.

 

2.1.3 Sécuriser IIS à l'aide du protocole SSL

Il est possible de sécuriser les pages Web du serveur IIS à l'aide du protocole SSL (Secure Sockets Layer). Lors de l'utilisation du SSL, les données qui transiteront entre le demandeur d'un certificat et l'autorité de certification seront cryptées, dans notre cas, cela permettra de sécuriser tous les échanges avec l'autorité de certification.

Pour activer SSL sur le serveur IIS, il faut d'abord ouvrir le « Gestionnaire des services Internet (IIS) » dans le menu « Outils d'administration ». Sélectionnez l'ordinateur local, puis « Sites Web ». Effectuez un clique droit sur le « Site Web par défaut » (qui contient le répertoire virtuel CertSrv) et choisissez « Propriétés ».
Dans la fenêtre qui s'affiche, sélectionnez l'onglet « Sécurité du répertoire ».

Sur la page qui s'affiche, cliquez sur le bouton « Certificat de serveur ». Suivez l'assistant pour « Créer un certificat ».

Si votre serveur appartient à un domaine, il est possible de transmettre directement la demande à l'autorité de certification en cliquant sur « Envoyer immédiatement la demande à une autorité de certification en ligne ». Dans le cas contraire choisissez « Préparer la demande, mais ne pas l'envoyer maintenant ».
Choisissez ensuite un nom pour le nouveau certificat, l'organisation et l'unité d'organisation, le nom du site Web et enfin le pays, le département et la région où se situe votre serveur.

Si vous avez choisi de préparer une demande, il vous faudra l'enregistrer avant de pouvoir générer le certificat en vous rendant sur http://127.0.0.1/certsrv . Vous pourrez alors sélectionner « Demander un certificat », soumettre une « demande de certificat avancée » et enfin « soumettre une demande de certificat en utilisant un fichier CMC ou PCK#10 ».
Dans la zone de texte « Demande enregistrée », collez le contenu du fichier enregistré précédemment (qui se trouve par défaut dans c:\certreq.txt) puis cliquez sur le bouton « Envoyer ».

Dans le cas d'une autorité de certification autonome, vous devrez autoriser manuellement la génération de ce certificat en vous rendant dans « Autorité de certification » dans le menu « Outils d'administration ». Il vous faudra ensuite vous rendre dans les « Demandes en attente », d'effectuer un clique droit sur la demande que vous venez d'émettre afin de pouvoir « Délivrer » ce certificat. Une fois votre autorisation accordée, retournez à l'accueil de la page Web puis « Afficher le statut d'une requête de certificat en attente ». Sélectionnez votre demande puis « Télécharger le certificat » sur votre disque dur. Fermez alors le navigateur Internet.

Revenez dans les propriétés du Site Web d'IIS, dans l'onglet « Sécurité du répertoire ». Cliquez à nouveau sur le bouton « Certificat de serveur » puis « Traitez la demande en attente ». Sélectionnez le certificat que vous venez d'enregistrer. Votre serveur IIS dispose donc maintenant de son propre certificat garantissant aux yeux des utilisateurs son identité et il ne reste plus qu'à activer le protocole SSL sur ce site Web.

Pour cela, toujours dans l'onglet « Sécurité du répertoire », cliquez sur le bouton « Modifier » et cochez « Requérir un canal sécurisé (SSL) » ainsi qu' « Exiger le cryptage 128 bits ». Enregistrez la configuration et fermez le Gestionnaire des services Internet. L'interface Web de l'autorité de certification est désormais accessible en entrant l'url suivante : https://nom-de-lautorite/certsrv.

 

2.2 Administrer une infrastructure à clés publiques

2.2.1 L'outil "Autorité de certification"

L'outil « Autorité de certification », présent dans les outils d'administration de Windows Server 2003, vous permet de gérer votre autorité de certification :

  • Liste des certificats révoqués
  • Liste des certificats délivrés
  • Demandes en attente
  • Demandes ayant échoué
  • Administration des modèles de certificats (uniquement sur une autorité d'entreprise)

La liste des certificats révoqués contient tous les certificats révoqués dans cette infrastructure. Il est possible de publier la liste des certificats révoqués manuellement, en effectuant un clique droit sur « Liste des certificats révoqués » puis en choisissant « Publier » dans Toutes les tâches. Vous pouvez publier une liste de base ou seulement une liste delta.

La liste des certificats délivrés vous permet de consulter mais aussi de révoquer les certificats émis par cette autorité de certification. Pour révoquer un certificat, sélectionnez-le puis effectuez un clique droit afin de choisir « Révoquer un certificat » dans le menu Toutes les tâches. Il est possible de choisir une raison pour cette révocation. Le certificat apparait alors dans la liste évoquée précédemment.

Les demandes en attente, dans le cas d'une autorité de certification autonome, apparaissent ici. Il vous est alors possible de délivrer ou non le certificat à l'utilisateur. Pour cela, sélectionnez le certificat puis effectuez un clique droit dessus. Choisissez « Délivrer » ou « Refuser » dans le menu Toutes les tâches. Dès lors, l'utilisateur peut aller consulter le nouvel état de sa demande.

Les demandes ayant échoué représentent les certificats n'ayant soit pas été autorisés, soit n'ayant pas pu être émis (demande de certificat avancé incorrecte, erreur de création du certificat, etc).

Dans le cas d'une autorité de certification faisant partie d'un domaine, une ligne supplémentaire existe : Les modèles de certificats. Vous pouvez administrer ces modèles depuis cet outil. En double cliquant sur un modèle de certificat, sa description apparaitra. Il est aussi possible de gérer ces modèles, pour cela effectuez un clique droit sur une zone vide puis sélectionnez « Gérer ».

Outre ces fonctionnalités, il est possible depuis cette interface de renouveler le certificat de l'autorité de certification manuellement en effectuant un clique droit sur son nom, puis en sélectionnant « Renouveler le certificat d'Autorité de certification » dans le menu « Toutes les tâches ».

Il est aussi possible d'administrer son autorité de certification en ligne de commande à l'aide de la commande « certutil ». Vous pouvez par exemple afficher les modèles de certificats ( -template ), signer une liste de révocation ( -sign ) ou encore importer un nouveau certificat dans la base de données ( -importcert ). Pour obtenir l'aide complet de cette commande, entrez «  certutil /?  ».

 

2.2.2 L'interface Web "certsrv"

Pour effectuer une nouvelle demande de certificat, les utilisateurs peuvent se connecter à l'aide d'Internet Explorer sur le site Web : http://nom-de-l'autorite/certsrv (ou https://nom-de-l'autorite/certsrv dans le cas d'une connexion sécurisée).

L'interface Web se décompose en trois parties :

  • Demander un certificat : permet de demander des certificats standards ou avancés
  • Afficher le statut d'une requête de certificat en attente : permet dans le cas d'une autorité de certification autonome, de récupérer un certificat après ayant été validé par l'administrateur
  • Télécharger un certificat d'autorité de certification… : permet de télécharger le certificat de l'autorité de certification ainsi que la liste de révocations des certificats de cette infrastructure

Pour pouvoir installer un certificat, il faut tout d'abord en faire la demande (Demander un certificat). Vous pouvez choisir entre différents types de certificat (navigateur Web, courrier électronique, EFS, utilisateur, serveur, IPSec, etc) selon les besoins dans votre réseau.
Si vous exprimez une demande sur une autorité de certification autonome, il vous faudra entrer des informations d'identification (nom, société, pays etc) permettant de vous identifier sur votre certificat avant de pouvoir soumettre votre demande. Il vous faudra ensuite patienter jusqu'à ce qu'un administrateur autorise manuellement votre demande. Lorsque cela aura été fait, vous pourrez installer votre nouveau certificat (« Afficher le statut d'une requête de certificat en attente » sur l'interface Web). Dans le cas d'une demande à une autorité d'entreprise il vous suffit de sélectionner le type de certificat puis de l'installer.

Remarque : Pour accorder votre confiance aux certificats émis par cette autorité de certification, vous devez installer la chaîne de certificats d'Autorité de certification (Télécharger un certificat d'autorité de certification).

Sur cette page, vous pouvez aussi télécharger la liste de révocation de certificats émis par cette autorité. Elle contient la liste des certificats ayant été marqués comme obsolètes (clé privée compromise, certificat ayant dépassé sa période de validité, etc). Il est possible de télécharger la liste de révocation de base (qui contient tous les certificats révoqués par cette autorité) mais aussi la liste delta (qui contient seulement les dernières mises à jour).

 

2.2.3 La MMC "Certificats"

Le composant enfichable Certificats permet de gérer les certificats d'un utilisateur ou d'un ordinateur. Pour cela, dans le menu démarrer, choisissez « Exécuter » puis entrez « MMC ».

Dans la fenêtre qui s'ouvre, déroulez le menu « Fichier » puis choisissez « Ajouter/Supprimer un composant logiciel enfichable ». Sélectionnez le bouton « Ajouter » puis double cliquez sur « Certificats ». Vous pouvez alors choisir d'afficher les certificats de l'utilisateur actuel ou alors de l'ordinateur.

Le dossier « Personnel » contient tous les certificats ayant été accordés à cet objet (certificat EFS, messagerie, IPSec, etc). Il est possible de sauvegarder un certificat et éventuellement la clé privée lui étant associée en le sélectionnant, en effectuant un clique droit dessus puis en choisissant « Exporter » dans le menu Toutes les tâches. Si vous souhaitez exporter la clé privée, il faut que lors de l'installation du certificat, la clé a été marquée comme exportable, et l'assistant vous demandera alors d'entrer un mot de passe pour protéger cette clé.

Remarque : Il est conseillé de garder une sauvegarde de ses certificats ainsi que de ses clés privées pour pouvoir les réutiliser en cas de problème sur son système (par exemple pour pouvoir décrypter des fichiers cryptés à l'aide d'EFS après une défaillance du système d'exploitation).

Le composant logiciel enfichable Certificats permet aussi, dans le cas d'un ordinateur présent dans un domaine, qui comprend une autorité de certification d'entreprise, de faire une demande de certificat sans passer par l'interface Web. Pour cela, il suffit d'effectuer un clique droit sur le dossier « Personnel » afin de « Demander un nouveau certificat » dans le menu Toutes les tâches.

Remarque : Dans le cas d'une autorité d'entreprise, il est possible de diffuser automatiquement des certificats à l'aide d'une GPO.

 

2.2.4 Sécurisez une autorité de certification


Exemple d'implémentation d'une PKI à trois niveaux

L'autorité de certification racine étant l'élément le plus critique d'une PKI en raison de la confidentialité de sa clé privée, il est fortement conseillé d'utiliser une infrastructure à plusieurs niveaux.
Dans l'exemple ci-dessus, l'autorité racine ne délivre que deux certificats (donc seulement deux utilisations de sa clé privée) aux autorités de certifications intermédiaires. Une fois les autorités de certifications intermédiaires approuvées par l'autorité racine, elle peut être déconnectée du réseau ce qui garantit qu'aucun utilisateur malveillant ne pourra "voler" la clé privée de l'autorité de certification racine.

Lorsque ces autorités de certifications intermédiaires auront reçues leur certificat leur permettant d'exercer leur fonction, elles pourront à leur tour autoriser les autorités de certifications dites "émettrice". De cette manière, il est aussi possible de déconnecter du réseau les autorités intermédiaires en laissant les autorités de certifications "émettrices" signer les certificats. Cette hiérarchie permet non seulement de choisir quelle autorité va délivrer tel type de certificat, mais aussi de limiter les risques d'attaque de cette PKI, puisqu'en aucun cas il ne sera possible d'être en possession de la clé privée de l'autorité racine stockée dans un endroit sûr puisque hors du réseau (et dans un endroit physiquement protégé).

 

2.2.5 Sauvegarder une autorité de certification

L'autorité de certification doit être régulièrement sauvegardée, et cela pour deux raisons :

  • elle est la seule à posséder sa clé privée permettant de générer des certificats aux utilisateurs de la PKI
  • elle contient les certificats clients qu'elle diffuse sur le réseau

Il existe deux manières de sauvegarder son autorité de certification :

  • à l'aide de l'utilitaire de sauvegarde de Windows
  • en utilisant l'outil d'administration « Autorité de certification »

Pour effectuer une sauvegarde de l'autorité de certification, il faut effectuer une sauvegarde de l'état du système (System Stage) à l'aide de l'Utilitaire de Sauvegarde présent dans Windows (Menu démarrer puis Accessoire, Outils système). Pour cela, lancez l'utilitaire en « mode avancé » si ce n'est pas déjà le cas, puis sélectionnez l'onglet « Sauvegarder ». Cochez la case « System State » et éventuellement d'autre répertoire si nécessaire (il est conseillé de sauvegarder par la même occasion le disque système), puis « Démarrez la sauvegarde ».

 

Il est possible de ne pas effectuer une sauvegarde complète du système sur lequel se trouve l'autorité de certification mais seulement les paramètres de ce service. Cela permet par exemple en cas de corruption ou de perte de la clé privée de l'autorité de la restaurer. Pour cela, effectuez un clique droit sur le nom de votre autorité de certification dans l'outil d'administration « Autorité de certification » puis sélectionnez « Sauvegarder l'Autorité de certification » dans « Toutes les tâches ». Cochez les cases « Clés privées et certificat d'Autorité de certification » ainsi que la « base de données de certificats et journal de la base de données de certificat ». Spécifiez un emplacement pour votre sauvegarde puis cliquez sur Suivant. Vous devez ensuite entrer un mot de passe permettant d'apporter une première protection au stockage de votre clé privée.

Remarque : Ce fichier contenant la clé privée de votre autorité de certification (qui est donc l'élément critique de votre PKI), il doit être stocké et protégé de toutes attaques avec une attention particulière. Le mot de passe entré lors de la sauvegarde peut être découvert par un pirate utilisant le « brute force » (essai de toutes les combinaisons possibles), ce n'est qu'une question de temps.




Retrouvez ci-dessous les autres sections du Laboratoire Microsoft