Pular para o conteúdo principal

Certificados TLS gratuitos e HTTPS

Este guia foi traduzido do inglês. Algumas páginas vinculadas estão disponíveis apenas em inglês.

Como funciona o HTTPS automático, como emitir e renovar certificados e por que você nunca deve publicar com HTTP.

O HTTPS não é mais opcional. Os navegadores marcam o HTTP simples como «Não seguro», os mecanismos de busca o classificam pior e qualquer login ou pagamento por ele é realmente inseguro.

Como funciona aqui

Usamos certificados da Let's Encrypt (gratuitos, automatizados e amplamente confiáveis), emitidos e renovados pelo Certbot. Quando você associa um domínio a um site, podemos solicitar um certificado automaticamente e renová-lo antes de expirar. Você nunca paga e nunca precisa se lembrar.

Emitir um certificado

  1. Certifique-se de que o DNS do domínio já aponta para nós — a autoridade certificadora valida que você controla o nome, o que só é possível se o nome resolver aqui.

  2. Em /panel/web, abra o site, escolha SSL/TLS e adicione o domínio.

  3. Solicitamos o certificado e o instalamos. Normalmente leva segundos.

Solicite tanto example.com quanto www.example.com para que nenhum mostre um aviso.

Renovação

As renovações são automáticas. Você pode confirmar o cronograma no painel e verificar a data de expiração a qualquer momento:

bash
echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null \
  | openssl x509 -noout -subject -dates

Se uma renovação falha, quase sempre é porque o domínio deixou de resolver para nós (o DNS mudou), a porta 80 está bloqueada (o validador precisa dela) ou um limite de taxa foi atingido após falhas repetidas. Corrija a causa e tente novamente manualmente.

Redirecionar HTTP para HTTPS

Um certificado sozinho não impede que as pessoas cheguem à versão HTTP simples. Adicione um redirecionamento permanente — veja Forçando HTTPS e redirecionamentos. Depois disso, todo visitante cai na versão segura mesmo digitando http://.

Teste direito

bash
curl -I http://example.com      # should be a 301 to https://
curl -I https://example.com     # should be 200

E verifique conteúdo misto: uma página servida por HTTPS que carrega uma imagem ou script por HTTP simples é marcada como insegura pelos navegadores. Carregue tudo de URLs https://.

Atrás de um proxy ou CDN

Se você colocar um CDN na frente, a cadeia de certificados vai de CDN → visitante E CDN → origem. Os dois trechos precisam de certificados. Nosso lado emite para a origem; o CDN emite para o nome visto pelo visitante. Veja O que é um CDN e você precisa de um?.

Leitura relacionada