在使用hostheader的IIS网站上设置现有SSL证书

时间:2016-10-03 23:19:21

标签: powershell iis ssl-certificate netsh

我们的想法是自动将SSL证书链接到IIS 7或更高版本的网站。

服务器中的所有网站都使用相同的IP地址和相同的默认端口。所以它们都被它们的主机头名称区分开来。

我可以毫无问题地手动完成此操作。但是,虽然自动化存在问题。

手动完成时,http.sys中的ssl配置条目记录为HostNameport TestName:443,而不是ipport xx.yy.z.a:443。

所以我想模仿自动化工作的相同手动步骤。但它没有帮助。

我尝试了以下步骤。

  1. 使用以下命令在http.sys中为主机名端口组合创建一个新的ssl配置。
  2. netsh - %http add sslcert hostnameport = Testssl:443 certhash = d70930bb790f89c04c728d9285b64f5fb0258fc7 appid = {01010101-0101-0101-0101-010101010101} certstorename = MY

    1. 使用hostheader名称为网站创建新的网页绑定。

      New-ItemProperty IIS:\ sites \ TestSite -name bindings -value @ {protocol =" https&#34 ;; bindingInformation =" 192.168.1.108:443:Testssl"}

      New-WebBinding -Name TestSite -Protocol https -Port 443 -HostHeader Testssl -IPAddress 192.168.1.108

    2. 通过以上两个步骤,将出现新绑定,但SSL证书未附加到绑定。

      是否无法为http.sys ssl配置中具有相应主机名端口条目的绑定设置SSL证书?

1 个答案:

答案 0 :(得分:0)

在Lex Li的评论的帮助下,以下命令为WORKS。

New-WebBinding -Name TestSite -Protocol https -Port 443 -HostHeader Testssl -IPAddress 192.168.1.108 -SslFlags 1