如何从命令提示符分配SSL证书到IIS7站点

您能否告诉我是否可以使用APPCMD应用程序将SSL证书分配给IIS7中的网站?

我熟悉设置HTTPS绑定的命令

appcmd set site /site.name:"A Site" /+bindings.[protocol='https',bindingInformation='*:443:www.mysite.com'] 

以及如何获得当前的映射

 %windir%\system32\inetsrv\Appcmd 

但似乎无法find任何方式将网站映射到证书(例如说证书散列)

答案是使用NETSH。 例如

 netsh http add sslcert ipport=0.0.0.0:443 certhash='baf9926b466e8565217b5e6287c97973dcd54874' appid='{ab3c58f7-8316-42e3-bc6e-771d4ce4b201}' 

这对我有很大的帮助:Sukesh Ashok Kumar简单的指导,从命令行为IIS设置SSL。 包括使用certutil / makecert导入/生成证书。

http://www.awesomeideas.net/post/How-to-configure-SSL-on-IIS7-under-Windows-2008-Server-Core.aspx

编辑:如果原来的URL是closures的,它仍然可以通过Wayback机器 。

使用PowerShell和Webpipe理模块,可以执行以下操作将SSL证书分配给IIS站点:

 # ensure you have the IIS module imported Import-Module WebAdministration cd IIS:\SslBindings Get-Item cert:\LocalMachine\My\7ABF581E134280162AFFFC81E62011787B3B19B5 | New-Item 0.0.0.0!443 

注意事项…值“7ABF581E134280162AFFFC81E62011787B3B19B5”是要导入的证书的指纹。 所以需要先导入证书库。 New-Item cmdlet接受IP地址(所有IP为0.0.0.0)和端口。

有关更多详细信息,请参阅http://learn.iis.net/page.aspx/491/powershell-snap-in-configuring-ssl-with-the-iis-powershell-snap-in/

我已经在Windows Server 2008 R2以及Windows Server 2012预发行版中testing了这一点。

@David和@orip是正确的。

但是,我想提到的是, 示例中指定的ipport参数(0.0.0.0:443)是MSDN所称的“未指定地址(IPv4:0.0.0.0或IPv6:[::])”。

我去查找它,所以我想我会在这里logging,以节省别人的时间。 本文重点介绍SQL Server,但信息仍然相关:

http://msdn.microsoft.com/en-us/library/ms186362.aspx

Interesting Posts