Installer un certificat avec Microsoft IIS8.X+ et Windows Serveur 2012+
Récupération de votre certificat sur votre serveur
Cette méthode n'est valide que si vous avez généré votre CSR depuis Windows. Si vous avez utilisé notre outil Keybot, veuillez vous référer à notre guide d'import de pfx.
- Récupérez votre certificat au format p7b (fichier global d'installation) en suivant le lien contenu dans votre email de confirmation de fabrication ou via votre espace client.
- Créez/Déplacez le fichier p7b sur votre serveur.
Importer le certificat
- Lancez l'outil Internet Information Services (IIS) Manager depuis les Administrative tools.
- Sélectionnez la fonctionnalité Server Certificates
- Sélectionnez Complete Certificate Request dans le menu Actions à droite de la fenêtre.
- Sélectionnez ensuite votre fichier p7b et assignez-lui un nom reconnaissable ainsi qu'un store.
- Validez ensuite pour ajouter votre certificat.
- Il devrait maintenant être disponible dans votre liste de certificats.
Lier le certificat
- Dans le Internet Information Services (IIS) Manager, sélectionnez votre site.
- Sélectionnez l'option Bindings du menu Actions situé sur la droite de la fenêtre.
- Sélectionnez ensuite Add
- Sélectionnez ensuite le protocole HTTPS ainsi que le certificat ajouté précédemment.
Cas du SNI
Si vous devez installer plusieurs certificats pour différents domaines avec la meme adresse IP, il faut activer le protocole SNI en activant la case "Exiger l'indication du nom de serveur".
Erreur possible
Il se peut que lorsque vous activez le SNI, et que votre installation soit correcte, le certificat présenté par votre serveur ne soit pas le bon et que l'erreur SSL_ERROR_BAD_CERT_DOMAIN s'affiche.
Dans ce cas il faut vérifier qu'il ne reste pas d'anciens certificats ou d'anciennes liaisons qui viennent perturber le bon fonctionnement du serveur.
- Dans la MMC de certificats, dans le dossier personnel, vérifier que vous ne possédez que des certificats valides. Exportez si nécessaire les certificats expirés avec la clé privée, et ensuite supprimez-les de la MMC.
- Lancez un invité de commande avec les droits Administrateurs, et tapez la commande suivante :
netsh http show sslcert
Cette commande permet de lister toutes les liaisons actives entre votre/vos certificat(s) et le(s) domaine(s) associé(s).
Si dans la liste des liaisons, un des certificats est rattaché à une adresse IP, ce n'est pas bon. Voici un exemple :
Adresse IP:port : 192.168.2.1:443 ... ...
Il faut supprimer cette liaison avec la commande suivante :
netsh http delete sslcert ipport={AdresseIPlocale}:{port}
En reprenant l'exemple du dessus, cela donne :
netsh http delete sslcert ipport=192.168.2.1:443
Recommandations de sécurité
- Nous vous recommendons de désactiver les protocoles SSLv2 et SSLv3.
- Nous vous recommandons l'activation d'HSTS (configuration iis).
- Pour mitiger les risques de sécurité liés à la configuration de Diffie-Helman et à la faille de sécurité Logjam, nous vous recommendons de configurer les Cipher Suites de IIS. Pour plus d'informations, consultez la documentation ainsi que cette page de documentation Microsoft ainsi que les recommandations mozilla liées à la compatibilité. (à utiliser à titre indicatif, ces dernières n'étant pas compatibles avec IIS, contrairement aux deux liens précédents).
- Nous vous recommandons aussi de désactiver les algorithmes de chiffrement RC4 et 3DES. Voir notre documentation.
Découvrez aussi IIS Crypto par NARTAC, un outil qui vous permettra de facilement faire vos modifications dans IIS (aussi compatible IIS6)
Il existe également un script powershell permettant d'appliquer toutes ces recommandations de sécurité : lien externe.
Liens utiles
- Générer une clé privée et un CSR sur un serveur Microsoft (IIS8+ / Windows Server 2012+)
- Exporter votre certificat et sa clef privée sur un serveur Microsoft (IIS8+ / Windows Server 2012+)
- Importer un certificat au format PKCS#12 (.pfx/.p12) sur un serveur Microsoft (IIS8+ / Windows Server 2012+)
- Désactiver un certificat intermédiaire ou racine sur Windows Server
- Créer un répertoire commençant par un point sous Windows