Как зашифровать файлы с помощью gocryptfs в Linux

Вы хотите зашифровать важные файлы, но не весь жесткий диск вашей системы Linux? В таком случае мы рекомендуем gocryptfs. Вы получите каталог, который, по сути, шифрует и расшифровывает все, что вы храните.

gocryptfs предлагает защиту от утечки данных

Конфиденциальность — большая новость. Не проходит и недели без объявления о взломе той или иной организации. Компании либо сообщают о недавних инцидентах, либо раскрывают нарушения, произошедшие некоторое время назад. В обоих случаях это плохие новости для тех, чьи данные были раскрыты.

Потому что миллионы людей пользуются такими услугами, как Dropbox, Гугл Диск, и Microsoft OneDrive, казалось бы, нескончаемый поток данных отправляется в облако каждый день. Если вы храните некоторые (или все) свои данные в облаке, что вы можете сделать для защиты секретной информации и личных документов в случае нарушения?

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

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

  Как легко загружать и устанавливать приложения в Linux с помощью AppImage Pool

Система gocryptfs позволяет шифровать только те каталоги, которые нуждаются в защите, и избегать общесистемных накладных расходов на шифрование и дешифрование. Он быстрый, легкий и простой в использовании. Также легко переместить зашифрованные каталоги на другие компьютеры. Пока у вас есть пароль для доступа к этим данным, он не оставляет следов ваших файлов на другом компьютере.

Система gocryptfs представляет собой легкую зашифрованную файловую систему. Он также может монтироваться обычными учетными записями без полномочий root, потому что он использует Файловая система в пространстве пользователя (FUSE) пакет. Это действует как мост между gocryptfs и подпрограммами файловой системы ядра, к которым он должен получить доступ.

Установка gocryptfs

Чтобы установить gocryptfs в ubuntu, введите эту команду:

sudo apt-get install gocryptfs

sudo apt-get install gocryptfs в окне терминала.

Чтобы установить его в Fedora, введите:

sudo dnf install gocryptfs

sudo dnf установить gocryptfs в окно терминала

На Манджаро команда:

sudo pacman -Syu gocryptfs

sudo pacman -Syu gocryptfs в окне терминала

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

Часть славы gocryptfs заключается в простоте ее использования. Принципы:

Создайте каталог, содержащий файлы и подкаталоги, которые вы защищаете.
Используйте gocryptrfs для инициализации этого каталога.
Создайте пустой каталог в качестве точки монтирования, а затем подключите к нему зашифрованный каталог.
В точке монтирования вы можете видеть и использовать расшифрованные файлы, а также создавать новые.
Когда закончите, отключите зашифрованную папку.

Мы собираемся создать каталог под названием «хранилище» для хранения зашифрованных данных. Для этого мы набираем следующее:

mkdir vault

mkdir vault в окне терминала.

Нам нужно инициализировать наш новый каталог. На этом этапе в каталоге создается файловая система gocryptfs:

gocryptfs -init vault

gocryptfs -init vault в окне терминала.

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

  7 основных приложений для Linux, которые необходимо установить каждому пользователю

Ваш главный ключ сгенерирован и отображен. Скопируйте и сохраните это где-нибудь в надежном и частном месте. В нашем примере мы создаем каталог gocryptfs на исследовательской машине, который стирается после написания каждой статьи.

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

Если вы перейдете в новый каталог, вы увидите, что были созданы два файла. Введите следующее:

cd vault
ls -ahl

cd vault в окне терминала.

«Gocryptfs.diriv» — это короткий двоичный файл, а «gocryptfs.conf» содержит настройки и информацию, которую следует хранить в безопасности.

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

При наличии достаточного времени и усилий можно будет извлечь ваш пароль из записей «зашифрованный ключ» и «соль», как показано ниже:

cat gocryptfs.conf

cat gocryptfs.conf в окне терминала.

Монтирование зашифрованного каталога

Зашифрованный каталог монтируется в точке монтирования, которая представляет собой просто пустой каталог. Мы собираемся создать одного под названием «компьютерщик»:

mkdir geek

Теперь мы можем смонтировать зашифрованный каталог в точку монтирования. Строго говоря, на самом деле смонтирована файловая система gocryptfs внутри зашифрованного каталога. Нам предлагается ввести пароль:

gocryptfs vault geek

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

  Как установить редактор Writefull в Linux

Мы можем создать простой текстовый файл, например следующий:

touch secret-notes.txt

Мы можем отредактировать его, добавить в него контент, а затем сохранить файл:

gedit secret-notes.txt

Наш новый файл создан:

ls

mkdir geek в окне терминала.

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

cd vault
ls -hl

cd vault в окне терминала.

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

less aJGzNoczahiSif_gwGl4eAUnwxo9CvOa6kcFf4xVgYU

less aJGzNoczahiSif_gwGl4eAUnwxo9CvOa6kcFf4xVgYU в окне терминала.

Наш простой текстовый файл, показанный ниже, теперь трудно расшифровать.

Содержимое зашифрованного текстового файла меньше в окне терминала.

Отключение зашифрованного каталога

Когда вы закончите с зашифрованным каталогом, вы можете размонтировать его с помощью команда fusermount. Часть пакета FUSE, следующая команда отключает файловую систему gocryptfs внутри зашифрованного каталога из точки монтирования:

fusermount -u geek

fusermount -u geek в окне терминала.

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

ls

ls в окне терминала.

Все, что вы сделали, надежно хранится в зашифрованном каталоге.

Просто и безопасно

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

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