Главная » Безопасность » Лучшие средства шифрования для Linux
средства шифрования для Linux

Лучшие средства шифрования для Linux

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

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

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

Еще по теме:

Как мы тестировали средства шифрования

Все инструменты ставились согласно рекомендованному механизму установки. Более простые в установке и в работе получали больше очков.

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

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

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

Шифры и шифрование

Отвечают ли они стандартам индустрии?

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

Самый популярный шифр — Advanced Encryption Standard (AES) [Расширенный Стандарт Шифрования], основанный на коде Rijndael. AES с длиной ключа 256 бит используется очень широко, поскольку предлагает правильный баланс скорости и безопасности. Большинство инструментов в нашем сравнении по умолчанию используют комбинацию этого популярного шифра и длины ключа.

AES Crypt выделяется среди остальных, поскольку поддерживает только один шифр, на что без обиняков указывает его название.

KGpg, являющийся интерфейсом GPG. в первую очередь применяется для шифрования по ключам, но может также выполнять симметричное шифрование, использующее вместо ключей шифры. Команда gpg —version выведет все имеющиеся в вашей системе шифры. Однако поддержка симметричного шифрования в KGpg довольно ограничена, поскольку доступна только при шифровании текста во встроенном редакторе, а не во время шифрования файлов на компьютере, что выглядит странным.

EncFS поддерживает AES, Blowfish, Twofish и любой другой шифр, имеющийся в системе. Инструмент также позволяет менять длину ключа для шифров, поддерживающих разную длину ключа.

VeraCrypt по умолчанию использует шифрование AES, но можно выбрать любой из пяти поддерживаемых шифров.

Лучшие средства шифрования для Linux
Лучшие средства шифрования для Linux. VeraCrypt

Поддерживается также каскадное шифрование, т. е. шифрование уже зашифрованного сообщения с использованием того же или другого алгоритма. Для этой цели он поддерживает пять алгоритмов, включая AES-Twofish и Serpent-Twofish-AES.

zuluCrypt является интерфейсом утилиты cryptsetup и по умолчанию создает зашифрованные тома LUKS. LUKS—это Linux Unified Key Setup, спецификация шифрования диска, специально разработанная для Linux. Он тоже может использовать любой алгоритм, встроенный в ваше ядро. Можно удвоить размер ключа до 512 бит или выбрать один из двух кодов: Twofish или Serpent. Национальный институт стандартов и технологии США (US National Institute of Standards and Technology] считает, что стойкость у этих двух больше, чем у AES, но вычислительно они медленнее.

Интеграция программ шифрования

Как они встраиваются в рабочий стол?

EncFS. Вы можете смонтировать зашифрованные тома с помощью одного из нескольких интерфейсов EncFS. Некоторые, типа Gnome EncFS Manager имеют также значок в системном лотке и даже способны автоматически монтировать и размонтировать шифрованные папки на сменяемых внешних устройствах. Пользователям KDE предлагается скрипт kdeencfs, чтобы монтировать зашифрованные папки encfs с паролями, хранящимися в кошельке KDE.

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

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

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

zuluCrypt на данный момент доступен только в Linux, но также может создавать и открывать тома TrueCrypt, VeraCrypt и Plain. Тома TrueCrypt или VeraCrypt являются лучшими альтернативами, если шифрованный том надо делить между компьютерами Linux, Windows и OS X.

Лучшие средства шифрования для Linux
Лучшие средства шифрования для Linux. zuluCrypt

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

Работа с программой шифрования

Хорошо ли воспитаны эти программы шифрования?

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

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

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

AES Crypt

Программа для шифрования AES Crypt — это один из самых простых инструментов в установке и использовании. Просто скачайте и распакуйте установщик из tar-архива на его сайте. Затем запустите его, и перед запуском графической программы он потребует привилегии суперпользователя. Для шифрования файла просто щелкните по файлу правой кнопкой и выберите соответствующую опцию в своем менеджере файлов, чтобы открыть файл в другом приложении. Вы увидите список всех программ, установленных в вашем дистрибутиве. Выберите AES Crypt, который предложит вам ввести пароль, чтобы дважды зашифровать файл. Вот и всё. Зашифрованная версия файла будет размещена в той же папке с тем же именем, но с расширением .aes. Чтобы дешифровать файл, можно открыть файл .aes с помощью программы AES Crypt из контекстного меню.

