Múltiplos certificados em um só IP
Server Name Indication (SNI), ou traduzido livremente como "Indicação de Nome do Servidor", é uma extensão ao protocolo TLS, que permite ao cliente (navegador de internet), informar ao servidor, no início da negociação (ou conexão), o endereço do site ao qual está tentando acessar. Desta forma, um mesmo servidor poderá utilizar vários certificados SSL associados a um mesmo IP e porta TCP (no caso, a 'porta https').
Antigamente havia uma limitação na comunicação por https, onde o endereço do site só era informado depois que a comunicação era feita. O problema era que o certificado SSL já era carregado nessa comunicação, não permitindo ao servidor 'escolher' o certificado correto do site a ser disponibilizado para o cliente.
Sendo assim, através do SNI, não há mais a obrigatoriedade de se utilizar IPs exclusivos para cada certificado SSL, permitindo uma portabilidade maior de IPs.
Todos os navegadores de internet mais recentes já suportam este tipo de implementação. Consulte abaixo a lista de compatibilidade.
Na Task, este tipo de configuração é possível para os certificados gratuitos Let's Encrypt. Portanto, não é necessário contratar IPs adicionais para manter seu site seguro.
Compatibilidade
Aplicativo | Tipo | Disponível | Observações | Disponível desde |
---|---|---|---|---|
Internet Explorer | Navegador de internet | Predefinição:Yes | Desde a versão 7 on Vista (Não disponível em XP) | 2006 |
Mozilla Firefox | Navegador de internet | Predefinição:Yes | Desde a versão 2.0 | 2006 |
cURL | Comando e biblioteca | Predefinição:Yes | Desde a versão 7.18.1 | 2008 |
Safari | Navegador de internet | Predefinição:Yes | Não disponível em Windows XP | |
Google Chrome | Navegador de internet | Predefinição:Yes | Since 6.0<ref name="digicert">Predefinição:Cite web</ref> | 2010 |
BlackBerry 10 | Navegador de internet | Predefinição:Yes | Supported in all BB10 releases | 2013 |
BlackBerry OS | Navegador de internet | Predefinição:No | Não disponível em 7.1 or earlier | |
elinks | Navegador de internet | Predefinição:No | Não disponível em 0.12pre6 or earlier | |
Windows Mobile | Navegador de internet | Predefinição:Yes | Some time after 6.5 | |
Android default browser | Navegador de internet | Predefinição:Yes | Honeycomb (3.x) for tablets and Ice Cream Sandwich (4.x) for phones | 2011 |
Firefox for Android | Navegador de internet | Predefinição:Partial | Supported for browsing, Sync and other services don't support SNI<ref>Predefinição:Cite web</ref><ref>Predefinição:Cite web</ref> | |
wget | Comando | Predefinição:Yes | Desde a versão 1.14 | 2012 |
Nokia Browser for Symbian | Navegador de internet | Predefinição:No | ||
Opera Mobile for Symbian | Navegador de internet | Predefinição:No | Não disponível em Series60 | |
IBM HTTP Server | Web server | Predefinição:Yes | Desde a versão 9.0.0<ref>Predefinição:Cite web</ref><ref>Predefinição:Cite web</ref> | |
Apache Tomcat | Web server | Predefinição:Yes | Não disponível before 8.5 (backport from 9) | |
Apache HTTP Server | Web server | Predefinição:Yes | Desde a versão 2.2.12 | 2009 |
Microsoft IIS | Web server | Predefinição:Yes | Desde a versão 8 | 2012 |
nginx | Web server | Predefinição:Yes | Desde a versão 0.5.23 | 2007 |
Jetty | Web server | Predefinição:Yes | Desde a versão 9.3.0 | 2015 |
Qt | Biblioteca | Predefinição:Yes | Desde a versão 4.8 | 2011 |
Mozilla NSS server side | Biblioteca | Predefinição:No | <ref>Predefinição:Cite web</ref> | |
4th Dimension | Biblioteca | Predefinição:No | Não disponível em 15.2 or earlier | |
Java | Biblioteca | Predefinição:Yes | Desde a versão 1.7 | 2011 |
ColdFusion / Lucee | Biblioteca | Predefinição:Yes | ColdFusion Desde a versão 10 Update 18, 11 Update 7, Lucee Desde a versão 4.5.1.019, Version 5.0.0.50 | 2015 |
Erlang | Biblioteca | Predefinição:Yes | Desde a versão r17 | 2013 |
Go | Biblioteca | Predefinição:Yes | Desde a versão 1.4 | 2011 |
Perl | Biblioteca | Predefinição:Yes | Since Net::SSLeay version 1.50 and IO::Socket::SSL version 1.56 |
2012 |
PHP | Biblioteca | Predefinição:Yes | Desde a versão 5.3 | 2014 |
Python | Biblioteca | Predefinição:Yes | Supported in 2.x from 2.7.9 and 3.x from 3.2 (in ssl , urllib[2] and httplib modules) |
2011 for Python 3.x and 2014 for Python 2.x |
Ruby | Biblioteca | Predefinição:Yes | Desde a versão 2.0 (in net/http ) |
2011 |