경우 인증서가 이미 설치되어 말과 응용 프로그램 풀 ID는 다음을 개인 키에 권한이로
New-WebBinding -Name $WebsiteName -Protocol "https" -Port 443 -IPAddress $IPAddress -HostHeader $HostHeader -SslFlags $sslFlags
물론이 코드를 실행하기 전에 변수를 설정해야합니다. 이것들은 자명하다.
은이는 다음 표에 따라 설정해야합니다 $ sslFlags 변수의 값 설정 : 당신이 중앙 인증서 저장소를 사용하지 않기 때문에이 1로 설정해야합니다 귀하의 경우에는
0 No SNI
1 SNI Enabled
2 Non SNI binding which uses Central Certificate Store.
3 SNI binding which uses Central Certificate store
합니다.
일단 SSL 바인딩을 얻은 후에는 바인딩을 올바른 인증서와 연결해야합니다. 경험을 통해이 작업을 수행하는 가장 쉬운 방법은 netsh.exe 명령을 사용하는 것입니다. Powershell을 직접 사용해도되지만 여러 시간 동안 조사하고 다른 문제를 해결 한 후에도 훨씬 안정적인 netsh를 발견했습니다.
여기서 구문은 바인딩을 설정하는 방법에 따라 다르지만 SNI를 사용하는 경우 다음 구문이 필요합니다. (appid는 걱정하지 마세요. 값이 무엇이든간에 중요하지 않습니다)
netsh http add sslcert hostnameport=$($HostHeader):$($Port) certhash=$Thumbprint appid='{4dc3e181-e14b-4a21-b022-59fc669b0914}' certstorename=MY
또한이 코드에는 변수를 설정해야합니다. 호스트 헤더는 웹 사이트가 바인딩 된 DNS 이름이어야하며 포트는 443 일 가능성이 높으며 $ Thumbprint 변수에는 사용하려는 인증서의 지문 또는 해시가 있어야합니다.이 코드에서와 같이 인증서 공급자를 사용하여 찾을 수 있습니다.
$Thumbprint = (Get-ChildItem -Path cert:\LocalMachine\My | Where-Object {$_.GetNameInfo("SimpleName",$false) -eq "my cert common name"}).Thumbprint
더 많은 도움이 필요하면 질문을 업데이트하십시오. 나는이 분야에서 많은 일을 해왔다.
(미등록)'-SSLFlags 1'에서'새로운 품목의 양보다 더 잘 작동하는 것 같은 SSL을 추가 할 수있는 바인딩 개체의 방법이 실제로있다 'IP 주소를 생략하면 나에게 트릭이 생겼다. 고마워요, 많은 도움이되었습니다! –