Se voce tem um site, precisa de SSL. Ponto final. Nao e mais uma recomendacao ou um extra opcional — e um requisito fundamental para qualquer presenca online profissional. Neste artigo, vamos explicar em detalhes o que e SSL/TLS, como funciona, quais tipos de certificado existem e como garantir que seu site esteja seguro.

O que e SSL/TLS?

SSL (Secure Sockets Layer) e o protocolo criptografico que cria uma camada segura entre o navegador do usuario e o servidor onde seu site esta hospedado. O sucessor moderno do SSL e o TLS (Transport Layer Security), mas o nome "SSL" acabou virando sinonimo no mercado.

A funcao basica do SSL/TLS e criptografar toda a comunicacao entre o cliente e o servidor para que, mesmo que alguem intercepte os dados, nao consiga ler o conteudo. Isso protege senhas, dados de cartao de credito, cookies de sessao e qualquer informacao trafegada.

Historico do protocolo

A evolucao do SSL/TLS e importante para entender a seguranca atual:

  • SSL 1.0 (1994): Desenvolvido pela Netscape, nunca foi publicado publicamente devido a falhas graves de seguranca.
  • SSL 2.0 (1995): Primeira versao publica, mas rapidamente considerada insegura. Vulneravel a ataques de downgrade.
  • SSL 3.0 (1996): Substancialmente melhorado, mas ainda vulneravel ao ataque POODLE (2014). Hoje e considerado obsoleto e inseguro.
  • TLS 1.0 (1999): Sucessor do SSL 3.0, definido pela RFC 2246. Ainda assim, vulneravel a ataques como BEAST.
  • TLS 1.1 (2006): Protecao contra ataques CBC. Pequenas melhorias incrementais.
  • TLS 1.2 (2008): Versao mais utilizada ate hoje. Suporta criptografia autenticada (AEAD), como AES-GCM. Permite algoritmos mais seguros como ECDHE.
  • TLS 1.3 (2018): Versao mais moderna e segura. Reduz o handshake de 2 trips para 1 (0-RTT opcional). Remove algoritmos inseguros (RSA key exchange, CBC, RC4). Melhora significativamente a performance.

Atencao: Desde 2018, o Chrome marca todos os sites HTTP como "Nao Seguro". Ter SSL nao e mais opcional — e requisito basico para qualquer site profissional.

Como o SSL funciona na pratica?

O SSL/TLS combina dois tipos de criptografia para proteger a comunicacao: criptografia assimetrica (chave publica/privada) e criptografia simetrica (chave secreta compartilhada).

Criptografia assimetrica (public-key cryptography)

No inicio da conexao, o servidor apresenta um certificado digital contendo sua chave publica. O navegador usa essa chave para criptografar informacoes que somente o servidor (com sua chave privada) pode descriptografar. Algoritmos comuns incluem RSA e ECDHE (Elliptic Curve Diffie-Hellman Ephemeral), este ultimo oferecendo perfect forward secrecy — ou seja, mesmo que a chave privada seja comprometida no futuro, as sessoes passadas continuam seguras.

Criptografia simetrica (session keys)

A criptografia assimetrica e computacionalmente cara. Por isso, ela e usada apenas durante o handshake para estabelecer uma chave de sessao temporaria. A partir dai, toda a comunicacao usa criptografia simetrica com algoritmos como AES-256-GCM ou ChaCha20-Poly1305, que sao muito mais rapidos.

O SSL Handshake passo a passo

Quando um usuario acessa um site HTTPS, as seguintes etapas ocorrem em milissegundos:

  1. Client Hello: O navegador envia uma mensagem ao servidor informando quais versoes do TLS suporta, quais cipher suites (algoritmos de criptografia) possui e um numero aleatorio (random).
  2. Server Hello: O servidor responde escolhendo a versao mais alta do TLS e o cipher suite mais forte que ambos suportam. Envia tambem seu certificado digital (contendo a chave publica) e seu proprio numero aleatorio.
  3. Verificacao do certificado: O navegador verifica se o certificado foi assinado por uma Autoridade Certificadora (CA) confiavel, se nao expirou e se o dominio corresponde ao dominio do site.
  4. Key Exchange (Troca de Chaves): O navegador gera um pre-master secret, criptografa com a chave publica do servidor e envia de volta. Ambos usam o pre-master secret e os numeros aleatorios para gerar a mesma chave de sessao.
  5. Finished: Ambas as partes enviam uma mensagem criptografada com a chave de sessao confirmando que o handshake foi concluido com sucesso. A partir deste ponto, a comunicacao esta segura.

Dica: No TLS 1.3, o handshake foi reduzido para apenas 1 round trip (1-RTT), e com 0-RTT (Zero Round Trip Time) e possivel retomar sessoes anteriores instantaneamente. Isso melhora significativamente a performance em conexoes lentas.

Tipos de certificado SSL

Nem todos os certificados SSL oferecem o mesmo nivel de verificacao. Existem tres niveis principais:

DV (Domain Validation)

O nivel mais basico. A CA apenas verifica que voce controla o dominio (geralmente por e-mail ou DNS TXT record). Nao ha verificacao da identidade da empresa ou pessoa. E rapido (minutos) e gratuito via Let's Encrypt. Indicado para blogs, sites pessoais e pequenos negocios.

OV (Organization Validation)

A CA verifica a identidade da organizacao por tras do site — razao social, endereco, registro comercial. O certificado exibe o nome da empresa nos detalhes. Leva de 1 a 3 dias uteis para ser emitido. Indicado para empresas que querem transmitir mais confianca.

