Posso definir vários certificados SSL para hosts virtuais com o Lighttpd?

3

Posso definir vários certificados SSL para hosts virtuais usando o servidor da Web Lighttpd?

Eu tenho várias lojas virtuais no meu servidor (cada loja virtual tem seu próprio domínio) e eu preciso configurar um certificado SSL para cada uma delas.

obrigado Patrick

    
por aneuryzm 10.11.2010 / 11:01

2 respostas

1

Você só pode configurar um certificado SSL por par de portas / ip que você usa. Se você tiver um endereço IP e vários hosts virtuais no mesmo endereço IP, ele não funcionará, exceto se você obtiver um certificado SAN com todo o host / domínio virtual contido no certificado SAN. Isso vai ficar caro.

O motivo dessa limitação é que o servidor da Web precisa descriptografar a solicitação SSL para ver qual host o cliente está tentando acessar. Isso será feito usando o certificado SSL ligado a essa porta. O cliente receberá um certificado diferente que não corresponderá ao host / domínio que o cliente está esperando.

Isso causará todos os tipos de avisos de segurança no lado do cliente.

Correção:

Por favor, olhe para Lighttpd SNI , A indicação do nome do servidor é suportada pelo Lighttpd desde 1.4.24, que permitirá mais de um vhost por ip para SSL, conforme indicado por jae . O suporte ao navegador é limitado, embora inclua o IE no XP.

    
por 10.11.2010 / 11:24
3

O SNI é o caminho para isso. Aqui está um exemplo rápido:

$HTTP["host"] == "www.domain1.com" {
     server.document-root = "/home/www/domain1.com/public"
     server.errorlog = "/var/log/lighttpd/domain1.com/error.log"
     accesslog.filename = "/var/log/lighttpd/domain1.com/access.log"

     server.error-handler-404 = "/index.php"

     ssl.pemfile = "/etc/lighttpd/certs/www.domain1.com.pem"
}

e se você quiser adicionar outro domínio com seu próprio SSL,

$HTTP["host"] == "www.domain2.com" {
         server.document-root = "/home/www/domain2.com/public"
         server.errorlog = "/var/log/lighttpd/domain2.com/error.log"
         accesslog.filename = "/var/log/lighttpd/domain2.com/access.log"

         server.error-handler-404 = "/index.php"

         ssl.pemfile = "/etc/lighttpd/certs/www.domain2.com.pem"
}

Tenha em mente que nem todos os navegadores suportam isso.

    
por 23.01.2013 / 13:13

Tags