Шифрование непустой папки с помощью ecryptfs

Шифрование непустой папки с помощью ecryptfs

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

Мне интересно, можно ли смонтировать папку, в которой уже есть файлы (и подпапки с файлами), или мне придется создать новый пустой каталог, смонтировать его, а затем скопировать файлы в него, что до сих пор работало, но я хотел бы избежать этого из-за объема данных, которые мне придется копировать.

Редактировать: дополнительная информация. Я использую Ubuntu 20.04.5 и хотел бы также зашифровать похожую папку на сетевом диске. Не уверен, изменит ли это как-то возможное решение.

решение1

eCryptfs (и в принципе любое шифрование на диске, вроде LUKS и т. д.) работает только путем шифрования файлов и записи зашифрованных данных на диск. Нет способа избежать записи всех данных на диск.

Если вам просто нужен мгновенный «зашифрованный просмотр» ваших файлов (возможно, только для удаленного хранения), то EncFS может сделать это с помощью своей --reverseопции:

Если вам нужен автоматизированный инструмент для переноса существующего домашнего каталога пользователя в зашифрованный домашний каталог ecryptfs, то такой ecryptfs-migrate-home инструмент есть (в ecryptfs-utilsпакете), но он просто автоматически создает зашифрованный каталог, копирует в него старый домашний каталог, а затем настраивает его как новый домашний каталог. Он содержит несколько предупреждений:

ВНИМАНИЕ: Сделайте полную резервную копию незашифрованных данных на другой системе или внешнем носителе. Этот скрипт опасен и в случае ошибки может привести к потере данных или блокировке ПОЛЬЗОВАТЕЛЯ в системе!

Для этой программы требуется свободное дисковое пространство в 2,5 раза больше текущего размера домашнего каталога для миграции. После успешного выполнения вы можете восстановить большую часть этого пространства, удалив каталог cleartext.

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


Если вам просто нужно мгновенное «зашифрованное представление» ваших файлов (возможно, только для удаленного хранения), то EncFS может сделать это с помощью своей --reverseопции, однако ваши исходные файлы останутся незашифрованными на вашем диске:

Обычно EncFS предоставляет текстовый вид данных по требованию: он хранит зашифрованные данные и отображает текстовые данные. С --reverse он берет в качестве источника текстовые данные и выдает зашифрованные данные по требованию. Это может быть полезно для создания удаленных зашифрованных резервных копий, когда вы не хотите хранить локальные файлы незашифрованными.

Например, следующий код создаст зашифрованное представление в /tmp/crypt-view.

encfs --reverse /home/me /tmp/crypt-view

Затем вы можете скопировать каталог /tmp/crypt-view, чтобы получить копию зашифрованных данных. Вы также должны сохранить копию файла /home/me/.encfs6.xml, который содержит информацию о файловой системе. Вместе эти два файла можно использовать для воспроизведения незашифрованных данных:

ENCFS6_CONFIG=/home/me/.encfs6.xml encfs /tmp/crypt-view /tmp/plain-view

Теперь /tmp/plain-view содержит те же данные, что и /home/me

Обратите внимание, что режим --reverse работает только с ограниченными параметрами конфигурации, поэтому многие настройки могут быть отключены при использовании. Несовместимые опции на данный момент: Filename Initialization Vector Chaining и External IV Chaining.

Связанный контент