情况:具有30个站点和10个证书以及一些证书的IIS 7.5服务器可能已过时.过时意味着它们没有绑定到IIS上任何站点的ip:端口.
我可以通过GUI检查每个站点绑定,但这似乎不是最快的方式.
我可以使用某个命令获取使用某个证书的站点列表,其名称如* .example.com.我想我至少需要netsh http show sslcert,但是输出只显示证书哈希而没有站点名称.
我正在使用以下Power
Shell脚本查看包装盒上的所有证书,并且每次尝试在IIS SSL绑定中找到它.
import-module WebAdministration ls cert:\LocalMachine\my | select * | foreach { $found = $false $tp = $_.Thumbprint ls IIS:\SslBindings | Foreach { if ($_.Thumbprint -eq $tp) { Write-Host "Used in $($_.IpAddress) $($_.Host)" $found = $true } } if ($found) { Write-Host $tp -foregroundcolor green Write-Host $_.Subject -foregroundcolor green Write-Host $_.NotAfter -foregroundcolor green } else { Write-Host "Not in use" Write-Host $tp -foregroundcolor red Write-Host $_.Subject -foregroundcolor red Write-Host $_.NotAfter -foregroundcolor red } Write-Host "***************************************************************" }