Pozn.: Popis v článku vychází z Veeam Backup & Replication 12.3, licencováno pomocí Veeam Universal License (VUL), tedy obdoba Enterprise Plus.
Šifrování záloh (Backup Encryption)
Velmi často se v zálohách nachází citlivá data, proto je zásadní zabránit neoprávněnému přístupu. V praxi jistě řešíme přístupová oprávnění. Ideálně je zálohovací síť oddělená (samozřejmě nemůže být izolovaná od dat která zálohuje). Ale stále je velmi důležité využívat šifrování. Obzvláště pokud data ukládáme na externí média nebo do cloudu.
Šifrování záloh ve Veeam Backup & Replication chrání data, pokud útočník získá soubory záloh. Nemůže je připojit k Veeamu a obnovit uložená data, jak by šlo u nešifrovaných záloh. Pokud se útočník dostane do (naší) konzole Veeam Backup & Replication s dostatečnými právy, tak se dostane i k zašifrovaným datům. Šifrovací klíče jsou uloženy v konfigurační databázi a při řadě situací probíhá automatické dešifrování.
Oficiální dokumentace
- Data Encryption
- Communications Encryption
- Encrypting Backup Jobs
- Enabling Traffic Encryption
- Encryption Overview
Možnosti šifrování
Obecně můžeme data chránit šifrováním při přenosu (Encryption In Flight / In Transit), nejčastěji pomocí TLS a certifikátu. A/nebo šifrovat uložená data (Encryption At Rest) pomocí šifrovacího klíče a kryptografického algoritmu.
Šifrovat uložená data můžeme tak, že šifrujeme úložiště a data se šifrují při ukládání. Může to řešit Veeam nebo přímo HW/SW úložiště či páskové mechaniky. Ale lepší může být zašifrovat data po načtení během jejich zpracování. Jsou pak chráněna při dalším přenosu i při uložení. Tak funguje šifrování úloh ve Veeam Backup & Replication.
Šifrování ve Veeam Backup & Replication
Veeam používá standardní šifrovací algoritmy AES 256 bit a šifrování s veřejným klíčem (asymetrické algoritmy). Obecné základy šifrování popisuje článek Obecný úvod do šifrování dat.
Ve Veeamu můžeme použít:
- Job encryption (šifrování úlohy) - nastavujeme v parametrech úlohy pod Advanced - Storage
- Storage encryption (šifrování úložiště) - můžeme zapnout
- na úložišti Set Access Permissions - Encrypt standalone application backups stored in this repository, uplatní se pouze pro (vybrané) samostatné aplikace (třeba nespravovaný Veeam Agent)
- pro Scale-Out Backup Repository (SOBR), kde můžeme nastavit šifrování pro Capacity Tier nebo Archive Tier, pak se šifrují všechny ukládané zálohy
- Network Traffic (Communication) Encryption (šifrování komunikace) - v hlavním menu Network Traffic Rules
Pozn.: V tomto článku se zaměřujeme na šifrování úloh.
Vlastnosti a doporučení pro šifrování
- velmi důležité je šifrovat zálohu Veeam konfigurace (Configuration Backup), protože se zde nachází některé šifrovací klíče, pokud je záloha šifrovaná, tak do ní Veeam ukládá také credentials
- uložit bezpečně a dostupně (pokud mi nebude fungovat infrastruktura) heslo k šifrování
- na šifrovaná data se téměř neuplatní deduplikace při uložení na deduplikační úložiště (řešení je využít šifrování až na úložišti)
- při zapnuté kompresi Veeam data nejprve komprimuje a pak šifruje (na zdroji)
- šifrování má určitý dopad na výkon, dnešní HW je často optimalizovaný
- vícenásobné šifrování (například šifrování úlohy a současně šifrování úložiště) znamená větší zatížení
- ve výchozím nastavení Veeam šifruje síťový provoz přenášený mezi veřejnými sítěmi
- autorizovaný uživatel nepotřebuje heslo pro obnovu dat ze šifrované zálohy (při splněných podmínkách)
- můžeme využít Veeam Enterprise Manager jako ochranu proti ztrátě šifrovacího hesla (ten pak musíme dostatečně zabezpečit)
Jak šifrování ve Veeamu funguje
Pro šifrování můžeme využít:
heslo(Password), které vygeneruje symetrický tajný klíč (Secret Key)- externí
KMS server(Key Management Service), který vygeneruje asymetrický KMS klíč
Secret Key se generuje na základě hesla, takže je potřeba použít dostatečně dlouhé a komplexní (prostě bezpečné) heslo. Pro generování se využívá 600 000 iterací HMAC SHA256 a 512bitová sůl.
Pozn.: V článku se primárně věnujeme využití šifrovacího hesla. To můžeme přidat (vytvořit) a spravovat v hlavním menu Credentials and Passwords - Encryption Passwords nebo ve vlastnostech úlohy. Pro použití KMS serveru jej musíme přidat v hlavním menu Credentials and Passwords - Key Management Servers.

Veeam Backup & Replication šifruje soubory záloh pomocí klíčů pro šifrování dat (Data Encryption Keys - DEK). Pak přenáší šifrovaná data na cílovou stranu a ukládá je do úložiště záloh. Pro každou relaci úlohy (Job Session) se vygeneruje unikátní symetrický šifrovací klíč, který se použije pro zašifrování každého bloku dat. Tento klíč (Session Key) je zašifrován pomocí DEK a uložen do souboru zálohy. Data Encryption Keys jsou zašifrovány tajným klíčem (AES 256 bit) nebo KMS klíčem (RSA 4096 bit) a uložené v konfigurační databázi.

