Introduction

Les trames circulant sur un réseau n'étant pas cryptées il est donc potentiellement possible de les intercepter pour en extraire le contenu. Pour des données sensibles, cela n'est pas satisfaisant. Nous allons étudier une solution envisageable pour sécuriser les données circulant sur notre Intranet. Il s'agît du cryptage SSL qui est largement employé sur Internet pour rendre confidentiel les échanges au travers du réseau des réseaux. Internet Information Services propose bien évidemment la prise en charge de ce protocole pour sécuriser les données transmises sur le réseau entre le serveur Web et un client, Ce procédé repose en fait sur l'utilisation de certificats. Nous allons également nous appuyer sur l'annuaire Active Directory. Voyons maintenant comment mettre en place cette technique de manière concrète.

Voici tout d'abord les outils utilisés ici :

  • Microsoft Windows 2000 Server
  • L'annuaire Active Directory
  • L'autorité de certification intégrée de Windows 2000 Server
  • Internet Information Services 5.0

1. Installation du serveur Web d'Internet Information Services (IIS)

En premier lieu il faut installer le serveur Web IIS, à moins que celui-ci soit déjà installé sur un serveur du réseau. Pour l'installer, rien de compliqué, voici les opérations à réaliser :

  • Dans le panneau de configuration, aller dans "Ajout/Suppression de programmes"
  • Cliquer sur "Ajouter/Supprimer des composants Windows"
  • Cocher la case "Services Internet (IIS)" puis cliquer sur "Détails"

Il faut alors cocher les composants suivants:

  • Composant logiciel enfichable des services Internet (IIS)
  • Fichiers communs
  • Gestionnaire des services Internet (HTML)
  • Serveur World Wide Web
  • Cliquer sur "Ok", puis sur "Suivant". Le système demande d'insérer le CD. La copie des fichiers débute puis l'installation se termine.

Notre serveur est maintenant opérationnel et apte à délivrer du contenu aux clients s'y connectant.

2. Mise en place d'une autorité de certification

Le cryptage des pages Web par SSL s'appuient sur les certificats. Ces derniers permettent d'identifier avec certitude une entité par l'intermédiaire de différentes informations qu'ils intègrent. Ils contienent les clés assurant le cryptage et décryptage des données. Le certificat peut être délivré de deux manières, soit par une société spécialisée en la matière (VeriSign par exemple), soit par une autorité de certification directement installée sur le réseau. C'est le rôle du service de certificat de Windows 2000.

Comme la sécurisation à réaliser est celle de l'Intranet il n'est pas nécessaire d'avoir un certificat issu d'une société spécialisée (c'est-à-dire d'un tiers de confiance), d'autant plus que cela est payant. Il faut donc installer l'autorité de certification fournie avec Windows 2000 Server. Comme nous sommes sur un réseau utilisant Active Directory nous allons installer une autorité de certification d'entreprise qui prend en charge cet annuaire.

Voici la démarche à suivre pour installer cette autorité:

  • Aller dans le panneau de configuration, puis "Ajout/Suppression de programmes", "Ajout/suppression de composants Windows", et cocher "Services
  • Il est alors précisé qu'il ne sera alors plus possible de renommer l'ordinateur, il faut cliquer sur "oui" puis sur "Suivant"
  • Choisir "Autorité de certification d'entreprise" puis cliquer sur "Suivant"
  • Il ne faut pas changer les options de clés, cela n'est pas nécessaire
  • Remplir les informations à propos de l'autorité de certification et cliquer sur Suivant
  • Choisir l'emplacement de la base de données de certificats et de son journal. Il n'est pas nécessaire de changer l'emplacement par défaut.
  • L'installation et la configuration du service commence, il est possible qu'il faille fournir le CD de Windows 2000 Server.

L'autorité de certification est gérée comme tous les autres services de Windows grâce à une MMC. Elle permet d'effectuer des opérations sur les certificats (révocation par exemple), de voir quels certificats sont crées, quelles demandes sont en attente…

3. Création d'un certificat par l'autorité de certification et mise en place de celui ci

Maintenant que nous avons l'autorité de certification nous permettant de délivrer des certificats, il faut en créer un. Un certificat (un fichier en réalité), nous assurera de l'identité du serveur Web et permettra l'établissement d'une communication sécurisée grâce à SSL entre le serveur Web et le client.

