我正在尝试使用PowerShell在IIS站点上为自签名/本地证书设置SSL证书。
我创建证书:
$newCert =
New-SelfSignedCertificate
-DnsName www.mywebsite.ru
-CertStoreLocation cert:\LocalMachine\My
然后尝试设置SSL绑定:
get-item
cert:\LocalMachine\MY\$newCert.Thumbprint |
new-item -path IIS:\SslBindings\0.0.0.0!443
也显示在这里: Powershell IIS7 Snap in Assign SSL certificate to https binding
我也尝试过:
get-item
cert:\LocalMachine\MY\$newCert.Thumbprint |
new-item -path IIS:\SslBindings\*!443
无济于事,我没有在编辑网站绑定对话框中看到SSL证书设置。
有什么想法吗?
答案 0 :(得分:26)
您必须将证书分配给特定网站。
您可以使用Get-WebBinding cmdlet检索网站的绑定信息,并使用$siteName = 'mywebsite'
$dnsName = 'www.mywebsite.ru'
# create the ssl certificate
$newCert = New-SelfSignedCertificate -DnsName $dnsName -CertStoreLocation cert:\LocalMachine\My
# get the web binding of the site
$binding = Get-WebBinding -Name $siteName -Protocol "https"
# set the ssl certificate
$binding.AddSslCertificate($newCert.GetCertHashString(), "my")
功能设置SSL证书:
{{1}}
答案 1 :(得分:2)
使用答案时,我的错误与“卡盘D”相同,我发现还需要执行其他步骤:
在绑定到IIS网站绑定之前,SSL证书必须位于证书存储中。可以使用以下命令在powershell中完成此操作:
Import-PfxCertificate -FilePath "C:\path to certificate file\certificate.pfx" -CertStoreLocation "Cert:\LocalMachine\My"