J'ai parcouru les étapes détaillées dans Comment utilisez-vous https/SSL sur localhost? mais cela crée un certificat auto-signé pour le nom de ma machine, et lors de la navigation via https : // localhost Je reçois l'avertissement IE.
Existe-t-il un moyen de créer un certificat auto-signé pour "localhost" afin d'éviter cet avertissement?
Bien que cette publication soit marquée pour Windows, il s'agit d'une question pertinente sur OS X à laquelle je n'ai pas vu de réponses pour ailleurs. Voici les étapes à suivre pour créer un certificat auto-signé pour localhost sur OS X:
# Use 'localhost' for the 'Common name'
openssl req -x509 -sha256 -nodes -newkey rsa:2048 -days 365 -keyout localhost.key -out localhost.crt
# Add the cert to your keychain
open localhost.crt
Dans Keychain Access
, double-cliquez sur ce nouveau cert localhost. Développez la flèche en regard de "Confiance" et choisissez "Toujours faire confiance". Chrome et Safari devraient maintenant faire confiance à ce cert. Par exemple, si vous souhaitez utiliser ce certificat avec node.js:
var options = {
key: fs.readFileSync('/path/to/localhost.key').toString(),
cert: fs.readFileSync('/path/to/localhost.crt').toString(),
ciphers: 'ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES256-SHA384',
honorCipherOrder: true,
secureProtocol: 'TLSv1_2_method'
};
var server = require('https').createServer(options, app);
Vous pouvez utiliser PowerShell pour générer un certificat auto-signé avec la cmdlet new-selfsignedcertificate:
New-SelfSignedCertificate -DnsName "localhost" -CertStoreLocation "cert:\LocalMachine\My"
Remarque: makecert.exe est obsolète.
Référence de la cmdlet: https://technet.Microsoft.com/itpro/powershell/windows/pkiclient/new-selfsignedcertificate
Après avoir passé beaucoup de temps sur ce problème, je trouvais que chaque fois que je suivais les suggestions d'utilisation de IIS pour créer un certificat auto-signé, je constatais que les options Emis à À et Émis par n'étaient pas correctes. SelfSSL.exe était la clé pour résoudre ce problème. Le site Web suivant fournit non seulement une approche étape par étape pour la création de certificats auto-signés, mais résout également les problèmes Diffusé à et Émis par. Here est la meilleure solution que j'ai trouvée pour créer des certificats auto-signés. Si vous préférez voir le même tutoriel sous forme vidéo cliquez ici .
Un exemple d'utilisation de SelfSSL ressemblerait à quelque chose comme:
SelfSSL /N:CN=YourWebsite.com/V: 1000/S: 2
SelfSSL /? fournira une liste de paramètres avec une explication.
Puisque cette question est étiquetée avec IIS
et que je ne trouve pas de bonne réponse pour obtenir un certificat de confiance, je vais donner mes 2 centimes à ce sujet:
Commencez par utiliser la commande de @AuriRahimzadeh dans PowerShell en tant qu'administrateur:
New-SelfSignedCertificate -DnsName "localhost" -CertStoreLocation "cert:\LocalMachine\My"
C'est bien, mais le certificat n'est pas approuvé et entraînera l'erreur suivante. C'est parce qu'il n'est pas installé dans Trusted Root Certification Authorities
.
Résolvez ceci en démarrant mmc.exe
.
Ensuite aller à:
Fichier -> Ajouter ou supprimer des composants logiciels enfichables -> Certificats -> Ajouter -> Compte d'ordinateur -> Ordinateur local
Développez le dossier Personal
et vous verrez votre certificat localhost
:
Copiez ceci dans Trusted Root Certification Authorities - Certificates
La dernière étape consiste à ouvrir Internet Information Services (IIS) Manager
ou simplement inetmgr.exe
. De là, allez sur votre site, sélectionnez Bindings...
et Add...
ou Edit...
. Définissez https
et sélectionnez votre certificat dans le menu déroulant.
Votre certificat est maintenant approuvé:
Si vous essayez de créer un certificat auto-signé qui vous permette d'aller http://localhost/mysite
alors voici comment le créer.
makecert -r -n "CN=localhost" -b 01/01/2000 -e 01/01/2099 -eku 1.3.6.1.5.5.7.3.1 -sv localhost.pvk localhost.cer
cert2spc localhost.cer localhost.spc
pvk2pfx -pvk localhost.pvk -spc localhost.spc -pfx localhost.pfx
De http://social.msdn.Microsoft.com/Forums/en-US/wcf/thread/32bc5a61-1f7b-4545-a514-a11652f112
Je recommanderais l'outil de Pluralsight pour créer des certificats auto-signés: http://blog.pluralsight.com/selfcert-create-a-self-signed-certificate-interactively-gui-orprogrammatically-in-net
Faites votre cert au format .pfx et importez-le dans IIS. Et ajoutez-le en tant qu'autorité de certification racine de confiance.
Oui et non. Les certificats auto-signés génèrent ce message d'avertissement, car le certificat n'a pas été signé par une autorité de certification de confiance. Vous pouvez envisager différentes options pour supprimer cet avertissement sur votre ordinateur local. Voir les réponses les mieux classées à cette question pour plus de détails:
Que dois-je faire pour qu'Internet Explorer 8 accepte un certificat auto-signé?
J'espère que cela t'aides!
MODIFIER:
Désolé, je ne savais pas initialement que vous étiez obligé de vous héberger sur localhost. Vous pouvez essayer de suivre les instructions sur le lien ci-dessous pour "Générer un certificat auto-signé avec le nom commun correct".
http://www.sslshopper.com/article-how-tore-create-a-self-signed-certificate-in-iis-7.html