IIS 7.5 Création de certificats auto-signés avec une date de validation de plus d'un an

15

Je crée des certificats SSL auto-signés dans IIS 7.5 pour un usage interne. Le problème que j'ai, c'est que je veux les créer pour qu'elles durent 10 ans car ce n'est qu'un environnement de développement.

Je ne vois pas d'option dans IIS 7.5 où vous pouvez spécifier la durée de validité du certificat. Par défaut, il crée des certificats qui expirent dans 1 an.

Existe-t-il un moyen de changer cela afin qu'il les crée afin qu'ils soient valables 10 ans?

user1153199
la source

Réponses:

13

Vous pouvez le faire à l'aide de l' SelfSSL.exeoutil fourni avec le kit de ressources IIS6. Vous pouvez obtenir le kit de ressources ici:

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=17275

Le programme d'installation décompresse simplement les outils dans un dossier et n'interfère pas avec les paramètres de votre machine. L'option d'installation personnalisée vous permet également de choisir les outils que vous souhaitez installer et dans un dossier de votre choix.

Ouvrez une ligne de commande Administrateur et changez le répertoire où vous avez SelfSSLinstallé l'outil de ligne de commande.

Pour générer un nouveau certificat SSL auto-signé qui expire dans 10 ans, exécutez ce qui suit:

selfssl /n:cn=www.mydomain.com / v: 3650 / s: 8 / k: 2048

Cela va générer un ssl où:

  • /n:cn=www.mydomain.com- le SSL est pour www.mydomain.com. Le cn=(nom commun) est important, alors ne le manquez pas.

  • /v:3650 - nombre de jours de validité du certificat, dans ce cas dix ans

  • /s:8 - installez le certificat dans l'ID de site 8

  • /k:2048 - utilisez une longueur de clé de 2048 bits.

Malheureusement, il n'y a aucun moyen de sortir le SSL directement dans un fichier, vous devez l'installer dans un site. La bonne nouvelle est cependant que le certificat est exportable.

Si vous souhaitez que l'avertissement indiquant que SSL n'est pas approuvé lors de la navigation sur des sites utilisant votre SSL auto-signé disparaît, vous pouvez également résoudre ce problème:

  1. Exportez le SSL auto-signé dans un .pfxfichier (vous devez définir un mot de passe, assurez-vous de vous en souvenir)
  2. Lancer (à partir de la ligne de commande ou Démarrer -> Exécuter) mmc certmgr.msc
  3. Naviguez Trusted Root Certificate Authorities -> Certificateset faites un clic droit pour accéder à l' Import...option:

    entrez la description de l'image ici

  4. Suivez l'assistant et spécifiez le .pfxpour importer puis cliquez sur suivant (vous aurez besoin du mot de passe que vous avez défini à l'étape 1):

    entrez la description de l'image ici

  5. À l'étape suivante de l'assistant, nous devons choisir le magasin à utiliser. Cliquez sur le Browse...bouton qui ouvrira la Select Certificate Storefenêtre. Nous devons voir les magasins physiques, alors assurez-vous qu'il y a une coche Show physical stores:

    entrez la description de l'image ici

    Développez Trusted Root Certificate Authoritieset choisissez Local Computerselon la capture d'écran ci-dessus, puis cliquez sur OKpuisNext >

  6. Cliquez sur le Finishbouton de la dernière étape de l'assistant et si tout va bien, vous devriez voir:

    entrez la description de l'image ici

Mises en garde et Gotchas:

  • SelfSSL peut nécessiter l'installation des composants de compatibilité de gestion IIS6. Je ne peux pas le dire parce que mes propres machines l'ont déjà installé et n'ont pas de machine virtuelle à portée de main pour tester cette théorie en les supprimant.

  • Émettez le SSL à cn=www.mydomain.comet non cn=mydomain.comsi vous voulez pouvoir ajouter le SSL au magasin des autorités de certification racines de confiance.

Kev
la source
Salut, Merci beaucoup pour votre aide. A certainement aidé ce que je dois faire. Cheers Jeff
Je ne trouve pas de lien de téléchargement fonctionnel pour le kit de ressources IIS6. Quelqu'un sait où il peut être trouvé?
John Bubriski
@JohnBubriski - grr, MS sont vraiment ennuyeux. Si vous pouvez attendre jusqu'à vendredi, je peux en coller une copie quelque part.
Kev
En fait, je vais bien maintenant, j'ai trouvé un moyen. Je
posterai
0

Pour autant que je comprends, le problème avec IIS 7.x est que vous ne pouvez pas définir l'en-tête d'hôte pour la liaison SSL.

En utilisant l'utilitaire de ligne de commande appcmd, vous devriez pouvoir le faire. Les sites peuvent utiliser le même certificat mais auront des en-têtes d'hôtes différents.

Si vous exécutez les 2 commandes suivantes avec vos données, il doit configurer les en-têtes d'hôte.

c:\Windows\System32\inetsrv>appcmd set site /site.name:"local.yourdomain.com" /+bindings.[protocol='https',bindingInformation='*:443:local.yourdomain.com']

c:\Windows\System32\inetsrv>appcmd set site /site.name:"local.dev.yourdomain.com" /+bindings.[protocol='https',bindingInformation='*:443:local.dev.yourdomain.com']

Malheureusement, il y a autre chose que vous devez faire pour que cela fonctionne, mais je ne sais pas exactement quoi. Je sais que j'ai effectué des réinitialisations IIS et j'ai resélectionné les certificats SSL, mais je ne suis pas sûr de l'ordre dans lequel procéder. Mais je sais que je n'ai rien fait de «fantaisiste» comme utiliser un autre outil.

John Bubriski
la source
John, ça devrait l'être tant que le certificat est chargé sur le serveur. Vous devrez peut-être sélectionner le certificat SSL à utiliser également pour chaque site.
Brent Pabst
Oui, je crois que j'avais un certificat auto-signé déjà configuré pour les 2 sites.
John Bubriski