Voici les étapes à réaliser :

  • Aller dans la console "Gestionnaire des services Internet" puis dans "Propriétés du site Internet", se rendre dans l'onglet "Sécurité du répertoire"> Communications sécurisées > Certificat de serveur > Assistant certificat de serveur Web> Cliquer sur "Suivant"
  • Sélectionner "Créer un certificat" et cliquer sur "Suivant"
  • Sélectionner "Préparer la demande, mais ne pas l'envoyer maintenant" et cliquer sur "Suivant".
  • Donner un nom au certificat, choisir la longueur de la clé et cliquer sur "Suivant"
Image non disponible
  • Donner le nom de l'organisation et de l'unité d'organisation, cliquer sur "Suivant"
  • Donner le nom du serveur (ou nom de domaine DNS si il existe)
  • Donner le nom du pays, du département et de la ville. Cliquer sur "Suivant"
  • Mettre le nom et le chemin du fichier de demande
  • Un récapitulatif des informations est donné
  • Cliquer sur "Terminer"
  • Ensuite, il faut créer le certificat lui-même et pour cela utiliser un navigateur Web. Aller sur http://nom_du_serveur_de_certificat/certsrv/ et sélectionner "Demander un certificat"
  • Sélectionner "Demande avancée". Puis cliquer sur "Suivant".
  • Sélectionnez le type de demande que vous voulez effectuer : créer un certificat pour serveur Web. Cliquer sur "Suivant".
  • Sélectionner "Soumettre une demande de certificat en utilisant un fichier crypté en Base64 PKCS #10 ou une demande de renouvellement en utilisant un fichier crypté en Base64 PKCS #7" puis cliquer sur "Suivant".
  • Il faut à ce moment copier le contenu du fichier "demande_certif_test.txt" qui a été créé précédemment, choisir "Serveur Web" comme modèle de certificat et cliquer sur "Soumettre". Le certificat est créé par l'autorité de certification et apparaît alors "Le certificat que vous avez demandé a été émis." Il faut maintenant associer le certificat crée au site Internet en retournant dans la console Gestionnaire des services Internet.
  • Se rendre dans l'onglet "Sécurité du répertoire"> Communications sécurisées > Certificat de serveur
  • Il faut alors effacer la demande en cours puisque le certificat à été créé. Reprendre l'opération "Communications sécurisées" > "Certificat de serveur". Sélectionner "Attribuer un certificat existant" > "Suivant" > Choisir le bon certificat > "Suivant" > "Suivant" > "Terminer"
  • Le certificat est alors associé au site, il est possible d'utiliser le protocole SSL pour sécuriser la communication. Pour cela, il suffit d'ajouter un "s" après le http, ce qui donne https://mon_serveur_web.

4. Configuration d'IIS pour sécuriser le site avec SSL

A ce stade, nous avons tous les éléments pour sécuriser les échanges entre notre serveur et ses clients. Il s'agît désormais de configurer correctement le serveur, ce qui permettra de sécuriser l'accès au site et d'utiliser uniquement SSL pour se connecter a l'Intranet en entier ou en partie en fonction de ce qui est souhaité. On va ici s'appuyer sur Active Directory pour réglementer les accès. Les autorisations seront donc en relation avec la définition des droits de l'utilisateur dans l'annuaire.

  • Dans "Gestionnaire des services Internet", aller dans les propriétés du site Intranet concerné sur l'onglet "Sécurité du répertoire".
  • Cliquer sur "Modifier" de la partie "Accès anonyme et contrôle d'authentification". Il faut décocher "Accès anonyme" et cocher "Authentification intégrée de Windows", ainsi seul les utilisateurs ayant un compte dans l'Active Directory pourront accéder à l'Intranet ou du moins à la partie concernée, puis cliquer sur "Ok"
  • Cliquer sur "Modifier" dans la partie "Communications sécurisées"
  • Cocher "Exiger un canal sécurisé (SSL)"
Image non disponible
  • Cliquer sur "Ok", puis de nouveau sur "Ok"

Conclusion

L'accès est désormais réglementé et sécurisé, puisque l'on utilise l'authentification intégrée de Windows qui s'appuie sur l'annuaire Active Directory. La sécurisation est assurée par un cryptage SSL. Il est bien évidemment possible de configurer cela pour l'ensemble du site ou pour chaque partie du site de manière très fine et indépendante, celace qui permet des configurations très élaborées. Il est également possible de réglementer de manière plus précise le contrôle d'accès en s'appuyant sur les autorisations NTFS. Nous avons vu ici une utilisation des certificats, mais ils peuvent pas exemple servir à crypter les données sur le disque dur ou à signer numériquement des documents.

Merci beaucoup à Pierre Fauconnier pour la relecture de ce tutoriel.