Используйте encfs (доступно как пакет в большинстве дистрибутивов). Установить:
mkdir ~/.encrypted ~/encrypted
encfs ~/.encrypted ~/encrypted
# enter a passphrase
mv existing-directory ~/encrypted
Первоначальный вызов для encfs
настройки зашифрованной файловой системы. После этого каждый файл, под которым вы пишете, ~/encrypted
не сохраняется непосредственно на диске, он зашифровывается и зашифрованные данные хранятся в ~/.encrypted
. Команда encfs
оставляет работающий демон, и этот демон обрабатывает шифрование (и дешифрование при чтении файла из-под ~/encrypted
).
Другими словами, для файлов, находящихся под ~/encrypted
, такие действия, как чтение и запись, не переводятся непосредственно в чтение или запись с диска. Они выполняются encfs
процессом, который шифрует и дешифрует данные и использует ~/.encrypted
каталог для хранения зашифрованного текста.
Когда вы закончите работать с вашими файлами на данный момент, размонтируйте файловую систему, чтобы к данным не было доступа, пока вы снова не введете ключевую фразу:
fusermount -u ~/encrypted
После этого ~/encrypted
снова будет пустой каталог.
Когда позже вы захотите снова поработать с этими файлами, подключите зашифрованную файловую систему:
encfs ~/.encrypted ~/encrypted
# enter your passphrase
Это, опять же, делает зашифрованные файлы ~/.encrypted
доступными в каталоге ~/encrypted
.
Вы можете изменить точку монтирования так, ~/encrypted
как вам нравится: encfs ~/.encrypted /somewhere/else
(но монтировать зашифрованный каталог только один раз за раз). Вы можете скопировать или переместить зашифрованный текст (но не во время его монтирования) в другое место или даже на другую машину; все, что вам нужно сделать для работы с файлами, это передать местоположение зашифрованного текста в качестве первого аргумента encfs
и местоположение пустой директории в качестве второго аргумента.