Синхронизация dm-зашифрованных дисков?

Эта работа:

#!/bin/bash
sshfs -o idmap=user my_user@192.168.1.200:/ /media/192.168.1.200 | nautilus /media/192.168.1.200
sleep 1
lc_id=`xwininfo -name 192.168.1.200 |grep 'Window id' |awk '{print $4}'`

while [ ! -z "$(xwininfo -id "$lc_id" | grep "Absolute upper-left X" )" ]
do
   sleep 1
done
fusermount -u /media/192.168.1.200

Кредиты идут в @Mahesh

1
задан 3 June 2014 в 14:45

2 ответа

Альтернатива: ecryptfs

В этих случаях лучше использовать шифрование на основе файлов, например ecryptfs, вместо решения на основе шифрования на основе блоков.

Преимущества:

Учитывая, что вы используете одну и ту же кодовую фразу для обоих устройств, вы можете rsync ваши данные, даже если ecryptfs не смонтирован, и сохранить дополнительные дешифровки и накладные расходы на шифрование. Вы пишете только немного больше данных, чем полезная нагрузка, а не целый раздел или контейнер, что уменьшает износ ячеек памяти.

Недостатки:

Учитывая, что вы используете одну и ту же кодовую фразу для обоих устройств, вы можете rsync ваши данные, даже если ecryptfs не смонтирован, и сохранить дополнительные дешифрования и шифрования. ! d4]

Я слышал, что некоторые пользователи также используют ecryptfs для онлайн-сервисов, таких как Dropbox или Google Drive.

Использование

Установщик Ubuntu использует ecryptfs для настройки шифрования домашних папок пользователей, поэтому вы, возможно, уже установили пакет ecryptfs-utils. Использование ecryptfs для внешних носителей очень просто, просто выполните следующую команду для соответствующей точки монтирования:

sudo mount -t ecryptfs my_mountpoint/ my_mountpoint/

Затем будут предложены следующие параметры и, наконец, смонтирован дополнительный уровень к той же точке монтирования или директории, которая шифрует и расшифровывает ваши данные:

Passphrase: 
Select cipher: 
 1) aes: blocksize = 16; min keysize = 16; max keysize = 32
 2) blowfish: blocksize = 8; min keysize = 16; max keysize = 56
 3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24
 4) twofish: blocksize = 16; min keysize = 16; max keysize = 32
 5) cast6: blocksize = 16; min keysize = 16; max keysize = 32
 6) cast5: blocksize = 8; min keysize = 5; max keysize = 16
Selection [aes]: 
Select key bytes: 
 1) 16
 2) 32
 3) 24
Selection [16]: 
Enable plaintext passthrough (y/n) [n]: 
Enable filename encryption (y/n) [n]: y
Filename Encryption Key (FNEK) Signature [0000000000000000]: 
Attempting to mount with the following options:
  ecryptfs_unlink_sigs
  ecryptfs_fnek_sig=0000000000000000
  ecryptfs_key_bytes=16
  ecryptfs_cipher=aes
  ecryptfs_sig=0000000000000000
Mounted eCryptfs

Если вы используете диспетчер паролей, вы должны сохранить обобщенные параметры ecryptfs_* вместе с парольной фразой. Обязательно включите шифрование имени файла (FNEK означает ключ шифрования имени файла).

Советы по использованию ecryptfs

Поиск длинных имен файлов Следующая команда должна предоставить вам список файлов с именами файлов, длиннее 135 байтов (135 вопросительных знаков, если я не ошибаюсь), а также работает для многобайтовых символов.
LC_ALL=C find . -type f -name '???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????*'
Это 135, потому что когда вы используете rsync для передачи файлов, он создает временные файлы с ведущей точкой и 7 конечными символами (.<my_original_filename>.abcdef). Если он не может создать временный файл, он будет жаловаться и продолжить следующий файл. Вы пишете только немного больше данных, чем полезную нагрузку, а не целый раздел или контейнер, что уменьшает износ ячеек памяти.
4
ответ дан 24 May 2018 в 07:08

Восстановите диски с помощью lvm, а затем синхронизируйте их с lvmsync. https://github.com/mpalmer/lvmsync

0
ответ дан 24 May 2018 в 07:08

Другие вопросы по тегам:

Похожие вопросы: