O que é SNI (Server Name Indication)?

SNI (Indicação do nome do servidor)

A indicação de nome de servidor (SNI) é uma parte essencial do protocolo TLS, permitindo que vários sites com certificados SSL distintos compartilhem um único endereço IP. Isso elimina a necessidade de endereços IP separados para cada domínio, tornando a hospedagem na Web mais eficiente e econômica. Antes da SNI, a hospedagem de sites protegidos por SSL exigia vários IPs, o que aumentava os custos e a complexidade. Agora, as empresas podem proteger vários domínios em um único servidor.

Neste artigo, explicaremos o que é a SNI, como ela funciona, seus benefícios e por que ela se tornou essencial para a hospedagem eficiente de sites seguros.


Índice

  1. O que é SNI (Server Name Indication)?
  2. Como funciona a indicação do nome do servidor?
  3. O problema que o SNI resolve
  4. História e desenvolvimento do SNI
  5. Benefícios de usar o SNI
  6. Certificados SNI e SSL/TLS
  7. Problemas de compatibilidade com o SNI
  8. Preocupações de segurança e privacidade relacionadas à SNI

O que é SNI (Server Name Indication)?

O Server Name Indication (SNI) é uma extensão do protocoloTransport Layer Security (TLS). Ela permite que um cliente, como um navegador da Web, especifique o nome do domínio que está tentando acessar durante o handshake do TLS. Esse processo permite que um servidor da Web hospede vários domínios com certificados SSL/TLS individuais em um único endereço IP.

Sem a SNI, os servidores não saberiam qual certificado apresentar, o que poderia resultar em um erro, causando falha na conexão. A SNI desempenha um papel fundamental na solução desse problema, indicando a qual domínio o cliente está se conectando antes que a conexão seja totalmente estabelecida.


Como funciona a indicação do nome do servidor?

O SNI faz parte do handshake do TLS que ocorre quando um cliente (como um navegador) tenta estabelecer uma conexão segura com um servidor. Aqui está um detalhamento de como ele funciona:

  1. O cliente envia uma mensagem Client Hello para o servidor, que inclui a extensão SNI especificando o nome de domínio ao qual está tentando se conectar.
  2. O servidor analisa o campo SNI e seleciona o certificado SSL/TLS apropriado com base no nome de domínio solicitado.
  3. Depois que o certificado é apresentado, o handshake TLS prossegue normalmente, garantindo que a conexão seja criptografada e segura.

Esse processo evita o erro de “incompatibilidade de nome comum”, em que o certificado SSL não corresponde ao nome de domínio que o cliente está tentando acessar. A SNI garante que o certificado correto seja apresentado para cada domínio hospedado no mesmo endereço IP.


O problema que o SNI resolve

Antes da introdução do SNI, os servidores da Web exigiam endereços IP separados para cada domínio usando seu próprio certificado SSL. Isso representava um problema significativo, especialmente com o esgotamento dos endereços IPv4. Como o IPv4 é limitado a aproximadamente 4,3 bilhões de endereços exclusivos, muitos provedores de hospedagem tiveram dificuldades para acomodar vários domínios em um número limitado de endereços IP.

A SNI resolve esse problema permitindo que vários domínios com certificados separados sejam hospedados no mesmo endereço IP. Por exemplo, sem a SNI, uma empresa como a GoDaddy, que hospeda milhões de domínios, precisaria de um endereço IP separado para cada domínio que usa HTTPS. O SNI elimina essa limitação, permitindo que um servidor hospede vários domínios em um único IP.


História e desenvolvimento do SNI

A SNI foi oficialmente introduzida em 2003 como parte da extensão do protocolo TLS (Transport Layer Security). Inicialmente, nem todos os navegadores e servidores eram compatíveis com a SNI, mas à medida que o uso da Internet se expandiu e a necessidade de soluções de hospedagem mais eficientes se tornou urgente, o suporte à SNI cresceu.

Atualmente, a maioria dos navegadores e servidores modernos oferece suporte à SNI, tornando-a um componente fundamental da infraestrutura de hospedagem na Web. No entanto, ainda existem alguns sistemas legados, como o Windows XP e versões mais antigas do Android, que não são compatíveis com a SNI, o que pode causar problemas de compatibilidade. Apesar disso, a SNI se tornou uma solução padrão para a hospedagem de vários sites protegidos por SSL em servidores compartilhados.


Benefícios de usar o SNI

A SNI traz vários benefícios importantes tanto para os proprietários de sites quanto para os provedores de hospedagem. Esses benefícios incluem:

  • Eficiência de custo: Ao permitir que vários domínios compartilhem um único endereço IP, a SNI reduz a necessidade de endereços IP adicionais. Isso é especialmente importante à luz do problema de exaustão de endereços IPv4, em que os endereços IPv4 disponíveis estão diminuindo rapidamente.
  • Hospedagem simplificada: A SNI possibilita que os provedores de hospedagem atendam a muitos sites protegidos por SSL a partir do mesmo servidor e endereço IP. Isso elimina a complexidade de gerenciar vários IPs para diferentes certificados SSL.
  • Melhor alocação de recursos: Os provedores de hospedagem podem economizar recursos valiosos executando vários domínios em menos servidores, mantendo a criptografia HTTPS para cada site.

