DataLife Engine / Защити свои файлы в Linux: полное руководство по шифрованию для всех

Защити свои файлы в Linux: полное руководство по шифрованию для всех

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

В операционной системе Linux есть замечательный инструмент с открытым исходным кодом для шифрования файлов - GNU Privacy Guard или просто GPG, который может быть использован для шифрования любого файла из командной строки или в графическом режиме. О нем и пойдет речь в сегодняшней статье.


Содержание статьи

Утилита GPG

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

$ gpg опции файл параметры

Опции указывает что необходимо сделать с файлом, как это сделать и какие возможности использовать. Давайте рассмотрим самые основные опции, которые мы будем использовать в этой статье:

А теперь рассмотрим по порядку, что нам нужно для того, чтобы выполнять шифрование файлов Linux.

Шифрование файлов с помощью пароля

Симметричный шифр -  самый простой и в то же время надежный способ шифрования файлов linux. Расшифровать файл сможет любой у кого есть пароль. Для использования просто запустите терминал и выполните команду gpg с параметром -c:

gpg -c имя файла

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Утилита создаст файл с расширением gpg. Для расшифровки используйте:

gpg имя_файла.gpg

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Шифрование с использованием ключей

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

Сначала необходимо настроить gpg, создать пару ключей, для этого наберите:

gpg --gen-key

Программа задаст ряд вопросов для настройки ключа:

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Выберите требуемый тип ключа.

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Выберите нужный размер для ключа, обычно 2048 будет достаточно.

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Выберите срок действия для ключа.

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Проверьте все ли правильно.

Защити свои файлы в Linux: полное руководство по шифрованию для всех

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

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Введите ваш email адрес.

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Описание ключа, если нужно.

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Финальная проверка, затем нажмите O для завершения.

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Процесс генерации может занять некоторое время. Когда все будет готово в каталоге ~./gnupg появятся два файла. В файле pubring.gpg публичный ключ, а в secring.gpg приватный.

ls ~/.gnupg/

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Также вы можете посмотреть список доступных ключей:

gpg --list-keys

Защити свои файлы в Linux: полное руководство по шифрованию для всех

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

gpg -a -o gpgkey.asc --export имя_ключа

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Затем передаем файл на целевое устройство и импортируем ключ:

gpg --import gpgkey.asc

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

gpg --edit-key Username

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Для выбора уровня доверия введите команду trust:

gpg> trust

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

Теперь можно переходить к шифрованию. Для того чтобы зашифровать файл linux используйте команду:

 gpg -e -r ид_пользователя имя_файла

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Ид пользователя нужно указывать тот что вы использовали при создании ключа. Для расшифровки используйте:

 gpg -d имя_файла.gpg

Защити свои файлы в Linux: полное руководство по шифрованию для всех

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

tar -cf - каталог | gpg -e -r ид_пользователя

А для расшифровки:

gpg -d каталог.gpg | tar -xvf

Подписи и шифрование

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

Вы можете подписать файл с помощью опции --sign:

gpg --sign имя_файла

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Если вы не хотите изменить исходный файл, то можно создать подпись в отдельном файле:

gpg -b имя_файла

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Тогда в каталоге, рядом с файлом появиться файл .sig с подписью. Дальше, чтобы проверить достаточно использовать команду verify:

gpg --verify textfile.sig textfile

Защити свои файлы в Linux: полное руководство по шифрованию для всех

Если файл был изменен, то вы увидите, что подпись не сходиться.

Выводы

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

На завершение отличное видео о том, как работает асимметричный алгоритм шифрования:

11-10-2025, 23:17
Вернуться назад