EV (Extended Validation)

O mais alto nivel de validacao. Alem de verificar a existencia legal da empresa, a CA realiza uma verificacao rigorosa. No passado, esses certificados exibiam a barra verde no navegador com o nome da empresa. Embora a barra verde tenha sido descontinuada no Chrome, o EV ainda oferece o maior nivel de confianca. Indicado para e-commerces, bancos e instituicoes financeiras.

Como obter SSL para seu site

Existem duas formas principais de obter um certificado SSL: gratuito ou pago.

Opcoes gratuitas

  • Let's Encrypt: A CA gratuita mais popular. Emite certificados DV validos por 90 dias, renovaveis automaticamente. Suportado por todos os navegadores modernos. Ideal para a maioria dos sites.
  • Cloudflare: Oferece SSL gratuito (Universal SSL) para todos os sites que passam pelo seu CDN. Inclui certificados de 15 anos gerenciados automaticamente.
  • ZeroSSL: Alternativa ao Let's Encrypt com interface web amigavel e suporte a renewal automatico via API.

Opcoes pagas

  • DigiCert: CA premium com suporte 24/7, certificados OV e EV, e garantia de $1.75M.
  • Sectigo (Comodo): Certificados acessiveis com boa variedade de opcoes, incluindo wildcard e multi-dominio.
  • GlobalSign: Oferece certificados OV e EV com validacao rigorosa e suporte empresarial.

Indicadores de SSL no navegador

Os navegadores modernos exibem indicadores visuais claros sobre o status SSL do site:

  • Cadeado (padlock): Aparece na barra de enderecos indicando que o site possui SSL valido e o conteudo e seguro. Um cadeado fechado indica que a conexao e segura.
  • "Nao Seguro" (Not Secure): Chrome e Firefox exibem esta mensagem ao lado da URL para sites HTTP ou com certificado expirado/invalido. Isso assusta visitantes e reduz a credibilidade.
  • Nome da empresa (EV): Em certificados EV, o nome da empresa aparece ao lado do cadeado (dependendo do navegador).
  • Aviso de pagina inteira: Para certificados expirados ou auto-assinados, o navegador exibe uma tela de aviso vermelha, impedindo o acesso, a menos que o usuario aceite o risco manualmente.

Consequencias de nao ter SSL

Operar um site sem SSL tem consequencias graves e multiplas:

  • Aviso "Nao Seguro": O Chrome e o Firefox exibem um aviso explicito. Para sites com formularios de login ou pagamento, esse aviso e ainda mais agressivo.
  • Penalidade SEO: O Google confirmou em 2014 que HTTPS e um sinal de ranking. Embora o peso seja pequeno comparado a outros fatores, em pesquisas competitivas pode fazer diferenca.
  • Interceptacao de dados: Em redes WiFi publicas (cafes, aeroportos, hoteis), qualquer pessoa pode interceptar o trafego HTTP com ferramentas como Wireshark ou Bettercap. Senhas, cookies e dados pessoais ficam expostos.
  • Vulnerabilidade a phishing: Sites sem SSL sao mais facilmente falsificados. Um atacante pode criar um clone HTTP do seu site e capturar dados dos usuarios.
  • Bloqueio de funcionalidades: Navegadores modernos bloqueiam ou restringem diversas APIs em contextos HTTP: geolocalizacao, notificacoes push, Service Workers, Cache API, entre outras.

HSTS — HTTP Strict Transport Security

HSTS e um header de seguranca que instrui o navegador a sempre usar HTTPS ao acessar seu dominio, mesmo que o usuario digite "http://" manualmente. Isso elimina ataques de downgrade (SSL stripping), onde um atacante intercepta a requisicao HTTP inicial e impede o upgrade para HTTPS.

Para habilitar HSTS, adicione o header Strict-Transport-Security: max-age=31536000; includeSubDomains; preload na configuracao do servidor. O preload permite que seu dominio seja incluido na lista de preload dos navegadores, garantindo que mesmo a primeira visita seja HTTPS.

Ciclo de vida do certificado

Um certificado SSL nao e permanente. Ele nasce, vive e morre (ou e renovado):

  • Emissao: O certificado e gerado por uma CA apos verificacao. O periodo de validade comeca na data de emissao.
  • Validade: Certificados Let's Encrypt duram 90 dias. Certificados pagos duram de 1 a 2 anos. O Chrome passou a limitar a validade maxima a 398 dias (cerca de 13 meses) a partir de 2020.
  • Renovacao: Para certificados pagos, voce precisa gerar um novo CSR e passar pela verificacao novamente. Para Let's Encrypt, ferramentas como Certbot ou o plugin do cPanel renovam automaticamente.
  • Revogacao: Se a chave privada for comprometida, o certificado deve ser revogado imediatamente. A CA mantem uma lista de certificados revogados (CRL) e verifica online via OCSP (Online Certificate Status Protocol).

Como a CloudBird cuida do SSL do seu site

Na CloudBird, todos os sites sao entregues com SSL ativo automaticamente. Utilizamos a integracao nativa da Hostinger com Let's Encrypt, que gera, instala e renova os certificados automaticamente sem nenhuma intervencao manual. Isso significa que seu site ja nasce seguro, com HTTPS ativo desde o primeiro dia.

Importante: Verifique sempre a data de expiracao do seu certificado. Uma renovacao esquecida pode derrubar a seguranca do site e assustar seus visitantes com avisos de "Certificado Invalido".