localhost에서 https / SSL을 어떻게 사용합니까?에 설명 된 단계를 거쳤습니다 . 그러나 이것은 내 컴퓨터 이름에 자체 서명 된 인증서를 설정하고 https : // localhost 를 통해 탐색 할 때 IE 경고를받습니다.
이 경고를 피하기 위해 "localhost"에 대한 자체 서명 인증서를 작성하는 방법이 있습니까?
localhost에서 https / SSL을 어떻게 사용합니까?에 설명 된 단계를 거쳤습니다 . 그러나 이것은 내 컴퓨터 이름에 자체 서명 된 인증서를 설정하고 https : // localhost 를 통해 탐색 할 때 IE 경고를받습니다.
이 경고를 피하기 위해 "localhost"에 대한 자체 서명 인증서를 작성하는 방법이 있습니까?
답변:
이 게시물은 Windows 태그로 설정되어 있지만 OS X에서는 관련 질문에 대한 답변이 없습니다. OS X 에서 localhost에 대한 자체 서명 인증서를 작성하는 단계는 다음과 같습니다 .
# 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
에서 Keychain Access
,이 새로운 로컬 호스트 인증서를 두 번 클릭합니다. "신뢰"옆의 화살표를 확장하고 "항상 신뢰"를 선택하십시오. Chrome과 Safari는 이제이 인증서를 신뢰해야합니다. 예를 들어 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);
ssh-keygen
openssl 명령이기 때문에, 불필요한 또한 새로운 키 생성 (및 SSH 의해 생성 한 덮어 쓰기).
-subj '/CN=localhost'
받는 openssl
인수.
sudo security add-trusted-cert -p ssl -d -r trustRoot -k ~/Library/Keychains/login.keychain localhost.crt
ERR_SSL_VERSION_OR_CIPHER_MISMATCH
했으며 Chrome 60에서 Safari 10.1.2가 마음에 들지 않습니다.
이 질문에 태그가 붙어 IIS
있고 신뢰할 수있는 인증서를 얻는 방법에 대한 좋은 대답을 찾을 수 없으므로 2 센트를 줄 것입니다.
먼저 PowerShell의 @AuriRahimzadeh 명령을 관리자로 사용하십시오.
New-SelfSignedCertificate -DnsName "localhost" -CertStoreLocation "cert:\LocalMachine\My"
이것은 좋지만 인증서를 신뢰할 수 없으며 다음과 같은 오류가 발생합니다. 에 설치되어 있지 않기 때문입니다 Trusted Root Certification Authorities
.
를 시작하여이 문제를 해결하십시오 mmc.exe
.
그런 다음
파일-> 스냅인 추가 또는 제거-> 인증서-> 추가-> 컴퓨터 계정-> 로컬 컴퓨터. Finish를 클릭하십시오.
Personal
폴더를 확장하면 localhost
인증서 가 표시됩니다 .
인증서를 Trusted Root Certification Authorities - Certificates
폴더에 복사하십시오 .
마지막 단계는 열거 Internet Information Services (IIS) Manager
나 간단히하는 것 inetmgr.exe
입니다. 거기에서 사이트로 이동하여 Bindings...
및 Add...
또는을 선택하십시오 Edit...
. https
드롭 다운에서 인증서를 설정 하고 선택하십시오.
귀하의 인증서는 이제 신뢰할 수 있습니다 :
PowerShell을 사용하여 new-selfsignedcertificate cmdlet으로 자체 서명 된 인증서를 생성 할 수 있습니다.
New-SelfSignedCertificate -DnsName "localhost" -CertStoreLocation "cert:\LocalMachine\My"
참고 : makecert.exe는 더 이상 사용되지 않습니다.
Cmdlet 참조 : https://technet.microsoft.com/itpro/powershell/windows/pkiclient/new-selfsignedcertificate
-KeyLocation
플래그로 위치를 지정할 수 있습니다.
이 문제에 대해 많은 시간을 보낸 후 IIS를 사용하여 자체 서명 인증서를 만드는 제안을 따를 때마다 발급 대상 및 발급 대상이 올바르지 않은 것을 알았습니다. SelfSSL.exe가이 문제를 해결하는 열쇠였습니다. 다음 웹 사이트는 자체 서명 된 인증서를 만드는 단계별 접근 방식을 제공했을뿐만 아니라 발급 및 문제 별 문제도 해결했습니다. 자체 서명 인증서를 만드는 데 가장 적합한 솔루션은 다음과 같습니다 . 비디오 형식으로 동일한 자습서를 보려면 여기를 클릭하십시오 .
SelfSSL의 샘플 사용은 다음과 같습니다.
SelfSSL /N:CN=YourWebsite.com / V : 1000 / S : 2
SelfSSL /? 설명과 함께 매개 변수 목록을 제공합니다.
당신이 갈 수있는 자체 서명 된 인증서를 만들려고한다면 http://localhost/mysite
여기에 그것을 만드는 방법이 있습니다
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
에서 http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/32bc5a61-1f7b-4545-a514-a11652f11200
pvk2pfx -spc
모두 수용 를 .spc 및 .CER
자체 서명 인증서를 만들기위한 Pluralsight 도구를 추천합니다 : http://blog.pluralsight.com/selfcert-create-a-self-signed-certificate-interactively-gui-or-programmatically-in-net
인증서를 .pfx로 만들고 IIS로 가져옵니다. 신뢰할 수있는 루트 인증 기관으로 추가하십시오.
예, 아니오 자체 서명 된 인증서는 신뢰할 수있는 인증 기관에서 인증서에 서명하지 않았기 때문에 해당 경고 메시지가 표시됩니다. 로컬 컴퓨터에서이 경고를 제거하기 위해 고려할 수있는 몇 가지 옵션이 있습니다. 자세한 내용은이 질문에 대한 최고 답변을 참조하십시오.
자체 서명 된 인증서를 수락하려면 Internet Explorer 8을 사용하려면 어떻게해야합니까?
도움이 되었기를 바랍니다!
편집하다:
죄송합니다, 처음에 당신이 localhost에 제한되어 있다는 것을 알지 못했습니다. 아래 링크에서 "올바른 일반 이름으로 자체 서명 된 인증서 생성"에 대한 지시 사항을 따르십시오.
http://www.sslshopper.com/article-how-to-create-a-self-signed-certificate-in-iis-7.html