Хранение инкрементных моментальных снимков ZFS с локальным шифрованием в Amazon Glacier

Чтобы иметь действительно удаленные и надежные резервные копии моего пула ZFS, я хотел бы хранить моментальные снимки zfs в Amazon Glacier. Данные должны быть зашифрованы локально, независимо от Amazon, чтобы обеспечить конфиденциальность. Как я мог это сделать?


person TinkerTank    schedule 20.08.2017    source источник
comment
Начиная с версии 0.8, ZFS в Linux поддерживает встроенное шифрование. Возможно, команда zfs send -Rw — это именно то, что вам нужно.   -  person lucidbrot    schedule 23.05.2020


Ответы (1)


Существующий снимок можно отправить в корзину S3 следующим образом:

zfs send -R <pool name>@<snapshot name> | gzip | gpg --no-use-agent  --no-tty --passphrase-file ./passphrase -c - | aws s3 cp - s3://<bucketname>/<filename>.zfs.gz.gpg

или для инкрементных резервных копий:

zfs send -R -I <pool name>@<snapshot to do incremental backup from> <pool name>@<snapshot name> | gzip | gpg --no-use-agent  --no-tty --passphrase-file ./passphrase -c - | aws s3 cp - s3://<bucketname>/<filename>.zfs.gz.gpg

Эта команда возьмет существующий снимок, сериализует его с помощью zfs send, сожмет и зашифрует парольной фразой с помощью gpg. Парольная фраза должна быть читаема в первой строке файла ./passphrase.

Не забудьте сделать резервную копию файла с парольной фразой отдельно в нескольких местах! - Если вы потеряете к нему доступ, вы больше никогда не сможете получить доступ к своим данным!

Это требует:

  • Предварительно созданная корзина Amazon s3
  • awscli установлен (pip install awscli) и настроен (aws configure).
  • gpg установлен

Наконец, правила жизненного цикла S3 можно использовать для перехода объекта S3 в glacier через заданное время (или сразу).


Для восстановления:

aws s3 cp s3://<bucketname>/<filename>.zfs.gz.gpg - | gpg --no-use-agent --passphrase-file ./passphrase -d - | gunzip | sudo zfs receive <new dataset name> 
person TinkerTank    schedule 20.08.2017
comment
Я бы рекомендовал использовать gzip -9 или bzip2. В зависимости от данных, это может лучше сжимать. Узким местом здесь будет не сжатие, а сетевая копия. - person Andrew Henle; 22.08.2017
comment
пожалуйста, исправьте ошибку в For restore: section, в s3 cp src и target - person demon101; 10.07.2018
comment
Извините за это, исправлено сейчас. - person TinkerTank; 11.07.2018