Configurar o IIS 7.5 com várias ligações de site e SSL?

11

No IIS 7.5, estou tentando fazer isso com dois sites:

Default Web Site is bound to:

(blank host header port 80 - http)
(blank host header port 443 - https)
go.example.com
www71.example.com
the IP address of go.example.com

2nd web site "Beta" is bound to:

beta.example.com
(blank host header port 443 - https)
* using blank only because it doesn't seem to be possible to 
  bind https to a named host header

E ambos precisam trabalhar com SSL. Mas eu tenho esses problemas:

  1. Quando digito beta.example.com, vejo o site go.example.com
  2. Não consigo adicionar a ligação SSL aos dois sites de uma só vez (tenho um único certificado curinga * .example.com). O site beta nem será iniciado se eu adicionar a ligação https a ele.

É assim que eu o configurei:

insira a descrição da imagem aqui

Qual é a maneira correta de configurá-lo?

JK01
fonte

Respostas:

8

Sem extensões SNI , você pode vincular apenas um certificado SSL por par IP: porta. Se você precisar executar 2 HTTPS no mesmo IP - vincule-os a portas diferentes e, em seguida, consulte o site que fornece a porta no URL (por exemplo https://beta.example.com:444/). Você pode usar o mesmo certificado curinga em portas diferentes sem nenhum problema.

Se você tiver mais de um site com o nome do host em branco (para o protocolo HTTP), aquele com ID menor deverá ser um "catch all". O mesmo vale para HTTPS - aquele com ID mais baixo deve interceptar todos os pedidos nessa porta.

Por outro lado, você tem um certificado curinga e vi um artigo que informa que isso pode ser feito no IIS7: http://www.sslshopper.com/article-ssl-host-headers-in-iis-7.html . Eu tentei eu mesmo no passado, mas não funcionou bem para mim - muitas vezes o IIS estava lançando um erro 5xx ao acessar arquivos estáticos (o que parou de acontecer quando ligamos outro host a uma porta diferente). Talvez tenha sido consertado desde então.

LazyOne
fonte
3

Embora essa seja uma pergunta antiga, tive a necessidade de realizar a mesma coisa recentemente. Isso pode ser feito no IIS 7.x usando os certificados de Nome Alternativo do Assunto. Esses certificados são preferíveis aos curingas porque se restringem apenas aos sites listados especificamente, atenuando ataques com base na falsificação de um nome de site falso em um domínio capturado sob um curinga.

Depois que o certificado SAN é importado para o IIS, você pode usar a ferramenta appcmd para especificar a ligação adicional ou editar manualmente applicationHost.config na seção, por exemplo

<site name="SomeSite" id=9>
   <bindings>
     <binding protocol="http" bindingInformation="*:80:SomeSite"/>
     <binding protocol="https" bindingInformatoin="*:443:SomeSite" />
   </bindings>
</site>
David W
fonte