Quando o seu certificado expira, e se a cadeia está completa
Abre uma conexão TLS na porta 443, igual à de um navegador, e lê o certificado apresentado. Sem enumeração de cifras e sem teste de vulnerabilidade.
01Como funciona
Certificado e TLS, na prática
O que o certificado prova, e o que não prova
Um certificado TLS faz duas coisas: cifra o tráfego entre o visitante e o servidor, e prova que quem responde controla mesmo aquele domínio. É o que sustenta o cadeado do navegador.
O que ele não faz é atestar a segurança do site. Certificado gratuito é emitido em segundos para qualquer domínio, inclusive os de phishing — e a maioria dos sites de golpe hoje tem cadeado. O cadeado diz que a conexão é privada, não que o outro lado é confiável.
Isso importa na conversa interna: certificado válido é requisito mínimo, não conquista. Ele aparece em questionário de fornecedor porque a ausência é eliminatória, não porque a presença comprove alguma coisa.
Expiração é a causa mais banal de site fora do ar
Certificado expirado não degrada: quebra. O navegador exibe tela cheia de aviso de conexão não privada, e a maior parte dos visitantes não passa dela. Integração por API para de funcionar na mesma hora, e geralmente sem mensagem de erro que ajude.
Desde 2020 os certificados públicos valem no máximo 398 dias, e o setor está encurtando isso — a direção é validade cada vez menor, o que torna renovação manual inviável na prática. Automatizar deixou de ser conveniência.
O detalhe que pega quem já automatizou: renovação automática falha em silêncio. O certbot para de rodar porque o cron sumiu numa migração, ou a validação por HTTP quebra porque alguém pôs autenticação na frente do site inteiro, ou o registro de DNS mudou. Tudo continua funcionando por semanas — até o dia da expiração. Por isso a checagem que importa não é 'está válido?', e sim 'quantos dias faltam, e a renovação rodou de fato na última janela?'.
Cadeia incompleta: funciona no seu navegador, quebra no cliente
É o problema mais confuso de diagnosticar, porque depende de quem está olhando. O servidor precisa apresentar não só o certificado do domínio, mas também os intermediários que ligam ele a uma raiz confiável.
Quando o intermediário falta, alguns clientes funcionam mesmo assim: navegadores de desktop costumam ter o intermediário em cache de visitas anteriores a outros sites, e completam a cadeia sozinhos. Já um cliente de API, um aparelho Android antigo ou um servidor rodando curl não têm esse cache — e falham.
O resultado é a reclamação clássica de que o site 'funciona para todo mundo menos para um cliente'. Nesses casos o teste no próprio navegador engana, e é preciso verificar de fora, com um cliente sem cache.
Nome coberto e versão do protocolo
- O certificado precisa cobrir exatamente o nome digitado. Emitir só para www.exemplo.com.br faz quem digita exemplo.com.br sem www ver aviso de segurança — e é a metade das pessoas.
- Curinga como *.exemplo.com.br cobre um nível de subdomínio, não o domínio raiz e não dois níveis. Cobrir raiz e curinga exige os dois nomes no mesmo certificado.
- TLS 1.0 e 1.1 estão descontinuados desde 2021 e são recusados por navegador atual. Se a conexão ainda fecha nessas versões, há configuração antiga em algum ponto da pilha.
- TLS 1.2 é seguro e aceitável. TLS 1.3 é mais rápido, faz menos idas e voltas no handshake e elimina por construção várias configurações fracas que o 1.2 ainda permite.
Erros que aparecem com mais frequência
Renovar o certificado e esquecer de recarregar o serviço. O arquivo novo está no disco, o processo continua servindo o antigo em memória, e a expiração acontece do mesmo jeito. Todo script de renovação precisa terminar com o reload.
Trocar de CDN e deixar o certificado só na origem. Quem termina o TLS é o CDN; se ele está com certificado próprio expirado, a origem impecável não ajuda em nada.
Cuidar só do domínio principal. Painel administrativo, ambiente de homologação e API costumam ficar em subdomínios com renovação separada — e são justamente os que ninguém monitora.
Confiar no alerta por e-mail da autoridade certificadora. Ele vai para o endereço cadastrado na emissão, que muitas vezes é de alguém que saiu da empresa.
Como validar que a correção pegou
Depois de instalar ou renovar, recarregue o serviço e rode a verificação de novo: a data de validade que aparece aqui vem do certificado efetivamente apresentado na conexão, não do arquivo no disco. Se a data não mudou, o processo antigo ainda está no ar.
Para cadeia incompleta, o teste bom é de fora e sem cache — esta verificação serve, porque abre uma conexão nova a cada consulta. Confirme também que o nome sem www e o com www respondem, e repita para cada subdomínio que atende público.
02Outras ferramentas
Verificar mais alguma coisa
SPF · DMARC
Autenticação de e-mail
Se qualquer servidor pode enviar e-mail dizendo ser o seu domínio, e o que publicar para impedir.
HSTS · CSP · X-Content-Type-Options
Cabeçalhos de segurança
Quais cabeçalhos o seu site envia ao navegador, quais faltam e o que cada um evita.
03Monitoramento contínuo
Esta verificação é de agora
Certificado expira em data marcada, e renovação automática falha em silêncio. Verificar hoje diz que está bom hoje — não diz nada sobre a madrugada em que o cron parar de rodar.