web-dev-qa-db-ja.com

Powershell-httpsバインディングでSSL証明書を設定する

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

この投稿に示されているように: http://www.iis.net/learn/manage/powershell/powershell-snap-in-configuring-ssl-with-the-iis-powershell-snap-in

ここにも表示されます: PowerShell IIS7スナップインでSSL証明書をhttpsバインディングに割り当てる

私も試しました:

get-item 
      cert:\LocalMachine\MY\$newCert.Thumbprint | 
      new-item -path IIS:\SslBindings\*!443

役に立たないのに、[サイトバインドの編集]ダイアログにSSL証明書が表示されません。

何かご意見は?

20
Kent Fehribach

証明書をspecificサイトに割り当てる必要があります。

Get-WebBinding コマンドレットを使用してサイトのバインディング情報を取得し、AddSslCertificate関数を使用してSSL証明書を設定できます。

$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")
30
Martin Brandl