Как зашифровать файлы с помощью gocryptfs в Linux
Вы хотите зашифровать важные файлы, но не весь жесткий диск вашей системы Linux? Если это так, мы рекомендуем gocryptfs
. Вы получите каталог, который, по сути, шифрует и расшифровывает все, что вы храните.
gocryptfs предлагает защиту от взлома данных
Конфиденциальность — это большая новость. Не проходит и недели без сообщения о взломе в той или иной организации. Компании либо сообщают о недавних инцидентах, либо раскрывают нарушения, которые произошли некоторое время назад. В обоих случаях это плохие новости для тех, чьи данные были раскрыты.
Поскольку миллионы людей пользуются такими сервисами, как Dropbox, Google Drive и Microsoft OneDrive, кажется, что бесконечный поток данных каждый день отправляется в облако. Если вы храните некоторые (или все) свои данные в облаке, что вы можете сделать для защиты секретной информации и личных документов в случае взлома?
Утечки данных бывают всех форм и размеров, конечно, и они не ограничиваются облаком. Потерянная карта памяти или украденный ноутбук — это всего лишь утечка данных в меньшем масштабе. Но масштаб не является решающим фактором. Если данные являются секретными или конфиденциальными, то их обладание кем-то другим может иметь катастрофические последствия.
Одним из решений является шифрование ваших документов. Традиционно это делается путем полного шифрования жесткого диска. Это безопасно, но также немного замедляет работу вашего компьютера. Кроме того, если вы потерпите катастрофический сбой, это может усложнить процесс восстановления вашей системы из резервных копий.
Система gocryptfs
позволяет шифровать только те каталоги, которые нуждаются в защите, и избежать общесистемных накладных расходов на шифрование и дешифрование. Он быстрый, легкий и простой в использовании. Также легко переместить зашифрованные каталоги на другие компьютеры. Пока у вас есть пароль для доступа к этим данным, он не оставляет следов ваших файлов на другом компьютере.
Система gocryptfs
построена как легкая зашифрованная файловая система. Его также можно подключить с помощью обычных учетных записей без полномочий root, поскольку он использует пакет «Файловая система в пользовательском пространстве» (FUSE). Это действует как мост между gocryptfs
и подпрограммами файловой системы ядра, к которым ему необходим доступ.
Установка gocryptfs
Чтобы установить gocryptfs
в Ubuntu, введите следующую команду:
sudo apt-get install gocryptfs
Чтобы установить его в Fedora, введите:
sudo dnf install gocryptfs
На Manjaro команда такая:
sudo pacman -Syu gocryptfs
Создание зашифрованного каталога
Часть славы gocryptfs
заключается в простоте его использования. Принципы таковы:
- Создайте каталог для файлов и подкаталогов, которые вы защищаете.
- Используйте
gocryptrfs
для инициализации этого каталога. - Создайте пустой каталог в качестве точки подключения, а затем подключите к нему зашифрованный каталог.
- В точке подключения вы можете просматривать и использовать расшифрованные файлы, а также создавать новые.
- Отключите зашифрованную папку, когда закончите.
Мы собираемся создать каталог под названием «хранилище» для хранения зашифрованных данных. Для этого набираем следующее:
mkdir vault
Нам нужно инициализировать наш новый каталог. Этот шаг создает файловую систему gocryptfs
в каталоге:
gocryptfs -init vault
Введите пароль, когда вам будет предложено; вы напечатаете его дважды, чтобы убедиться, что он правильный. Выберите сильный вариант: три несвязанных между собой слова, включающие знаки препинания, цифры или символы, — хороший шаблон.
Ваш мастер-ключ сгенерирован и отображен. Скопируйте и сохраните это в безопасном и личном месте. В нашем примере мы создаем каталог gocryptfs
на исследовательском компьютере, который стирается после написания каждой статьи.
Так как это необходимо для примера, вы можете увидеть мастер-ключ для этой директории. Вы определенно захотите быть намного более скрытным со своим. Если кто-то получит ваш мастер-ключ, он сможет получить доступ ко всем вашим зашифрованным данным.
Если вы перейдете в новый каталог, вы увидите, что были созданы два файла. Введите следующее:
cd vault
ls -ahl
«gocryptfs.diriv» — это короткий двоичный файл, а «gocryptfs.conf» содержит настройки и информацию, которые вы должны хранить в безопасности.
Если вы загружаете зашифрованные данные в облако или создаете их резервные копии на небольших переносимых носителях, не включайте этот файл. Однако если вы выполняете резервное копирование на локальный носитель, который остается под вашим контролем, вы можете включить этот файл.
При наличии достаточного количества времени и усилий можно будет извлечь ваш пароль из записей «зашифрованный ключ» и «соль», как показано ниже:
cat gocryptfs.conf
Монтирование зашифрованного каталога
Зашифрованный каталог монтируется в точку монтирования, которая является просто пустым каталогом. Мы собираемся создать один под названием «выродок»:
mkdir geek
Теперь мы можем смонтировать зашифрованный каталог в точке монтирования. Строго говоря, на самом деле монтируется файловая система gocryptfs
внутри зашифрованного каталога. Нас просят ввести пароль:
gocryptfs vault geek
Когда зашифрованный каталог смонтирован, мы можем использовать каталог точки монтирования так же, как и любой другой. Все, что мы редактируем и создаем в этом каталоге, на самом деле записывается в смонтированный зашифрованный каталог.
Мы можем создать простой текстовый файл, например:
touch secret-notes.txt
Мы можем отредактировать его, добавить к нему некоторый контент, а затем сохранить файл:
gedit secret-notes.txt
Наш новый файл создан:
ls
Если мы переключимся в наш зашифрованный каталог, как показано ниже, мы увидим, что был создан новый файл с зашифрованным именем. Вы даже не можете сказать, какой это тип файла по названию:
cd vault
ls -hl
Если мы попытаемся просмотреть содержимое зашифрованного файла, мы увидим, что он действительно зашифрован:
less aJGzNoczahiSif_gwGl4eAUnwxo9CvOa6kcFf4xVgYU
Наш простой текстовый файл, показанный ниже, теперь совсем не просто расшифровать.
Размонтирование зашифрованного каталога
Когда вы закончите работу с зашифрованным каталогом, вы можете размонтировать его с помощью команды fusermount
. Являясь частью пакета FUSE, следующая команда отключает файловую систему gocryptfs
внутри зашифрованного каталога от точки монтирования:
fusermount -u geek
Если вы наберете следующее, чтобы проверить каталог точки монтирования, вы увидите, что он все еще пуст:
ls
Все, что вы сделали, надежно хранится в зашифрованном каталоге.
Просто и безопасно
Преимущество простых систем в том, что они используются чаще, в то время как более сложные процессы, как правило, отходят на второй план. Использование gocryptfs
не только простое, но и безопасное. Простота без безопасности не имеет смысла.
Вы можете создать столько зашифрованных каталогов, сколько вам нужно, или только один для хранения всех ваших конфиденциальных данных. Вы также можете создать несколько псевдонимов для монтирования и размонтирования вашей зашифрованной файловой системы и еще больше упростить процесс.