Šifrování standardně probíhá na zdroji, což může být Backup Proxy nebo Source Backup Repository. Pokud pro Backup Copy Job používáme WAN akcelerátor, tak se šifrování provádí na cílovém WAN akcelerátoru.
Šifrování úloh (Job Encryption)
Šifrování úloh je podporováno pro následující úlohy:
- Backup Job
- Backup Copy Job
- File Backup Job
- Object Storage Backup Job
- VeeamZIP Sessions
- Veeam Agent Backup Job / Policies
- Configuration Backup Job
Pozn.: Veeam Plug-ins nepodporují šifrování a nesmí ani být zapnuté šifrování na cílovém úložišti (Storage Encryption) - Encrypt standalone application backups stored in this repository.
Chování při konfiguraci šifrování
- když povolíme šifrování na existující úloze, tak při dalším běhu (session) automaticky vytvoří aktivní plnou zálohu (proto není vhodné povolit šifrování hromadně na mnoha úlohách)
- tento Full Backup a následné inkrementy budou šifrované (předchozí zálohy nikoliv)
- pokud změníme heslo, tak nově vytvořené přírůstkové zálohy budou šifrovány novým heslem
- pokud zakážeme šifrování, tak se vytvoří nešifrovaná plná záloha a pokračuje se bez šifrování
Využití deduplikace, komprese a Fast Clone
Veeam deduplikace a komprese záložního souboru probíhá po zapnutí šifrování stále stejně. Velikost plné zálohy je stejná jako před šifrováním.
Šifrování není vhodné, pokud používáme deduplikační úložiště. Data se nejprve zašifrují (pro každou relaci úlohy se použijí jiné šifrovací klíče) a pak ukládají, což má negativní vliv na deduplikační poměr.
Pokud využíváme souborový systém ReFS nebo XFS s funkcí Fast Clone, tak můžeme těžit z ušetřeného prostoru i po zapnutí šifrování. Ovšem když zapneme šifrování na existující úloze, tak se vytvoří šifrovaná plná záloha. Ta Fast Clone nevyužije (šifrované bloky jsou jiné než nešifrované) a potřebujeme dostatek volného prostoru. Další provedené zálohy již Fast Clone využijí.
Nastavení šifrování (primárně pro Backup Job a Backup Copy Job)
Šifrování můžeme nastavit při vyváření nové úlohy nebo úpravou nastavení existující.
- Veeam Backup & Replication Console
- Home - Jobs
- vytvoříme novou úlohu nebo editujeme existující
- pro Backup Job jde o Storage - Advanced - Storage

- pro Backup Copy Job jde o Target - Advanced - Storage

- Enable backup file encryption a vybereme nebo přidáme šifrovací heslo
Dopady šifrování na Backup Copy Job závislý na Backup Job
Pokud nastavíme šifrování pro Backup Job, který je zdrojem pro Backup Copy Job, tak se pro Backup Copy Job nic nemění. Stále pokračuje v kopírování pouze přírůstků a jsou nešifrované. Teprve když nastavíme šifrování na Backup Copy Job, tak se provede Full Backup a je šifrovaný. Šifrovat můžeme Backup Copy Job, i když je zdrojový Backup Job nešifrovaný.
Jak poznáme, že je záloha šifrovaná
Soubory VBK a VIB vypadají na první pohled stejně. Ale když se podíváme do VBM souboru, tak vidíme, že jsou jednotlivé položky (citlivé informace) XML šifrované. V XML elementu BackupMeta nalezneme atribut EncryptionState="2" (pro nešifrované zálohy je 0).
V seznamu záloh ve Veeam Backup & Replication Console má ikona šifrované zálohy přes sebe klíček. Je to i v případě, kdy je šifrovaná pouze část řetězce (povolili jsme šifrování dodatečně).

V logu provedených akcí úlohy vidíme akci Backup file will be encrypted.

Kdy je pro dešifrování potřeba heslo
Pro řadu operací se zálohami (obnovu, kontrolu zdraví apod.) je potřebujeme nejprve dešifrovat. To může probíhat automaticky na pozadí nebo musíme provést manuálně zadáním hesla. Automaticky probíhá dešifrování na stejném zálohovacím serveru se stejnou databází (kde jsou uloženy klíče pro šifrování dat), pokud nebyla záloha odstraněna. Pokud importujeme zálohu, tak musíme vždy zadat heslo.
To znamená, že uživatel (s dostatečnými právy) přihlášený do Veeam Backup & Replication Console může obnovit data ze šifrované zálohy a nemusí znát šifrovací heslo.
Import šifrované zálohy
Pokud importujeme šifrovanou zálohu, tak ji musíme dešifrovat zadáním hesla. Je jedno, zda provedeme manuální import (tlačítko Import Backup) nebo naskenujeme úložiště (na úložišti Rescan).
- zašifrovaná záloha se objeví pod Backups - Disk (Encrypted)

- zvolíme Decrypt backup (nebo tlačítko Specify Password) a zadáme heslo

- proběhne rozšifrování zálohy a ta se přesune pod Backups - Disk (Imported)
Pozn.: Pokud došlo ke změně hesla během vytváření záložního řetězce, tak jsou některé soubory záloh šifrovány jiným heslem. Pokud importujeme VBM, tak musíme zadat poslední heslo. Pokud importujeme VBK, tak musíme zadat celou sadu hesel, která byla použita k šifrování dat v řetězci.
Zatím zde nejsou žádné komentáře.