Além disso, com a adoção do IPv6 ainda em andamento, a SNI oferece uma solução temporária, porém eficaz, para gerenciar o número crescente de sites hospedados em um pool limitado de endereços IPv4.


Certificados SNI e SSL/TLS

Uma das principais funções da SNI é permitir o uso de vários certificados SSL/TLS em um único servidor ou endereço IP. Tradicionalmente, quando os sites eram hospedados no mesmo servidor, cada domínio precisava de seu próprio IP dedicado para evitar conflitos de SSL. No entanto, a SNI elimina esse requisito ao garantir que o certificado de cada domínio seja atribuído corretamente com base no nome do host solicitado durante o handshake TLS.

O SNI é compatível com vários tipos de certificados SSL, incluindo:

  • Certificados SSL de domínio único: Para sites individuais, a SNI permite que esses certificados funcionem perfeitamente sem exigir um endereço IP exclusivo.
  • Certificados SSL de vários domínios (SAN): A SNI também pode ser usada em conjunto com certificados Subject Alternative Name (SAN), que permitem que um único certificado cubra vários domínios. Embora os certificados SAN possam simplificar o gerenciamento de SSL, eles tendem a ser maiores e menos flexíveis do que os certificados individuais emparelhados com o SNI.

O SNI também é compatível com as versões mais recentes do TLS, incluindo o TLS 1.2 e o TLS 1.3, oferecendo criptografia e desempenho aprimorados.


Problemas de compatibilidade com o SNI

Embora a SNI seja amplamente suportada por navegadores e sistemas operacionais modernos, ela enfrenta alguns problemas de compatibilidade com sistemas mais antigos. Isso inclui versões antigas do Internet Explorer no Windows XP e versões desatualizadas do Android (pré-2.3).

Se um cliente estiver usando um navegador ou sistema operacional que não seja compatível com o SNI, o servidor poderá não apresentar o certificado SSL correto, o que resultará em um erro de “incompatibilidade de nome” ou em um aviso de conexão insegura.

As soluções alternativas para clientes que não oferecem suporte ao SNI incluem:

  • Atribuir um endereço IP dedicado ao domínio.
  • Usar certificados de vários domínios (SAN) que incluem todos os domínios relevantes em um único certificado.

Felizmente, o percentual de usuários afetados por esse problema está diminuindo à medida que aumenta a adoção de navegadores e sistemas modernos.


Embora a SNI resolva muitos desafios de hospedagem, ela não está isenta de preocupações com segurança e privacidade. Um risco notável é que a SNI expõe o nome do host do site durante o handshake do TLS. Isso pode permitir que terceiros, como espiões da rede, vejam qual site um usuário está tentando visitar, mesmo que o restante da sessão esteja criptografado.

Para resolver esse problema de privacidade, foi introduzido o Encrypted SNI (ESNI). O ESNI criptografa o nome do host na mensagem Client Hello durante o handshake do TLS, impedindo que pessoas de fora vejam a qual domínio o usuário está se conectando.

Além do ESNI, tecnologias mais recentes, como DNS sobre HTTPS (DoH) e TLS 1.3 oferecem privacidade e segurança aprimoradas, garantindo que tanto o nome do host quanto os dados do usuário permaneçam criptografados desde o início da conexão.


Linha de fundo

A SNI (Server Name Indication, indicação de nome de servidor) é uma tecnologia essencial que permite que vários sites protegidos por SSL sejam hospedados em um único endereço IP, o que torna mais econômico e flexível para os provedores de hospedagem na Web. À medida que a demanda por certificados SSL cresce, a SNI garante que as empresas possam fornecer conexões seguras e criptografadas para vários domínios sem a necessidade de endereços IP adicionais.

Se você deseja proteger seu site com um certificado SSL, SSL Dragon oferece uma ampla variedade de opções acessíveis, desde certificados de domínio único até certificados Wildcard SSL e Multi-Domain SSL (SAN), garantindo que você possa aproveitar facilmente a SNI e, ao mesmo tempo, manter seus dados e clientes seguros.

Economize 10% em certificados SSL ao fazer seu pedido hoje!

Emissão rápida, criptografia forte, 99,99% de confiança no navegador, suporte dedicado e garantia de reembolso de 25 dias. Código do cupom: SAVE10

A detailed image of a dragon in flight
Escrito por

Redator de conteúdo experiente, especializado em certificados SSL. Transformação de tópicos complexos de segurança cibernética em conteúdo claro e envolvente. Contribua para melhorar a segurança digital por meio de narrativas impactantes.