Mise en place de https sur IIS

Procédure de mise en place d'un serveur IIS sous Microsoft Windows 2003 avec un certificat Serveur.
Implémentation d'un cryptage type SSL pour un site web en https.

La base de cette documentation est faite sur un Serveur Windows 2003 Standard Edition SP2 installé avec 5 utilisateurs simultanés.


Installation de IIS

Sous Windows 2003 le plus simple est d'ajouter un rôle pour installer IIS. Pour afficher l'écran de gestionnaire de serveur :

Puis après avoir cliquer sur "Ajouter ou supprimer un rôle" :

Cliquez sur Suivant

Choisissez Configuration personnalisée :

Cliquez suir suivant.

Selectionner IIS comme sur l'image :

Cliquez sur suivant

Sélectionner les options que vous voulez et cliquez sur suivant.

Un écran de récapitulatif apparait ensuite :

Cliquez sur suivant

Terminer l'installation en cliquant sur Terminer :

Il faut ensuite vérifier que tout est correctement présent. Pour cela on utilise l'ajout suppression de composant Windows :

On choisit "Serveur d'application" dans la liste et on clique sur Détails

On choisit Services IIS dans la liste et on clique sur Détails :

Etc... Jusqu'à tout ce que vous vouliez installé soit présent sur le système.

Installation du Certificat Serveur

Toujours dans l'ajout suppression de composant Windows :

Repérez dans la liste Services de Certificats :

Cochez la case correspondant et répondez "oui" au popup qui suit :

Vous devez obtenir cet écran :

Après avoir cliquer sur Suivant, vous avez la possibilité de chosir le niveau d'autorité de serveur de certificat. Ici vu qu'il s'agit d'un seul serveur de certificat qui délivera un certificat à un seul serveur d'un seul domaine Web on choisi "Autorité racine autonome".

L'écran suivant vous permet de configurer la durée de vie de votre certificat Racine ainsi que le nom de votre serveur de certificat.

Puis le lieu de stockage des logs :

Vous avez ensuite une alerte à laquelle je vous conseille fortement de répondre "OUI"

Puis la fenêtre d'installation apparait :

Puis Terminer.

Installation du SSL sur notre site Web

Nous allons utilisé ici deux consoles MMC : celle gèrant IIS ()et celle gèrant le serveur de certificat ()

Dans un premier temps vérifions que notre site web fonctionne en http classique dans un navigateur web en entrant l'adresse http://localhost :

Vu que nous n'avons absoluement rien configuré ni rien placé comme fichiers web le site affiche la page par defaut de IIS.

Pour simplifier les chose je vais configuré ici le https sur le site par defaut, sans rien d'autre. Donc ce qui m'interesse dans la MMC de IIS c'est :

Pour accèder à la configuration du serveur Web il faut cliquer avec le bouton droit de la souris sur "Site Web par défaut" et choisir dans le menu déroulant "Propriété" :

Ce qui donne ensuite =>

Cliquez sur l'onglet "Sécurité de répertoire" :

Cliquez ensuite sur "Certificat de Serveur" :

On obtient :

Choisissez ensuite Créer un certificat

Vous obtenez ensuite une fenêtre de ce genre. Cliquez sur Suivant.

Ensuite vous paramètrez le site sur lequel porte votre Certificat ainsi que sa longueur :

Saisir ensuite les information de votre organisation

Saisir le nom du Site :

Il vous sera encore demandé d'autres petits renseignements pour votre certificat :

Puis vous allez enregistrer le fichier "req" qui vous permetra de gérer votre certificat :

Un petit résumer vous est ensuite affiché :

Terminer en Cliquant sur le bouton "Terminer" du dernier écran :

Lancez ensuite un Navigateur Web et connectez-vous sur l'interface Web de Gestion des certificat : http://localhost/certsrv/ :

Cliquez sur "Demander un Certificat" :

Cliquer ensuite sur "Demande de certificat avancée".

Cliquez sur "Soumettez une demande de certificat en utilisant un fichier CMC ou PKCS #10 codé en base 64, ou soumettez une demande en utilisant un fichier PKCS #7 codé en base 64"

Afin de remplir ce formulaire vous allez avoir besoin du fichier "req" que nous avons créé tout à l'heure. Ouvrez un explorateur Windows et placez-vous à l'endroit où vous avez enregistré le fichier certreq.txt (par defaut à la racine de c:\ ).

Ouvrez le fichier dans le notepad :

Sélectionnez tout le contenu en utilisant de préfrérence le raccourcit clavier "Ctrl + A" ou via le menu "Edition" "Selectionner tout".

Effectuez un "Copier" dans le presse-papier ("Ctrl +C" ou "Ctrl + Inser" ou "edition" "Copier")

Coller ensuite dans le formulaire Web intitulé "Demande enregistrée" :

Cliquez sur le bouton Envoyer

Votre demande est achevée avec cet écran :

Il faut maintenant émettre le certificat, pour cela il faut utilisé la console "Authorité de certification"

Dans celle-ci placez-vous dans le conteneur "Demandes en attente" comme sur l'image ci-après :

Vous trouverez dans la fenêtre de droite votre certificat qui est en attente (cf ci-dessus).

Sélectionner-le puis utilisez le menu Action :

Cliquez sur Délivrer

Vous trouverez votre certificat dans le conteneur "Certificat délivré" :

Retournez ensuite à votre navigateur à l'adresse http://localhost/certsrv/

Et cliquez sur "Afficher le statut d'une requête de certificat en attente"

Selectionnez Votre demande en cliquant dessus.

Cliquez sur "Télécharger le certificat"

 

Enregistrez le fichier à la racine de c:\

Reprennez ensuite la console IIS :

Cliquez avec le bouton droit de la souris sur "Site Web par défaut" :

Cliquez sur Propriétés puis allez dans l'onglet Sécurité répertoire :

Cliquez sur "Certificat de serveur" :

Cliquez sur Suivant puis vous obtiendrez cet écran :

Cliquez sur Suivant.

Utilisez le bouton "Parcourir" afin de sélectionner votre fichier certificat :

Cliquez sur Suivant puis choisissez le port SSL à utiliser.

Vous obtenez un petit résumer.

Terminer la configuration en cliquant sur Terminer

Il faut ensuite modifier le type d'accès en cliquant sur "Modifier" :

Cochez la case Requérir un canal sécurisé (SSL) :

Lancez un navigateur afin de tester :

Vous devriez obtenir unmessage comme celui-ci ou à peu près en fonction de votre navigateur :

Cliquez sur Afficher le certificat pour voir votre nouveau certificat.

Les connexion sur votre sites sont maintenant crypté en SSL.