Mapa da aula
Aula 32 publicada. Mapa, exemplo, EX094.
flowchart TD
N0["32.1 Restaurações como evidência"]
N1["32.2 O laboratório da restauração"]
N2["Laboratório — Verificando restaurações sintéticas de"]
N3["32.3 Investigando as falhas"]
N0 --> N1 --> N2 --> N3
N3 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX094"]
Desenho lógico
flowchart LR
N0["32.1 Restaurações como evidência"]
N1["32.2 O laboratório da restauração"]
N2["Laboratório — Verificando restaurações sintéticas de"]
N3["32.3 Investigando as falhas"]
N0 --> N1 --> N2 --> N3 --> Q["EX094"]
[32.1 Restaurações como evidência]
|
v
[32.2 O laboratório da restauração]
|
v
[Laboratório — Verificando restaurações sintéticas de]
|
v
[32.3 Investigando as falhas]
|
v
[Exemplo resolvido] --> [Exercício EX094]
Objetivos de aprendizagem
Você vai (1) verificar a integridade dos backups com somas de verificação; (2) medir o sucesso das restaurações; (3) definir objetivos de recuperação.
32.1 Restaurações como evidência
A Saltmarsh acredita que seus backups funcionam porque as rotinas de backup relatam sucesso. Lindiwe explica que uma rotina de backup bem-sucedida mostra que os dados foram copiados, não que podem ser restaurados intactos. Ela propõe testes regulares de restauração que comparem os arquivos restaurados com as somas de verificação registradas no momento do backup. Se um arquivo estiver faltando ou sua soma de verificação for diferente, a restauração falhou para aquele arquivo. O Prof. Hale observa que somente os testes de restauração dão evidências para a exigência da seguradora de backups testados. O líder de segurança agenda o primeiro teste de restauração para o mês seguinte.
32.2 O laboratório da restauração
O laboratório cria 500 arquivos sintéticos, registra uma soma de verificação SHA-256 para cada um usando o módulo hashlib do Python e simula uma restauração. Cinco arquivos estão faltando na restauração e três têm somas de verificação divergentes, causadas por um único bit invertido. Isso deixa 492 arquivos verificados, 98,4 por cento. Lindiwe observa que a rotina de backup teria relatado sucesso e que, sem as somas de verificação, os três arquivos corrompidos pareceriam normais até alguém abri-los. Ela mostra ao líder de segurança a lista dos arquivos faltantes e corrompidos, e a equipe concorda em executar a mesma verificação mensalmente, sobre uma amostra rotativa de pastas de todos os servidores.
Laboratório — Verificando restaurações sintéticas de backup contra somas de verificação SHA-256
"""Verify synthetic backup restores against SHA-256 checksums (stdlib only)."""
import hashlib, random
random.seed(12)
files = {f"file{i}": random.randbytes(256) for i in range(500)}
manifest = {k: hashlib.sha256(v).hexdigest() for k, v in files.items()}
restored = {}
for k, v in files.items():
r = random.random()
if r < 0.006: continue # missing from restore
if r < 0.014: v = v[:-1] + bytes([v[-1] ^ 1]) # one bit flipped
restored[k] = v
missing = [k for k in files if k not in restored]
bad = [k for k in restored if hashlib.sha256(restored[k]).hexdigest() != manifest[k]]
ok = len(files) - len(missing) - len(bad)
print(f"files {len(files)}; missing {len(missing)}; checksum mismatch {len(bad)}; verified {ok} ({ok/len(files):.1%})")
Execute com python3 lab_restore.py. Saída verificada:
files 500; missing 5; checksum mismatch 3; verified 492 (98.4%)
32.3 Investigando as falhas
Lindiwe rastreia os cinco arquivos faltantes até uma pasta acrescentada depois que a seleção do backup foi configurada, de modo que ela nunca foi incluída. Os três arquivos corrompidos vêm de um disco com defeito no servidor de backup. As duas causas têm correção: a seleção é alterada para incluir todas as pastas sob uma pasta-mãe, e o disco é substituído. Ela aprende que os testes de restauração encontram problemas de configuração e de hardware que o monitoramento das rotinas de backup, sozinho, não consegue revelar. O teste mensal de restauração seguinte, executado depois das duas correções, verifica todos os arquivos da sua amostra.
32.4 Objetivos de recuperação
Lindiwe ajuda a Saltmarsh a definir objetivos de recuperação: quantos dados o negócio pode se permitir perder e com que rapidez cada sistema precisa voltar. O despacho pode perder no máximo uma hora de dados e precisa voltar em até quatro horas; a folha de pagamento pode perder um dia, mas precisa estar de volta antes do processamento dos pagamentos. Esses objetivos determinam a frequência dos backups e os métodos de restauração. O Prof. Hale observa que os objetivos acordados com os donos do negócio transformam os backups de um hábito técnico num compromisso. Os objetivos são aprovados pelo diretor de operações e pelo diretor financeiro.
Exemplo resolvido
Lindiwe verifica uma restauração sintética de 500 arquivos com somas de verificação SHA-256, encontra 5 faltantes e 3 corrompidos (492 verificados, 98,4 por cento), rastreia as causas e define objetivos de recuperação.
Caso sintético. Os arquivos são sintéticos; as saídas vêm de lab_restore.py.
Erros e limites
Uma rotina de backup bem-sucedida não prova que os dados podem ser restaurados intactos.
Exercícios
-
EX094 — Números da restauração. Quantos arquivos foram verificados?
Mostrar critérios de avaliação
Rubrica: 3 = 492, 98,4 por cento;; 2 = parcialmente correto;; 1 = errado;; 0 = nenhuma. -
EX095 — Causa dos faltantes. Por que cinco arquivos estavam faltando?
Mostrar critérios de avaliação
Rubrica: 3 = uma pasta acrescentada depois que a seleção foi configurada;; 2 = parcialmente correto;; 1 = vago;; 0 = nenhuma. -
EX096 — Objetivos do despacho. Quais são os objetivos de recuperação do despacho?
Mostrar critérios de avaliação
Rubrica: 3 = perder no máximo uma hora, voltar em até quatro horas;; 2 = parcialmente correto;; 1 = vago;; 0 = nenhuma.