Поиск по сайту:

Зашифруйте свои данные с помощью EncFS в Ubuntu 16.04


Это руководство существует для этих версий ОС

  • Ubuntu 16.04 (Xenial Xerus)
  • Ubuntu 12.10 (Quantal Quetzal)

На этой странице

  1. 1 Предварительное примечание
    1. Информация о безопасности Encfs

    EncFS предоставляет зашифрованную файловую систему в пользовательском пространстве. Он работает без каких-либо специальных разрешений и использует библиотеку FUSE и модуль ядра Linux для предоставления интерфейса файловой системы. Это сквозная файловая система, а не зашифрованное блочное устройство, что означает, что оно создается поверх существующей файловой системы. В этом руководстве показано, как использовать EncFS в Ubuntu 16.04 (Xenial Xerus) для шифрования данных.

    1 Предварительное примечание

    В этом руководстве я использую имя пользователя falko в своей системе Ubuntu 16.04. Аудит безопасности выявил некоторые проблемы в текущей реализации encfs. Ознакомьтесь с предупреждением о безопасности ниже, чтобы решить, влияют ли эти проблемы на то, как вы хотите использовать encfs. Альтернативой encfs является ecryptfs (https://launchpad.net/ecryptfs), о которой я расскажу в другом руководстве.

    Информация о безопасности Encfs

    \Согласно аудиту безопасности, проведенному Тейлором Хорнби (Defuse Security), текущая реализация Encfs уязвима или потенциально уязвима для нескольких типов атак. Например, злоумышленник с доступом для чтения/записи к зашифрованным данным может снизить сложность дешифрования для впоследствии зашифрованных данных без того, чтобы законный пользователь заметил это, или может использовать временной анализ для вывода информации. Пока эти проблемы не будут решены, encfs не следует считать безопасным домом для конфиденциальных данных в сценариях, где такие атаки возможны.\

    2 Установка EncFS

    EncFS можно установить следующим образом (нужны root-права, поэтому используем sudo):

    sudo apt-get -y install encfs

    Теперь вам следует взглянуть на справочную страницу EncFS, чтобы ознакомиться с ее параметрами:

    man encfs

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

    Теперь я создам зашифрованные и расшифрованные каталоги в своем домашнем каталоге:

    mkdir -p ~/encrypted
    mkdir -p ~/decrypted

    Расшифрованный каталог действует как точка монтирования для зашифрованного каталога. Чтобы смонтировать ~/encrypted в ~/decrypted, просто запустите:

    encfs ~/encrypted ~/decrypted

    Если вы запускаете эту команду в первый раз, запускается установка EncFS, и вы должны определить пароль для зашифрованного тома:

    :~$ encfs ~/encrypted ~/decrypted
    Creating new encrypted volume.
    Please choose from one of the following options:
    enter "x" for expert configuration mode,
    enter "p" for pre-configured paranoia mode,
    anything else, or an empty line will select standard mode.
    ?> <-- p
    Paranoia configuration selected.
    Configuration finished. The filesystem to be created has
    the following properties:
    Filesystem cipher: "ssl/aes", version 3:0:2
    Filename encoding: "nameio/block", version 4:0:2
    Key Size: 256 bits
    Block Size: 1024 bytes, including 8 byte MAC header
    Each file contains 8 byte header with unique IV data.
    Filenames encoded using IV chaining mode.
    File data IV is chained to filename IV.
    File holes passed through to ciphertext.
    -------------------------- WARNING --------------------------
    The external initialization-vector chaining option has been
    enabled. This option disables the use of hard links on the
    filesystem. Without hard links, some programs may not work.
    The programs 'mutt' and 'procmail' are known to fail. For
    more information, please see the encfs mailing list.
    If you would like to choose another configuration setting,
    please press CTRL-C now to abort and start over.
    Now you will need to enter a password for your filesystem.
    You will need to remember this password, as there is absolutely
    no recovery mechanism. However, the password can be changed
    later using encfsctl.
    New Encfs Password: <-- Enter a secure password here
    Verify Encfs Password: <-- Enter the secure password a second time

    Убедитесь, что вы помните пароль, потому что нет никакого способа восстановить ваши зашифрованные данные, если вы забудете пароль!

    Теперь вы должны найти том EncFS в выходных данных

    mount
    :~$

    и

    df -h
    :~$ df -h
    Filesystem Size Used Avail Use% Mounted on
    udev 980M 0 980M 0% /dev
    tmpfs 200M 6.0M 194M 3% /run
    /dev/mapper/server1--vg-root 27G 1.7G 24G 7% /
    tmpfs 999M 0 999M 0% /dev/shm
    tmpfs 5.0M 0 5.0M 0% /run/lock
    tmpfs 999M 0 999M 0% /sys/fs/cgroup
    /dev/sda1 472M 55M 393M 13% /boot
    tmpfs 200M 0 200M 0% /run/user/1000
    encfs 27G 1.7G 24G 7% /home/falko/decrypted

    Чтобы сохранить данные в зашифрованном виде, поместите их в расшифрованный каталог, как если бы вы делали это в обычном каталоге:

    cd ~/decrypted
    echo "hello foo" > foo
    echo "hello bar" > bar
    ln -s foo foo2

    Если вы проверите содержимое каталога, то увидите, что видите его в незашифрованном виде...

    ls -l
    :~/decrypted$ ls -l
    total 8
    -rw-rw-r-- 1 falko falko 10 Apr 26 18:54 bar
    -rw-rw-r-- 1 falko falko 10 Apr 26 18:54 foo
    lrwxrwxrwx 1 falko falko 3 Apr 26 18:54 foo2 -> foo

    ... в то время как в зашифрованном каталоге он зашифрован:

    cd ~/encrypted
    ls -l
    :~/encrypted$

    Чтобы размонтировать зашифрованный том, запустите:

    cd
    fusermount -u ~/decrypted

    Проверьте выходы...

    mount

    ... и...

    df -h

    ... и вы увидите, что тома EncFS больше нет в списке.

    Чтобы смонтировать его снова, запустите

    encfs ~/encrypted ~/decrypted

    Вам будет предложено ввести пароль, который вы определили ранее:

    [электронная почта защищена]:~$encfs ~/encrypted ~/decrypted
    Пароль EncFS: <-- yoursecretpassword

    Если вы укажете правильный пароль, это смонтирует каталог ~/encrypted в ~/decrypted, откуда вы сможете получить доступ к своим зашифрованным данным в незашифрованном виде. Если вы забудете пароль, ваши зашифрованные данные будут потеряны!

    Если вы хотите изменить пароль, вы можете сделать это с помощью

    encfsctl passwd ~/encrypted

    команда.

    [электронная почта защищена]:~$encfsctl passwd ~/encrypted
    Введите текущий пароль Encfs
    Пароль EncFS: <-- yoursecretpassword
    Введите новый пароль Encfs
    Новый пароль Encfs: <-- newsecretpassword
    Подтвердите пароль Encfs: <-- newsecretpassword
    Ключ тома успешно обновлен.

    4 ссылки

    • EncFS: http://www.arg0.net/encfs
    • Убунту: http://www.ubuntu.com/