KGpg

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

Программы шифрования Linux
Программы шифрования в Linux. KGpg

Можно шифровать данные щелчком правой кнопки по соответствущему файлу и выбором Actions > Encrypt File (Действия > Зашифровать файл). А чтобы дешифровать файл, выведите его контекстное меню и перейдите в Actions > Decrypt File [… > Дешифровать файл]. Программа также пригодна для шифрования и дешифрования содержимого буфера.

EncFS

EncFS — прежде всего инструмент командной строки, и найдется в репозиториях почти всех дистрибутивов. Хотя у него нет официального графического интерфейса, пользователи Gnome для управления и монтирования шифрованных директорий могут обратиться к Gnome EncFS Manager. Однако для настройки зашифрованных папок EncFS придется перейти в терминал. Программа требует две директории—для шифрованных и дешифрованных файлов. Обычно шифрованные файлы хранятся в скрытой директории. После вызова EncFS предлагает выбрать один из двух режимов настройки. По умолчанию стоит режим паранойи, использующий код AES с длиной ключа 256 бит. Опытные пользователи могут выбрать режим эксперта и вручную задать разные настройки шифрования. Аналогично, монтируя новую шифрованную директорию, вы получаете две готовых настройки с разными параметрами шифрования.

VeraCrypt

VeraCrypt — ответвление ныне покойного проекта TrueCrypt, унаследовавшее большую часть функций своего родителя, а также некоторые странности — например, лицензию, из-за которой не каждый дистрибутив допускает его в свои репозитории. Проект также не предлагает бинарников для популярных дистрибутивов. Зато его установка проста. Есть мастер для обычных задач, таких как создание зашифрованных томов и их монтирование, идеальный для новых пользователей. Есть также опция сравнительного теста скорости шифрования и дешифровки разных поддерживаемых шифров. Вы можете использовать программу для организации томов и их монтирования одним нажатием. Можно изменить пароль шифрования и добавить или удалить файлы ключей к томам. Выполнять некоторые задачи с помощью его графического интерфейса довольно легко, но некоторые требуют определенных усилий.

zuluCrypt

zuluCrypt предлагает бинарники для дистрибутивов Ubuntu, Debian, Fedora и openSUSE. Интерфейс программы достаточно интуитивен. Есть отдельные опции для создания шифрованного контейнера в файле и на разделе. Можно создать случайные файлы ключей и применять их для шифрования контейнеров. Если вы используете zuluCrypt для создания контейнера LUKS, вам напомнят о немедленном резервном копировании заголовка сразу после создания контейнера. Есть опции для шифрования и дешифровки отдельных файлов и безопасного стирания устройства записью на него случайных данных, а также графический инструмент для монтирования и управления томами. Программа умеет шифровать блочные устройства, т.е. шифровать всё записанное на устройстве. Блочным устройством может быть весь диск, раздел или даже файл, монтированный как устройство обратной петли (loopback).

Еще по теме: Анонимные операционные системы

Документация и поддержка

Нужна помощь? Обычно доступно содействие онлайн и оффлайн.

EncFS. Основной источник информации по использованию для EncFS — обычные man-страницы. Однако вы также найдете подробные руководства, рассеянные по всей Сети.

AES Crypt немного лучше, поскольку на сайте проекта имеется основная информация по работе как с графической версией программы, так и с версией командной строки. Есть также ссылка на скачивание более подробного Руководства пользователя в формате PDF.

KGpg предлагает подробное руководство пользователя, где вы также найдете советы и подсказки на его странице в KDE UserBase wiki. Можно попросить помощи на форумах Сообщества KDE или в IRC канале kde-util, либо разместить запросы для определенной версии дистрибутива.

