Bezpečnost a zálohování databází: ochrana a plány obnovy

Bezpečnost a zálohování databází: Ochrana a plány obnovy

Proč jsou bezpečnost a zálohování databází kritické

Databáze jsou srdcem informačních systémů. Každý jejich výpadek či kompromitace může znamenat ztrátu tržeb, poškození reputace i právní důsledky. Cílem je zajistit důvěrnost, integritu, dostupnost a auditovatelnost (CIAA) dat v běžném provozu i při incidentech. Základem je kombinace bezpečnostní architektury, strategie zálohování a obnovy a pravidelného testování.

Hrozby a model rizik

  • Externí útoky: SQL injection, zneužití zranitelností, síťové útoky, ransomware.
  • Interní rizika: nadměrná oprávnění, chybné konfigurace, lidské chyby, hrozby ze strany interních uživatelů.
  • Provozní události: selhání hardwaru, poškození dat, neúmyslné smazání, chybné migrační skripty.
  • Environmentální a regionální rizika: výpadky napájení, požáry, povodně, selhání cloudového regionu.

Architektonické principy bezpečnosti

  • Zero Trust: žádná implicitní důvěra; autentizace a autorizace každé akce, segmentace přístupu.
  • Least Privilege: pouze nezbytná oprávnění, oddělení rolí (DBA, vývojáři, provoz, auditoři).
  • Defense in Depth: vrstvená ochrana od sítě přes aplikaci až po data a klíče.
  • Secure by Default: bezpečné výchozí konfigurace, vypnutí nepoužívaných služeb a rozšíření.

Řízení identit a přístupů (IAM)

  • Silné ověřování: MFA pro administrátory a skokové servery; krátkodobé přístupové tokeny místo statických hesel.
  • Role a politiky: RBAC/ABAC, jemnozrnná oprávnění (např. repliky pouze pro čtení pro reporting).
  • Just-In-Time (JIT) access: dočasné navyšování oprávnění se záznamem v auditní stopě a schválením.
  • Federace: SSO přes OIDC/SAML do nástrojů pro správu DB, jednotné rušení přístupů při odchodu zaměstnanců.

Síťová bezpečnost a segmentace

  • Oddělení zón: databázová vrstva v privátní síti bez přímého přístupu z internetu.
  • Seznam povolených přístupů: přístup pouze z aplikačních podsítí a bastion hostů; security groups/NSG.
  • Šifrované tunely: TLS, mTLS, IPsec; zákaz přenosu nešifrovaných dat i uvnitř datacentra.
  • Ochrana proti skenování: firewall, WAF (na aplikační vrstvě), omezení rychlosti požadavků, port knocking (kde dává smysl).

Šifrování a správa klíčů

  • Šifrování při přenosu: TLS 1.2+ (případně 1.3), moderní sady šifer, HSTS na proxy, mTLS pro interní služby.
  • Šifrování dat v klidu: TDE (Transparent Data Encryption), šifrované tablespaces, šifrované zálohy, šifrované snapshoty.
  • KMS/HSM: centrální správa klíčů, jejich rotace, oddělení oprávnění správců klíčů a správců dat.
  • Správa tajných údajů: trezory (Vault, KMS Secrets), krátká životnost přihlašovacích údajů, nikdy je neukládat do kódu ani CI.

Audit, protokolování a detekce anomálií

  • Auditní logy: přihlášení, změny schémat, DDL/DCL, citlivé příkazy SELECT/UPDATE/DELETE; neměnitelné úložiště (WORM).
  • Integrace SIEM/SOAR: korelace událostí, upozornění, automatizované scénáře reakce.
  • Detekce anomálií: neobvyklé dotazy, objemy exportů, přístupy mimo pracovní dobu, odchylky v geolokaci.

Konfigurační hygiena a zranitelnosti

  • Hardening: vypnutí výchozích účtů, omezení xp_cmdshell/udf a rozšíření, bezpečné parametry (např. local_infile=OFF).
  • Opravy: pravidelné bezpečnostní záplaty databázového enginu i operačního systému; průběžné aktualizace v clusterech HA.
  • Řízení změn: migrace pomocí migračních nástrojů, kontrola kódu, postupné nasazení, plány návratu k předchozí verzi.

Ochrana proti SQL injection a logickým útokům

  • Parametrizované dotazy a osvědčené postupy pro ORM.
  • Seznam povolených přístupů k procedurám a pohledům; minimalizace přímých oprávnění DML.
  • Validace vstupů v aplikační vrstvě, pravidla WAF pro typické škodlivé vstupy.

Strategie zálohování: cíle RPO/RTO a vrstvy ochrany

Definujte RPO (maximální ztrátu dat) a RTO (maximální dobu obnovy) pro jednotlivé systémy. Na jejich základě navrhněte kombinaci metod a vrstev:

  • Pravidlo 3–2–1: 3 kopie, 2 různá média, 1 kopie mimo lokalitu (off-site/offline/immutable).
  • Úplné / diferenciální / přírůstkové zálohy: kombinace pro zkrácení zálohovacích oken a rychlou obnovu.
  • PITR (Point-in-Time Recovery): archivace WAL/redo logů/transakčních logů.
  • Neměnitelné a air-gapped zálohy: ochrana před ransomwarem a hrozbami ze strany interních uživatelů.

Typy záloh a konzistence

  • Logické zálohy: výpis/export (např. pg_dump, mysqldump) – přenosné, ale obnova je pomalejší; pozor na konzistenci.
  • Fyzické zálohy: kopie datových souborů, snapshoty LVM/ZFS/cloudu, rychlé obnovení celé instance.
  • Hot/Warm/Cold zálohy: online zálohy oproti zálohám s omezením provozu; vždy zajistěte aplikační konzistenci (quiesce, fsfreeze, skripty před/po záloze).
  • Test obnovy: pravidelné zkoušky obnovy v izolovaném prostředí s ověřením integrity (kontrolní součty) a funkčními testy.

Replikace vs. záloha: rozdíl a komplementarita

  • Replikace: vysoká dostupnost a škálování čtení, ale chyby a smazání se rychle replikují – nenahrazuje zálohy.
  • Záloha: historická ochrana a možnost návratu v čase; doplňuje architektury HA/DR.

Plán obnovy po havárii (DR) a scénáře

  • DR runbook: kontakty, odpovědnosti, pořadí kroků, přístupové klíče, rozhodovací šablony (go/no-go).
  • Regionální DR: asynchronní replikace do jiné zóny/regionu, pravidelné testy přepnutí.
  • Částečná obnova: obnova konkrétního schématu/tabulky (obnova tablespace) bez přerušení celého systému, pokud je podporována.

Šifrované zálohy a ochrana metadat

  • Šifrování při uložení záloh, oddělená správa klíčů (KMS/HSM), rotace a přístup na principu nezbytné potřeby.
  • Integrita záloh: podpisy, kontrolní součty, úložiště odolné proti neoprávněným změnám.
  • Maskování a tokenizace při obnově do neprodukčního prostředí (vývoj/test) – ochrana osobních údajů (PII) a soulad s předpisy.

Retenční politika a právní požadavky

  • Doba uchovávání: různě dlouhé retenční lhůty podle kritičnosti a regulace (např. účetnictví, zdravotnictví).
  • Právo být zapomenut: procesy pro selektivní výmaz ze záloh (např. expirační okna, kryptografické mazání klíčů).
  • Auditovatelnost: dokumentace záloh, obnov a testů; dohledatelnost přístupů k zálohám.

