Voltar ao Diário
SegurançaNº 00402 de junho de 20265 min

Como um certificado SSL expirado tirou a tua loja do Google em 48 horas

Um certificado expira a uma quarta-feira às 03:14. Na sexta de manhã o tráfego orgânico colapsou. Não foi azar — foi negligência mensurável.

Uma loja de equipamento de escritório no Porto perdeu 78% do tráfego orgânico entre quarta e sexta. Ninguém tinha mexido no site há semanas. O problema cabia numa linha de log: o certificado SSL tinha expirado às 03:14 de quarta-feira.

Quando o Googlebot voltou a passar pelo site nessa manhã, encontrou ERR_CERT_DATE_INVALID. Não indexou nada. Pior, marcou o domínio como inseguro para os utilizadores que clicassem nos resultados ainda em cache. Em 48 horas, o Chrome estava a mostrar o ecrã vermelho de aviso antes da homepage.

Porque é que o Google reage tão mal

Desde 2014 que o HTTPS é sinal de ranking. Desde 2018 que o Chrome marca HTTP como "não seguro". Um certificado expirado é pior que HTTP — é HTTPS partido. O browser interpreta isso como tentativa de impersonation, mesmo que seja só o acme.sh que falhou a renovar.

O Googlebot trata um TLS handshake falhado como erro de crawl. Repete a tentativa, falha, repete, falha. Ao fim de algumas horas começa a desindexar. As páginas não desaparecem do índice de imediato, mas perdem ranking porque o sinal de confiança caiu a zero.

O que aconteceu na prática

  1. 03:14 quarta — certificado Let's Encrypt expira. O cron de renovação tinha falhado três vezes nos 30 dias anteriores. Ninguém viu o email.
  2. 08:00 quarta — primeiros utilizadores no telemóvel veem o aviso vermelho. Bounce rate dispara.
  3. 11:30 quarta — Googlebot passa, falha o handshake, regista soft 404 em massa.
  4. Quinta de manhã — Search Console envia alerta de "cobertura". Ninguém abre o Search Console.
  5. Sexta 09:00 — vendas paradas. Cliente liga ao programador. Programador descobre o problema em quatro minutos.

A renovação em si demorou 90 segundos. A recuperação do ranking demorou 23 dias. Durante esse tempo o concorrente ganhou as primeiras posições nas keywords principais e nunca mais as largou completamente.

Porque é que o cron falhou

O servidor tinha mudado de IP em Janeiro. O DNS apontava bem, mas o desafio HTTP-01 do Let's Encrypt batia num firewall novo que bloqueava pedidos vindos do range da ISRG. Cada tentativa de renovação registava um erro num log que ninguém lia.

Isto é o padrão. O certificado não expira porque é difícil renovar. Expira porque a renovação automática falha em silêncio e ninguém tem alarmes a apontar para os logs certos.

O que tens de fazer hoje

  • Monitorização externa do certificado, não do cron. Usa um serviço como UptimeRobot ou StatusCake configurado para alertar 14 dias antes da expiração.
  • Alertas no Telegram ou SMS, não email. Os emails de aviso do Let's Encrypt vão para uma caixa que ninguém vê.
  • Verifica o Search Console todas as semanas. Se o Googlebot está a falhar, está lá escrito.
  • Testa a renovação manualmente uma vez por trimestre. Se o cron funciona em produção mas não em staging, é porque tens drift de configuração.
  • Documenta o procedimento de renovação de emergência. Quando o site cai à sexta às 18h, não queres estar a aprender acme.sh.
Um certificado expirado é a forma mais barata de perder seis meses de SEO. Custa zero euros prevenir e custa três salários recuperar.Auditoria interna pós-incidente, cliente Porto

O custo real

A loja faturou menos 31 mil euros nesse mês face à média trimestral. O programador que montou o servidor cobrou 180 euros para resolver. O custo da prevenção tinha sido zero — um cron job extra de health check e um webhook para o Telegram.

Se vendes online em Portugal e ainda não tens monitorização independente do teu próprio servidor a vigiar o certificado, estás a uma renovação falhada de perder o trimestre. Não é alarmismo. É aritmética.


A regra é simples. Não confies no cron que renova. Confia no monitor externo que verifica que o cron renovou.

Referências
  1. 01Google Search Central — HTTPS as a ranking signal
  2. 02web.dev — Why HTTPS matters
  3. 03Let's Encrypt — Expiration emails and renewal
  4. 04MDN — Transport Layer Security (TLS)
  5. 05Mozilla Observatory — TLS configuration testing
Também:
SegurançaNº 009

O ataque que ninguém vê chega pelo formulário de contacto do teu site

O formulário de contacto parece inofensivo. É a porta mais aberta que tens, e quase ninguém a tranca.

SegurançaNº 002

HTTPS já não é feature. É baseline.

Em 2026, qualquer site sem certificado SSL está a dizer ao visitante para ir embora — e o navegador faz questão de o sublinhar.

Voltar ao Diário