zuluCrypt. Структура подсказки zuluCrypt охватывает все основные моменты. Меню Help информирует пользователей о важности резервного копирования заголовков томов. Кроме того, имеется Справочник пользователя, охватывающий вопросы использования, с пояснением за и против разных видов поддерживаемых томов. В wiki на Github проекта имеются инструкции по версиям командной строки zuluCrypt и инструментов zuluMount, а также FAQ. Хотя у zuluCrypt нет своего форума, его разработчик очень активен на других популярных форумах.

VeraCrypt выигрывает благодаря наличию иллюстрированного руководства для новичков и подробного руководства пользователя, с объяснениями тонкостей работы функций программы. Также имеется очень глубокий FAQ, и вы можете получить помощь на официальных форумах.

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

Легко ли работать с зашифрованными контейнерами?

AES Crypt шифрует отдельные файлы, поэтому имеется концепция томов. Привязав файл .aes к AES Crypt, вы можете дважды щелкнуть по нему в менеджере файлов, чтобы дешифровать его.

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

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

VeraCrypt умеет монтировать тома через свой графический интерфейс, а также из командной строки. Можно опционально смонтировать тома только для чтения, указав их точку монтирования вручную.

zuluCrypt, в отличие от остальных, включает zuluMount — инструмент монтирования, способный монтировать все зашифрованные тома, поддерживаемые zuluCrypt, в т. ч. тома LUKS и TrueCrypt. Можно монтировать тома и из самой zuluCrypt, но у zuluMount более простой интерфейс, и она разработана специально для монтирования и демонтирования файловых систем, а также и незашифрованных томов, и даже управляет подключаемыми устройствами. Как и zuluCrypt, инструмент zuluMount имеет интерфейс командной строки и позволяет сделать точку монтирования открытой и поделиться ею с другими пользователями.

Настраиваемость программ шифрования

Есть ли здесь что-нибудь для опытных пользователей?

Хотя программы предлагают вполне разумные настройки по умолчанию, они должны быть достаточно гибки, чтобы позволить опытным пользователям изменять параметры под свои требования. AES Crypt — это очень простая программа, и настроить в ней можно немногое. А вот ее версия командной строки позволяет настроить такие параметры, как использование файлов ключа.

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

Три остальные программы по настраиваемости предлагаемых ими параметров практически равны. KGpg, как и все программы KDE, отлично поддается настройке. Можно задать параметры по умолчанию для шифрования, дешифровки, интерфейса пользователя и апплета. Многие опции шифрования напрямую относятся к GPG. Можно заставить шифровать всё с определенным ключом в дополнение к выбранному вручную, а также выбрать шифрование файлов недоверенными ключами.

VeraCrypt понимает указания кэшировать пароль в памяти и очищать память после выхода из программы. Можно вручную настроить опции монтирования по умолчанию для зашифрованных томов. А также программа способна задействовать аппаратное ускорение для содействия AES, если в вашем процессоре доступны расширения.

При создании нового тома с помощью zuluCrypt есть опция шифрования с помощью файла ключа вместо ключа — и даже обоих, для большей безопасности. Можно изменить файловую систему тома с ext4 по умолчанию на vfat, ntfs, btrfs и прочие. Кроме английского, программа локализована на немецком и французском и умеет отмечать тома как избранные для более быстрого доступа.

Функции шифрования

Какая программа выделяется среди прочих?

Графическая версия AES Crypt довольно негибкая, но версия командной строки поддерживает создание и шифрование с помощью файла ключа.

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

Программы шифрования linux
Программы для шифрования файлов в Linux. EncFS

Зашифрованная папка EncFS может также размещаться на удаленном файловом сервере, доступном через NFS, sshfs и т.п. У инструмента имеется специальный режим, позволяющий сделать резервное копирование ваших зашифрованных файлов обычными инструментами файловой системы, например, Rsync. KGpg включает простой текстовый редактор, куда можно вводить или вставлять текст для шифрования/дешифровки.

