Linha de comando para configurar o SNI no IIS para Windows 2012

2

Estou tentando concluir o script de criação automatizado do meu servidor Web, que executa o Windows 2012 e possui dois sites SSL, cada um com seu próprio certificado digital.

Estou usando o SNI, que funciona bem quando eu o configuro manualmente, mas quando eu uso o APPCMD para configurar a mesma configuração, não consigo descobrir como selecionar um certificado para os sites na ligação.

Usando a abordagem manual, há uma lista suspensa que você usa para escolher o certificado. Estou procurando a linha de comando equivalente a escolher um certificado dessa lista.

Alguém sabe como você faz isso?

    
por Ads 02.05.2015 / 22:29

2 respostas

0

Aqui está a resposta que encontrei para minha própria pergunta ...

Eu precisava usar o netsh com a seguinte sintaxe: -

netsh http add sslcert hostnameport=www.shifts.org.uk:443 certstorename=MY certhash=<put your hash here> appid={<put your app ID here>}

A parte principal que estava faltando anteriormente era o parâmetro chamado "hostnameport" acima. Espero que isso ajude alguém no futuro.

Atenciosamente,

Anúncios

    
por 14.05.2015 / 20:20
0

Eu não sei sobre o appcmd, eu considero uma ferramenta legada que não recomendo mais usar.

No PowerShell, você indica SNI com o parâmetro SSlFlags, 0 não é SNI, 1 define SNI.

New-WebBinding -Name site1.local -Port 443 -Protocol https -SslFlags 0
New-WebBinding -Name site2.local -Port 443 -Hostheader site2.local -Protocol https -SslFlags 1

Para atribuir um certificado existente, primeiro obtenha a impressão digital do certificado e um GUID e use netsh

$thumb = (Get-ChildItem cert:\LocalMachine\MY | where-object { $_.FriendlyName -match "site2" } | Select-Object -First 1).Thumbprint
$guid = [guid]::NewGuid()
& netsh http add sslcert hostnameport=site2.local:443 certhash=$thumb appid='{$guid'} certstorename=MY

para o site sem uso de SNI:

$thumb = (Get-ChildItem cert:\LocalMachine\MY | where-object { $_.FriendlyName -match "site1" } | Select-Object -First 1).Thumbprint
$guid = [guid]::NewGuid()
& netsh http add sslcert ipport=0.0.0.0:443 certhash=$thumb appid='{$guid'} certstorename=MY
    
por 05.05.2015 / 11:00