使用命令行按名称绑定 SSL 证书

Binding SSL certificate by name using command line

尝试使用 InnoSetup 为我的网站自动设置 IIS,包括设置 SSL 证书。

我已经成功地使用 SelfSSL 创建了自签名 SSL 证书,到目前为止一切正常,除了我不确定如何自动执行绑定 SSL 证书(使用 SelfSSL 创建)的最后一个过程我的网站。

参考上图,如何使用命令行告诉IIS将SSL证书(在本例中名为"Testing")绑定到我的网站?

P/S:这里还有一个类似的问题: How to assign a SSL Certificate to IIS7 Site from Command Prompt

但这需要 运行 命令的人事先获得 certhash

好的,所以我刚刚使用 Powershell 为自己找到了解决方案。

这是检索 certhash 的 powershell 脚本:

$hostname = 'example.com';
$certhash = dir cert:localmachine\my | where {$_.Subject -eq "CN=$($hostname)"} | select -first 1 | select-object -ExpandProperty Thumbprint

有了该 certhash 信息,我们现在可以继续使用 netsh 命令将 sslcert 绑定到我们的站点:

netsh http add sslcert ipport=0.0.0.0:443 certhash=$certhash appid="{00112233-4455-6677-8899-AABBCCDDEEFF}"