Резервно копие на контейнера или на файловете в него? Решението зависи от формата на възстановяване
Копията на образ и на файлово ниво възстановяват различни неща и зависят от различни ключове. Съобразете съхранявания обект с възстановяването, което наистина ви трябва.
Можете да направите резервно копие на шифрован контейнер като един обект или да го монтирате и да копирате файловете вътре. И двете минават през VPN без проблем и точно там приликата свършва. Те възстановяват различни неща, зависят от различни ключове, струват различно количество място и се провалят по различен начин, когато някой има нужда от данните. Изберете първо обекта на възстановяване, после транспорта, после шифроването на съхраненото копие. Списъкът по-долу следва този ред, защото почти всеки спор за резервни копия всъщност е спор за това кой от тези три избора е направен пръв.
Два обекта, две форми на възстановяване
Копие на ниво образ възстановява контейнер: получавате обратно шифрования том и все още ви е нужен материалът за възстановяване, за да го отворите. Копие на файлово ниво възстановява файлове и дървета от директории, а шифроването, което ги защитава, е свойство на хранилището с копия, а не на оригиналния контейнер. Обикновено копие в отдалечена папка е трети случай и наследява каквато защита тази папка случайно има.
| Object | What a restore gives you | Where the encryption question lands |
|---|---|---|
| Encrypted container image | The volume, still locked | The container format and its recovery key material |
| Mounted files into a backup tool | Selected files and metadata | The backup repositorys own keys and design |
| Plain copy to a remote folder | Whatever the copy process kept | Whatever protects that storage afterwards |
Средният ред е този, който хората разчитат неправилно. Той може да е напълно добър дизайн: програмата за копия чете чист текст локално и записва шифровано, автентикирано хранилище. Тогава сигурността стъпва на тази програма и нейните идентификационни данни, а не на паролата на оригиналния контейнер, и двете не бива да се описват като една и съща мярка.
Проверка 1: какво трябва да възстанови възстановяването?
Задайте въпроса под формата на възстановяване, а не на копие. Ако изискването е „върни тази услуга на друг хост“, образ плюс материалът му за възстановяване е последователен отговор. Ако изискването е „върни финансовия табличен файл от март“, възстановяването на образ от няколко гигабайта само за да извлечете един файл е скъп начин да отговорите. И двете са законни възстановявания и не са взаимозаменяеми бюджети. План, който назовава само едното, рано или късно ще бъде изпитан от другото.
Запишете целта на възстановяването в плана: целия том, дърво от директории или отделни файлове. След това отбележете какви метаданни трябва да пътуват с тях, защото собствеността, правата, разширените атрибути и времевите маркери са част от възстановяването на файлово ниво и често се губят в работни процеси, базирани на копиране, които са изглеждали достатъчни при тестване.
Решете също кой извършва възстановяването. Хранилище на файлово ниво, което всеки оператор може да монтира, е различен модел на достъп от образ, който изисква присъствието на притежателя на ключа, и нито едно от двете не е автоматично по-добро. Важното е изборът да е съзнателен и записан.
Проверка 2: какво защитава съхраненото копие?
VPN защитава транспортен сегмент. Той не казва нищо за съхраненото копие, след като прехвърлянето приключи, и „мина през тунела“ не е твърдение за способността на оператора на копията да чете данните ви. Ако отдалечената страна се управлява от някой друг, въпросът е какво те могат да прочетат, а не дали връзката е била шифрована.
За образ това означава да защитите ключовия материал на контейнера отделно от самия образ. Загубата на заглавката губи тома, затова копирайте заглавката там, където образът не е:
cryptsetup luksHeaderBackup /dev/vg0/data --header-backup-file data-header.img
cryptsetup luksDump /dev/vg0/data | head -20
За хранилище на файлово ниво проверете дали инструментът шифрова и автентикира съдържанието и метаданните, преди да напуснат хоста, и разберете кой държи ключовете. документацията за дизайна на Restic е категорична, че се предполага доверен изходен хост и че шифроването не пречи на някой с достъп до хранилището да изтрива копия. И двете уточнения са важни: хранилището може да е поверително и въпреки това да бъде унищожено.
Проверка 3: последователно ли е копието?
Копие, което заснема променяща се файлова система, е копие, а не точка за възстановяване. За образ използвайте поддържания от инструмента за томове метод за стабилен моментен снимок, което обикновено означава операция по снимка или отмонтиране, а не четене на голям файл, докато се променя:
lvcreate -L 5G -s -n data-snap /dev/vg0/data
cryptsetup open /dev/vg0/data-snap data-snap --readonly
За монтирани файлове използвайте поддържаната от приложението процедура за консистентност при живи бази данни и други координирани данни. Копие на ниво файлова система и точка за възстановяване, съгласувана с приложението, са различни описания и разликата става видима само когато опитате да стартирате приложението от възстановеното копие.
Дръжте материала за възстановяване на независим защитен маршрут. Загубата на оригиналната машина никога не бива да губи и единствените идентификационни данни, които отварят нейното копие, а точно това се случва, когато файлът с ключа живее на тома, който се копира. Тествайте това разделение съзнателно: възстановете на хост, който никога не е виждал оригинала, използвайки само това, което планът казва, че е налично.
Проверка 4: важи ли откриването на промени за този обект?
Шифрованият контейнер изглежда за повечето инструменти за трансфер като един голям непрозрачен файл, затова малка промяна в чист текст може да доведе до голямо препрочитане или пълно качване наново в зависимост от инструмента и формата. Разделянето на блокове с променлив размер и дедупликацията, както ги описва restic, могат да намалят това, но са свойство на този инструмент, а не на шифрованите контейнери по принцип.
Измерете, вместо да предполагате. Сравнете първо пускане с второ след малка безобидна промяна и запишете прехвърлените байтове, както и изминалото време. Пазете известно добро копие, докато експериментирате, за да не изразходва тест единствената ви точка за възстановяване.
След това завършете списъка с единствения тест, който има значение: възстановяване без оригиналната машина. Отворете възстановен контейнер или възстановете избрани файлове с метаданните им и потвърдете, че приложението или потребителят може да използва резултата. Бърз и добре шифрован трансфер, който не може да отговори на този тест, е копие на данните ви, а не резервно копие.