вторник, 28 марта 2017 г.

Использование EncFS в Fedora 25: установка и автоматический запуск средствами systemd

EncFS - свободная файловая система, основанная на FUSE.
Принцип работы на пользовательском уровне простой, есть два каталога: каталог1 и каталог2, пользователь помещает файл в каталог1, файл шифруется и в уже зашифрованном виде кладется в каталог2. Пользователь работает только с каталогом1, где файлы лежат в исходном виде, а каталог2 можно, например, синхронизировать через яндекс диск или dropbox без опасения, что владелец площадки сможет прочитать содержимое файлов. 

В Fedora 25 для использования EncFS нужно установить пакет fuse-encfs. Для ввода пароля encfs позволяет использовать произвольную команду, можно хранить в файле и получать cat-ом пароль, я предпочитаю использовать keyring.


Устанавливаем требуемые пакеты
# dnf install fuse-encfs python-keyring

Файлы в исходном виде лежат в каталоге mkdir /home/user/decrypted, в зашифрованном в /home/user/encrypted.
Создание каталогов
$ mkdir /home/user/decrypted
$ mkdir /home/user/encrypted

Выполняем первый запуск и настройку
$ encfs /home/user/encrypted /home/user/decrypted
Будет предложено выбрать режим, можно нажать "x" и забить настройки вручную, либо ввести "p" и выбрать сразу pre-configured paranoia mode. После encfs спросит пароль для шифрования файлов в каталоге /home/user/encrypted.

Отмонтируем /home/user/decrypted
$ fusermount -u /home/user/decrypted

Помещаем пароль в keyring
$ keyring set encfs test

systemd-юнит для автоматического монтирования, например, ~/.config/systemd/user/encfs-test.service

[Unit]
Description=Mount encfs

[Service]
ExecStart=/usr/bin/encfs --extpass="/usr/bin/keyring get encfs test" /home/user/encrypted /home/user/decrypted
ExecStop=/usr/bin/fusermount -u /home/user/decrypted
Type=simple
RemainAfterExit=true

[Install]
WantedBy=default.target


Стартуем encfs и включаем автоматический запуск юнита при логине пользователя
$ systemctl start --user encfs-test.service
$ systemctl enable --user encfs-test.service

Комментариев нет:

Отправить комментарий