Capítulo 7 — Criptografia e serviços de confiança: dados e telemetria
Mapa da aula
Aula 07 publicada. Mapa, exemplo, EX025.
flowchart TD
N0["7.1 Fontes de dados úteis"]
N1["7.2 Expiração a partir do inventário"]
N2["Laboratório — Relatório de expiração de certificados"]
N3["7.3 Manter os segredos fora dos logs"]
N4["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4
N4 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX025"]
Desenho lógico
flowchart LR
N0["7.1 Fontes de dados úteis"]
N1["7.2 Expiração a partir do inventário"]
N2["Laboratório — Relatório de expiração de certificados"]
N3["7.3 Manter os segredos fora dos logs"]
N4["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX025"]
[7.1 Fontes de dados úteis]
|
v
[7.2 Expiração a partir do inventário]
|
v
[Laboratório — Relatório de expiração de certificados]
|
v
[7.3 Manter os segredos fora dos logs]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX025]
Objetivos de aprendizagem
Você vai (1) escolher fontes de dados para monitorar a saúde criptográfica; (2) calcular a expiração dos certificados a partir de um inventário; (3) evitar registrar segredos em logs.
7.1 Fontes de dados úteis
Tomás lista onde os fatos criptográficos podem ser observados. As configurações dos servidores mostram quais versões de TLS e quais certificados estão implantados. Os logs de handshake no balanceador de carga registram as versões negociadas e as falhas. Os logs de transparência de certificados, definidos na RFC 6962, listam publicamente os certificados emitidos para os domínios da Lumen, o que ajuda a detectar emissões inesperadas. A planilha do inventário registra os donos e as datas de expiração. Cada fonte responde a uma pergunta diferente, e nenhuma é completa sozinha: a configuração diz o que deveria acontecer, os logs dizem o que aconteceu e os logs de transparência mostram o que as autoridades certificadoras emitiram para os nomes da Lumen, quer a Lumen tenha pedido, quer não.
7.2 Expiração a partir do inventário
Certificados expirados causam a maioria das indisponibilidades que Priya já viu. Ela pede que Tomás calcule os dias restantes de cada certificado do inventário e os ordene por urgência. Ele escreve um script curto que lê um CSV sintético, compara cada data notAfter com uma data de revisão fixa e rotula cada linha como renew now (renovar já), plan (planejar) ou fine (em dia). Usar uma data de revisão fixa no laboratório mantém a saída reproduzível; em produção, o script usaria a data atual. O laboratório abaixo mostra o resultado para cinco certificados sintéticos, incluindo um que já expirou.
Laboratório — Relatório de expiração de certificados
# Synthetic certificate inventory; fixed review date for reproducible output.
import csv, io, datetime
REVIEW = datetime.date(2026, 3, 1)
data = """host,not_after,owner
track.lumen.example,2026-03-20,web-team
sftp.lumen.example,2026-07-30,ops
depot-wifi-ca,2031-01-15,ops
staging.lumen.example,2026-02-17,web-team
api.lumen.example,2026-04-10,web-team
"""
rows = []
for r in csv.DictReader(io.StringIO(data)):
d = (datetime.date.fromisoformat(r["not_after"]) - REVIEW).days
label = "EXPIRED" if d < 0 else "renew now" if d <= 30 else "plan" if d <= 60 else "fine"
rows.append((d, r["host"], r["owner"], label))
for d, h, o, l in sorted(rows):
print(f"{h:24} {d:5d} days {o:9} {l}")
Execute com python3 lab_expiry.py. Saída verificada:
staging.lumen.example -12 days web-team EXPIRED
track.lumen.example 19 days web-team renew now
api.lumen.example 40 days web-team plan
sftp.lumen.example 151 days ops fine
depot-wifi-ca 1781 days ops fine
7.3 Manter os segredos fora dos logs
A telemetria pode vazar o que mede. Certa vez, uma configuração de depuração no portal registrou os cabeçalhos HTTP completos, incluindo cookies de sessão e uma chave de API, num arquivo legível por toda a equipe de operações. Tomás aprende a conferir os formatos de log antes de ativá-los, a mascarar os tokens para que restem apenas alguns caracteres e a manter desligados em produção os recursos de registro de chaves do TLS, que gravam segredos de sessão para depuração. Os logs são copiados para muitos lugares, como backups e ferramentas de análise, então um segredo gravado uma vez pode ser muito difícil de remover por completo.
Exemplo resolvido
Tomás executa o laboratório de expiração, encontra um certificado expirado no antigo host de homologação e abre um chamado que também remove uma opção de depuração que registrava cabeçalhos.
Caso sintético. As linhas do inventário, os hosts e as datas são sintéticos; a RFC 6962 é real.
Erros e limites
Os inventários se afastam da realidade; confirme a expiração no endpoint em funcionamento. Os logs de transparência cobrem os certificados de confiança pública, e não os internos.
Exercícios
-
EX025 — Três fontes. Que fonte mostra os certificados que uma AC emitiu para a Lumen mesmo que a Lumen não os tenha pedido? Rubrica: 3 = logs de transparência de certificados;; 2 = nomeia CT;; 1 = nomeia configuração;; 0 = nenhuma.
-
EX026 — Linha expirada. No laboratório, que certificado já tinha expirado, e há quantos dias? Rubrica: 3 = staging.lumen.example, expirado 12 dias antes da data de revisão;; 2 = só o host;; 1 = vago;; 0 = nenhuma.
-
EX027 — Data de revisão fixa. Por que o laboratório usa uma data de revisão fixa? Rubrica: 3 = para que a saída seja reproduzível; em produção usa-se a data de hoje;; 2 = reproduzível;; 1 = nenhuma razão;; 0 = nenhuma.
-
EX028 — Registro de cabeçalhos em depuração. O que deu errado com o registro de depuração do portal? Rubrica: 3 = registrou cookies de sessão e uma chave de API num arquivo amplamente legível;; 2 = menciona segredos;; 1 = vago;; 0 = nenhuma.
Síntese
A telemetria deve revelar a saúde criptográfica, como a expiração e as falhas, sem se tornar ela mesma uma fonte de segredos vazados.
Continue estudando — aula 07 (capítulo 07 de 18)
← Capítulo 06 · Índice das aulas · Capítulo 08 →
Continue para a próxima aula já escrita.