ZuluCrypt и VeraCrypt практически равносильны. Помимо создания зашифрованных контейнеров внутри папок, обе программы также могут помещать зашифрованный контейнер внутри собственного раздела или даже на диск USB. Они не умеют шифровать раздел загрузки или диск загрузки, но вы можете использовать их для шифрования файла с паролем или файлом ключа, или с тем и другим. Оба также позволяют добавлять ключ или файл ключа к уже созданному тому и предлагают опцию добавления данных «присыпки [salt]» к зашифрованному контейнеру. Присыпка обьединяет значения, созданные их генераторами случайных чисел, и усложняет задачу предварительного вычисления всех возможных ключей для атаки методом перебора.

Используя VeraCrypt, вы сможете сравнить и протестировать все поддерживаемые коды, a zuluCrypt пригодится для надежного удаления данных с внешнего устройства. VeraCrypt еще умеет создавать скрытые зашифрованные тома для правдоподобного отрицания, хотя многие эксперты принижают пользу этой функции. ZuluCrypt вдобавок может создавать скрытые тома VeraCrypt.

Выводы

Хотя все инструменты работали, как и заявлено, мы ищем тот, который будет достаточно интуитивным в использовании. EncFS показал не лучший результат — он только для командной строки, и вам придется перейти в терминал, чтобы создать папки для размещения ваших данных. Правда, это не так уж сложно. Создав зашифрованные папки, вы получите графические инструменты для управления взаимодействием с ними. Хотя вы к нему привыкнете, EncFS всё же проигрывает остальным из-за отсутствия графического интерфейса.

Его диаметральной противоположностью является AES Crypt. Программа проста в использовании и вообще не требует обучения. Желая воспользоваться всеми благами шифрования при минимальной затрате времени. Однако простота и отсутствие возможностей настройки ограничивают его привлекательность.

KGpg, будучи программой KDE, недостатком опций настройки не страдает. Но… финиширует последним, так как симметричное шифрование не самая сильная его сторона. Да, KGpg, вероятно, один из лучших интерфейсов для GPG. Но GPG в основном применяется для своей реализации криптографии открытого ключа: она предусматривает два ключа и использует для шифрования открытый ключ получателя.

Очень тесное соперничество — между VeraCrypt и zuluCrypt. Обе программы задействуют удобные графические интерфейсы и облегчают задачу создания и использования зашифрованных фрагментов для обеспечения безопасности любых видов данных. VeraCrypt — ответвление популярной, но спорной программы TrueCrypt, и сохраняет ее знакомый интерфейс. VeraCrypt кросс-платформенная, и кроме Linux, устанавливается и на Windows и Mac OS X, в отличие от предназначенной только для Linux zuluCrypt.

Однако мы присуждаем первое место zuluCrypt — по самым разным причинам. Прежде всего — за большую универсальность, умение работать с несколькими типами контейнеров, включая и созданные с помощью TrueCrypt. Притом zuluCrypt интуитивнее из этих двух: меню здесь лучше размечены и предлагают более понятную стартовую точку, более чем компенсируя слабоватую поддержку.

Еще по теме: Как зашифровать файл с помощью dm-crypt.

5 комментариев

  1. Виталий Охрименко

    Я привык к VeraCrypt. На мой взгляд лучшая программа для защиты личной информации на компьютере.

  2. AnGeL

    Что скрывается за внезапным закрытием Truecrypt?

    • Falcon

      Никто не знает, но история мутная.

  3. Pan Szymanowski

    Все это познавательно, но ИМХО несколько громоздко. Я делаю из командной стоки:

    Зашифровка:
    openssl enc -e -aes-256-cbc -in FILE -out CRYPTFILE
    Где FILE — это исходный файл, а CRYPTFILE — зашифрованный результат.

    Расшифровка:
    openssl enc -d -aes-256-cbc -in CRYPTFILE -out FILE

    Пароль вам предложит ввести. Преимущество такого способа в том, что он не привязан к Линуксу. openssl есть везде. Зашифровали вы в Линуксе, расшифровали в Солярисе или AIX. И не надо ничего устанавливать. Параметры тоже можно самому выбрать, какие нравятся.
    Пароль вам предложат ввести.

    • Falcon

      Мне нравится. Спасибо, что поделились!

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

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