Specifika podle typů databází

  • PostgreSQL: základní záloha + archivace WAL; nástroje pg_basebackup, pgBackRest, Barman; pozor na replication slots a diskovou kapacitu.
  • MySQL/MariaDB: logické výpisy oproti nástroji Percona XtraBackup pro fyzické zálohy za provozu; binlogy pro PITR.
  • SQL Server: úplné/diferenciální/zálohy transakčního protokolu, Always On Availability Groups; šifrování záloh, CHECKDB.
  • Oracle: RMAN, FRA, Data Guard; TDE, oddělení klíčů, Flashback pro logické chyby.
  • NoSQL (MongoDB, Cassandra): zálohy podle shardů/replik, oplog/commitlog pro PITR; konzistence napříč shardy.

Cloud, DBaaS a multicloud

  • Snapshoty DBaaS: ověřte, zda jsou aplikačně konzistentní a zda podporují PITR; nespoléhejte se pouze na poskytovatele.
  • Zálohy a replikace mezi regiony; pravidelné testy obnovy v cílovém regionu.
  • FinOps: náklady na úložiště ve vztahu k RPO/RTO; archivní úroveň pro dlouhé retenční lhůty.

Automatizace, CI/CD a provozní disciplína

  • Zálohování jako kód: infrastrukturní a zálohovací politiky v repozitáři (IaC), vzájemná kontrola.
  • Plánování: zálohovací okna, škálování workerů, omezení zátěže I/O; koordinace s ETL a diagnostikou.
  • Monitoring: metriky úspěšnosti záloh, doby trvání, velikosti a míry komprese; upozornění na překročení cíle RPO.

Ransomware a odolnost

  • Neměnné úložiště a zásady WORM pro zálohy; oddělený účet/tenant pro zálohovací úložiště.
  • Offline kopie (air-gap) pro kritické systémy; rotace médií.
  • Rychlá obnova: scénáře obnovy na prázdný hardware/nový cluster, předpřipravené AMI/obrazy.

Testování obnovy: jediná „skutečná“ metrika

  • Stolní a technické cvičení: čtvrtletně simulujte incident, měřte skutečné RTO/RPO a dokumentujte zjištění.
  • Kontrola integrity: po obnově spusťte CHECKDB/ANALYZE, aplikační kouřové testy a výkonnostní základní měření.

Kontrolní seznam bezpečné databáze

  • Segmentovaná síť, žádný veřejný přístup, mTLS/TLS všude.
  • RBAC/ABAC, přístupy JIT, MFA pro administrátory.
  • TDE/šifrované tablespaces, šifrované zálohy, rotace klíčů v KMS/HSM.
  • Auditní logy v neměnitelném úložišti, upozornění SIEM.
  • Pravidelné aktualizace databáze a operačního systému, hardening konfigurace.
  • Zálohování podle pravidla 3–2–1, PITR, neměnné/air-gap kopie, definované RPO/RTO.
  • Čtvrtletní test obnovy a DR runbook; dokumentace a školení týmu.
  • Maskování dat při obnově do neprodukčního prostředí, retenční a právní politika.

Nejčastější chyby a jak se jim vyhnout

  1. „Zálohujeme, ale obnovu jsme nikdy nevyzkoušeli“ – zavést povinné testy obnovy.
  2. Spoléhání na replikaci místo záloh – kombinovat HA/DR s historickou ochranou.
  3. Výchozí konfigurace a široká oprávnění – audit rolí a politik, vypnutí nepoužívaných funkcí.
  4. Nešifrované zálohy a klíče ve stejném úložišti – oddělit správu a úložiště, zavést KMS.
  5. Chybějící dokumentace – runbooky, kontakty, přístupové cesty, postupy pro plnění právních požadavků.

Závěr

Bezpečnost a zálohování databází nejsou jednorázovým projektem, ale nepřetržitým procesem, který propojuje architekturu, provoz, správu a pravidelná cvičení. Organizace, které disciplinovaně kombinují vrstvené zabezpečení, robustní zálohovací politiku a testovanou obnovu, získávají předvídatelnou dostupnost a důvěru v data – základ stabilního podnikání i inovací.