Шифрование файлов в Linux на примере Ubuntu

Шифрование файлов в Linux

В этой статье я расскажу о том, как можно шифровать файлы в операционной системе Linux с помощью таких криптографических файловых систем как eCryptfs и EncFS.

Немного теории

В отличие от операционной системы Windows в Linux есть довольно много средств криптографической защиты информации. С их помощью можно шифровать почтовые переписки, файлы, блочные устройства.

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

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

EncFS – это файловая система, которая использует любую директорию для прозрачного шифрования файлов.

Разберемся на примере.

Шифрование с помощью eCryptfs

Для работы с eCryptfs нужно открыть терминал (Ctrl + Alt + T) и прописать команду sudo apt-get install ecryptfs-utils. Таким образом, вы установите userspace-инструменты необходимые для шифрования.

Затем нужно создать каталог и монтировать смонтировать его. Для этого нужно по очереди выполнить следующие команды:

  • sudo mkdir /путь/имя каталога
  • sudo mount -t ecryptfs /путь к исходному каталогу/имя исходного каталога/ путь к целевому каталогу/имя целевого каталога/

Монтирование ecryptfs

После ввода команд вам нужно будет ввести пароль для ключа шифрования.

После ввода пароля вам будет предложен выбор алгоритма шифрования. По умолчанию это AES. Оставим его – нажмите enter для продолжения.

Далее нужно выбрать размер ключа:

  1. 16
  2. 32
  3. 24

Выберите 32 – для этого введите цифру 2 и нажмите enter.

выбрать размер ключа

Далее нам будет предложено разрешить или запретить доступ к незашифрованным файлам. Оставим доступ к файлам – введите y.

Затем нужно выбрать, шифровать ли имена файлов. Мы не будем шифровать имена – n.

Затем появиться различные опции, которые мы не будем менять. Введите yes и закончите монтирование.

Мы зашифровали каталог, в моем случае – test. Теперь нужно проверить работу шифрования.

Создайте файл в папке test. Я перешел в папку cd  /test и создал файл sudo nano testfile.txt. Напишите любой текст в этом файле и сохраните его.

Созщдание файла в зашифрованном каталоге

Теперь демонтируем eCryptfs с  помощью команды: sudo umount /путь/имя каталога/.

Посмотрите содержимое файла.

Зашифрованный файл после демонтирования

Шифрование с помощью EncFS

Установим EncFS с помощью команды sudo apt-get install encfs.

Допустим нам нужно все файлы, которые мы копируем в каталог cat1 шифровать и помещать в каталог cat2. Для этого нам нужно выполнить команду sudo encfs ~/cat1 ~/cat2.

Если этих каталогов не существует, то они будут созданы автоматически. Имена каталогов и пути можете выбрать любые.

Настройка encfs

Теперь при перемещении файлов (учтите, что нужно запустить nautilus с правами супер пользователя: команда sudo nautilus).

Теперь если вы скопируете файл в директорию cat1 то в директории cat2 будет содержаться зашифрованная копия этого файла.

Зашифрованная копия файла


Анатолий Бузов
Анатолий Бузов / об авторе

Обучаю HTML, CSS, PHP. Создаю и продвигаю сайты, скрипты и программы. Занимаюсь информационной безопасностью. Рассмотрю различные виды сотрудничества.


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *