Linux как хранить пароли

Обновлено: 02.07.2024

Всем привет. В этой статье я хотел бы поделиться своим опытом настройки и использования pass — менеджера паролей для Linux и не только, примечательного своей простотой, использованием уже присутствующих в системе инструментов и возможностью работать исключительно из консоли. Конкретнее, будут затронуты проблемы, связанные с генерацией и хранением секретного ключа gpg, а также с настройкой совместной работы pass, gpg, git, github и браузера. Всё — под Linux, Windows и Android.

Технически pass является очень простой обвязкой над GnuPG и git, написанной на bash. Каждый пароль (и сопутствующая ему информация, например логин) хранится в зашифрованном файле. Поиск нужного пароля осуществляется по имени файла, шифрование — при помощи GnuPG, синхронизация между устройствами — при помощи git.

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

    . GUI-приложение, написанное, как нетрудно догадаться, на Qt. . Приложение для командной строки, написанное на go. Под Windows я пользуюсь именно им. Однако, на мой взгляд, разработчики начали добавлять туда слишком много лишних фич, при этом отказываясь от интуитивности.
Разработчик pass — Джейсон Доненфельд, также являющийся автором WireGuard (реализации VPN на основе современных стандартов криптографии, "work of art по сравнению с OpenVPN и IPSec" по мнению Линуса Торвальдса, которая скорее всего появится в ядре Linux 5.6).

GnuPG — система для шифрования и электронных подписей. Несмотря на недостатки (вот, например, статья с критикой gpg), она уже больше 20 лет остается де-факто стандартом. Даже статья по ссылке затрудняется назвать альтернативный инструмент для шифрования файлов.

Процесс создания секретного ключа в консоли описан например на habr, но почему бы не сделать это в GUI? В проекте KDE сделали фронтенд для GPG под названием Kleopatra. Пользователи Linux найдут его в репозиториях, а в gpg4win Kleopatra есть из коробки.

В меню выбираем File — New Key Pair — Create a personal OpenPGP key pair .

Вводим имя и email. Не нужно беспокоиться, что в будущем вы их смените. GPG позволяет свободно добавлять к ключу новые uid и удалять существующие. Если хотите подписывать создаваемым ключом свои git-коммиты и видеть плашки "Verified" напротив них, то тут нужно указать реальный email, имеющий статус "подтвержденный" в вашем аккаунте на github.

Далее нажимаем Advanced Settings для настройки параметров ключа.


В разделе Key Material выбираем ECDSA/EdDSA + ECDH . Я предпочитаю использовать не классический алгоритм RSA, а основанные на эллиптических кривых ed25519/cv25519. Их основное преимущество над RSA с точки зрения конечного пользователя — меньший размер ключа при аналогичной криптостойкости. Утверждается, что ключ ed25519 длиной 256 бит примерно такой же стойкий, как ключ RSA длиной 3072 бита. Единственное преимущество последнего — большая распространенность, особенно в аппаратных системах.

В меню еще можно выбрать семейства кривых Brainpool и NIST. Однако вторые подозреваются в наличии бэкдора NSA, и к первым тоже есть небольшие претензии. Поэтому предложенные известным криптографом Даниэлем Бернштейном ed25519 и cv25519 — лучший выбор.

Интересный факт: в активно продвигаемом сейчас стандарте аутентификации FIDO U2F (в разработке которого активно участвовала компания Google) применяются именно кривые NIST. Также, например, в Android Keystore есть их поддержка, но нет поддержки ed25519. Почему так произошло?

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

Если планируете использовать этот ключ для работы с git, то в разделе Certificate Usage нужно отметить пункты Signing и Authentication .

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

Генерация мастер-пароля

Разумеется, всегда можно сгенерировать случайную строку из достаточного (например 20) количества символов. Однако её практически невозможно запомнить и трудно ввести без ошибок, особенно на смартфоне. Поэтому EFF в своем гайде рекомендует вместо этого пользоваться парольными фразами.

Метод работает так: берем достаточно большой словарь (EFF предлагает несколько словарей, например этот) и выбираем из него не менее 6 случайных слов. Выбирать можно как угодно, даже вообще без компьютера при помощи игральной кости или монетки. Такой метод называется diceware. До игральных костей и монеток я еще не дошел, поэтому просто воспользуюсь входящей в состав GNU coreutils утилитой shuf :

Сохраняем эту парольную фразу в надежном месте за пределами компьютера.

В результате будет создан секретный ключ. При работе в консоли часто придётся указывать его fingerprint, стоит записать это число.

Теперь можно настроить интеграцию gpg и git.

Строго говоря, этот пункт не обязателен. Хранилище паролей pass — это просто каталог с зашифрованными файлами, а значит, его можно синхронизировать как угодно. Google Drive, Яндекс.Диск, и т.д. и т.п. Если не хотите использовать git, то советую обратить внимание на Syncthing. Это программа с открытым исходным кодом, которая требует минимум настроек и передаёт файлы напрямую между устройствами, не храня их на сторонних серверах.

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

Стандартный механизм аутентификации в git — с помощью SSH. Обычно подразумевается, что для этого нужен специальный ключ ssh. Однако есть возможность, не плодя лишние сущности, использовать созданный на предыдущем шаге ключ gpg. Чтобы gpg-ключ (точнее, подключ) мог использоваться ssh, должны быть выполнены два условия:

  1. у него должен быть установлен флаг A — Authenticate;
  2. его keygrip должен быть прописан в файле

Первый пункт уже выполнен, а получить keygrip можно командой

В выводе gpg нас интересует keygrip подключа ed25519 ( 05B6641E23D720E87EE6A26020BAB214B842F2B7 ).

Теперь можно загрузить публичный ключ на github. Заходим в раздел SSH and GPG keys в профиле и выбираем New SSH key . В консоли набираем

и копируем получившийся публичный ssh-ключ.

Git может подписывать коммиты с помощью gpg, и github это поддерживает. Думаю, это полезная для безопасности фича. Экспортируем публичный ключ gpg командой

и копируем то, что получилось, в форму New GPG key .
Дальнейшие действия специфичны для используемой операционной системы.

Интеграция gpg и git (linux)

Используемый git клиент OpenSSH может получать ключи двумя способами: из каталога

/.ssh и через сокет, созданный демоном ssh-agent . В качестве последнего может выступать gpg-agent , чем мы и воспользуемся. В файле

/.gnupg/gpg-agent.conf нужно прописать строку enable-ssh-support .

Перезапускаем gpg-agent командой

После этого он создаст сокет по адресу

Этот путь (он может зависеть от дистрибутива) надо прописать в переменной окружения $SSH_AUTH_SOCK , и ssh его подхватит. Набираем в консоли команду

Интеграция gpg и git (Windows)

Относительно недавно Microsoft добавила OpenSSH в число доступных для установки компонентов Windows, а также реализовала поддержку сокетов типа AF_UNIX , таких как тот самый SSH_AUTH_SOCK . Тем не менее, Win32-OpenSSH не умеет взаимодействовать с gpg4win, так как до сих пор использует только именованные каналы.

Поэтому придётся установить вечнозелёный Putty. Прописываем в файле

строку enable-putty-support и перезапускаем gpg-agent. После этого он начнет прикидываться Pageant — демоном ключей. В той же папке должен быть расположен и файл sshcontrol .

Чтобы git-клиент начал использовать putty, нужно создать переменную окружения GIT_SSH с путем до plink.exe . Например, у меня это

Кстати насчет git. Обычно устанавливающийся клиент git for windows содержит много ненужного (по крайней мере, ненужного для работы gopass), например собственную реализацию OpenSSH. Однако его разработчики делают и более легкие версии, которые можно скачать на github. Например, там есть в 2 раза меньший по размеру MinGit, а рисковые люди могут попробовать и MinGit-busybox. Версия busybox возникла из-за стремления разработчиков создать git-клиент, использующий api Win32 без прослоек вроде MSYS2. Однако, по их же отзывам, mingit-busybox пока содержит много багов. Подробнее об этих усилиях можно почитать в тикете.

Убеждаемся, что gpg-agent запущен ( gpg-connect-agent /bye ), и проверяем соединение с github:

Настройка git

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

Пункт gpg.program нужен, если gpg нет в PATH .

Секретный ключ стоит хранить так же надежно, как и парольную фразу, то есть за пределами компьютера. Можно просто распечатать длинную последовательность чисел, но распознавать её или вводить с клавиатуры — занятие не для слабонервных. Поэтому я предпочитаю генерировать QR-код, который легко отсканировать любым смартфоном. Для этого есть специальная программа qrencode . Генерация картинки с QR-кодом выполняется так:

Разумеется, чем меньше ненужной информации в бэкапе, тем лучше. Здесь очень кстати приходится небольшой размер ключа ed25519. Спасибо Даниэлю Бернштейну!

Бэкап paperkey создается следующим образом:

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

Затем сканируем QR-код и импортируем ключ обратно в GPG. В качестве сканера QR-кодов под Android мне нравится BinaryEye, свободная программа с удобным интерфейсом. На картинке ниже — бэкап секретного ключа из этой статьи.


Надеюсь, вы нигде не будете использовать этот ключ. Он создан только для иллюстрации.

Если все работает, то можно двигаться дальше.

Теперь, когда у нас есть надежно сохраненный и защищенный секретный ключ, а также работающая интеграция с git, можно начинать пользоваться собственно pass. Я предпочитаю gopass, так как эта альтернативная обвязка работает под Windows.
Инициализируем хранилище паролей командой

и выбираем из списка нужный секретный ключ.

Работа с git происходит так же, как в случае с обычным репозиторием, только в командной строке надо дописывать (go)pass . Инициализируем репозиторий и добавляем туда нужный origin:

Адрес можно узнать на странице репозитория на github, нажав кнопку Clone or download .

В gopass есть специфичная команда

выполняющая и git pull , и git push , то есть полную синхронизацию.

Хранилище по умолчанию создается в папке

/.password-store , но можно указать и свой путь.
Для работы с паролями в консоли поддерживаются команды ls, cp, mv, search, create, и т.п. Полный список можно получить, набрав gopass --help , но лично я 95% времени пользуюсь не консолью, а плагином для браузера.

Интеграция с браузером

Плагин для браузера называется gopass bridge, его можно найти в сторах Chrome и Firefox (см. ссылку).

Для связи плагина с собственно gopass понадобятся вспомогательный скрипт и манифест для native messaging. Они создаются командой

которая предложит нам выбрать браузер и расположение скрипта.

Проверяем, как все работает. Создаем новый пароль:

отвечаем на все вопросы и сохраняем. GPG предложит ввести мастер-пароль для работы с секретным ключoм.

Теперь открываем меню плагина с характерным голубым сусликом, и если все прошло успешно, то мы сможем найти там свой пароль.

TOTP-ключи

Лично я пользуюсь FreeOTP, однако с этими ключами можно работать и с помощью pass. Пользователям оригинального pass надо установить расширение pass-otp, а в gopass и APS (см. ниже) нужные функции есть из коробки.

Чтобы добавить TOTP-ключ в хранилище паролей при помощи pass-otp, получаем URL (начинающийся с otpauth:// ) и вводим команду

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

Реализация GnuPG под Android называется OpenKeychain. Для её настройки достаточно зайти в меню "управление ключами" и импортировать ранее созданный секретный ключ. Единственный недостаток OpenKeychain лично для меня — нет разблокировки по отпечатку пальца.

Реализация pass под Android называется android-password-store, или просто APS.

Устанавливаем и запускаем APS. Прежде чем синхронизировать хранилище паролей, заходим в меню "Настройки". Там нам понадобятся следующие пункты:

  1. Настройки сервера git . Получившийся URL должен быть таким же, какой указан на странице репозитория на github. Тип авторизации — OpenKeychain .
  2. Git utils . В этом разделе указываем username и email из ключа gpg.
  3. Провайдер OpenPGP . Выбираем OpenKeychain .
  4. Автозаполнение . Эта совсем недавно появившаяся фича включает заполнение паролей в приложениях на Android 8.0+.

На заметку пользователям смартфонов Huawei, да и всем остальным тоже: OpenKeychain, APS, BinaryEye, FreeOTP, а также Syncthing, Telegram, Tachiyomi, KDE Connect и много чего еще доступны в F-Droid. Пользователи Google Play должны это оценить: каталог ПО, в котором нет рекламы, руткитов, и просто мусорного софта из известной статьи tonsky.

До появления автозаполнения в APS я пользовался keepass2android. Её нет в F-Droid по оригинальной причине: она написана на Xamarin, но мейнтейнеры F-Droid вот уже 9 месяцев как не могут установить этот фреймворк на свой сборочный сервер. Кто-нибудь, сделайте что-нибудь.

Теперь можно клонировать. Выбираем на главном экране "клонировать с сервера", указываем желаемое расположение хранилища, проверяем настройки git.

Если попытка работы с git приведет к ошибке (это было вероятно в предыдущих релизах APS из-за использования устаревшей версии библиотеки jgit от проекта Eclipse), то по-прежнему есть Syncthing.

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

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

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

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

Менеджеры паролей для Linux

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

1. KeePassXC

o0lhsPKzTQoAAAAASUVORK5CYII=

Пожалуй, стоит начать с самого популярного менеджера паролей на Linux – KeePass, а именно его обновлённой и доработанной сообществом версии – KeePassXC. На текущий момент именно она разрабатывается наиболее активно. Если говорить о сохранности паролей, то открытый код действительно имеет значение и гарантирует отсутствие бэкдоров.

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

Для установки KeePassXC можно воспользоваться командой:

sudo apt install keepassxc

2. KeeWeb

fym8kw0BvvvmAAAAAElFTkSuQmCC

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

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

3. Bitwarden

D1oWjaQebf1jAAAAAElFTkSuQmCC

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

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

Bitwarden устанавливается из snap-пакета командой:

sudo snap install bitwarden

4. Encryptr

+FJjlUJk4cQAAAABJRU5ErkJggg==

Если же вам нужен максимально простой менеджер паролей, то обратите своё внимание на Encryptr. Интерфейс имеет всего пару кнопок и строку поиска. Но даже этого достаточно для того, чтобы хранить свои пароли.

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

Для установки Encryptr требуется скачать пакет для вашего дистрибутива с официального сайта.

5. Enpass

wHtVSuie28RHAAAAABJRU5ErkJggg==

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

Как и в случае с Biwarden вам доступна не только настольная версия программы, но ещё и расширения для браузеров. Это заметно упрощает использование вашей базы для входа на сайты. База хранится локально, но её можно синхронизировать с другими устройствами через облако.

Перед установкой необходимо добавить репозиторий, поэтому потребуется ввести в консоль сразу несколько команд:

6. MYKI

4HwgIIpPhQkAAAAAElFTkSuQmCC

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

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

Для установки MYKI следует скачать пакет с программой с официального сайта.

Браузерные расширения

A4n4nRWVThIzAAAAAElFTkSuQmCC

Конечно, вы можете использовать встроенный в браузер менеджер паролей, но гораздо удобнее работать в отдельном расширении. Какие-то из них функционируют самостоятельно, другие требуют наличия установленного на компьютере менеджера. Например, популярный в Windows SafeInCloud тоже имеет расширения для браузера, но работает только совместно с установленным менеджером, которого на Linux нет. Но вы можете установить расширения к вышеперечисленным программам: Bitwarden, Enpass, MYKI. Также стоит присмотреться к самостоятельным расширениям, вроде Lastpass на скриншоте выше.

Выводы

В этой статье мы собрали лучшие менеджеры паролей для Linux. Выбрать менеджер паролей не так сложно. Их не так много, но каждый их них может предложить что-то своё. Хотите получить надёжное локальное хранилище паролей, то KeePassXC или KeeWeb подойдут как нельзя лучше. Нужно кроссплатформенное решение, то MYKI или Bitwarden будут работать на каждом вашем устройстве. И даже для работы в терминале существует менеджер паролей Pass, но работать с базой данных в консоли не так удобно.

Хватает ли вам встроенного в браузер менеджера паролей? Если нет, то какую программу вы выбрали для себя? Расскажите об этом в комментариях.


K SPM – разработанное Keeper Security популярное приложение предлагает пользователям и предприятиям надежное решение для создания и хранения паролей, обеспечивающее защиту от киберугроз и нарушений данных. Оно имеет элегантный интерфейс и совместимо со всеми платформами и современными браузерами.


2. Bitwarden

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

Пользователям предлагается несколько бесплатных функций, включая красивый UI, двухфакторную аутентификацию, синхронизацию, встроенный генератор паролей, дополнительный self-hosting, безлимитное хранилище, хранение кредитных карт и иных документов. Дополнительные функции премиум-сегмента стоят от $10 в год.


3. Buttercup

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


4. Enpass

Еще один занимательный кросс-платформенный менеджер паролей – Enpass . Он хранит не только пароли, но и кредитные карты, банковские реквизиты, PDF-файлы, пароли Wi-Fi и т.д. Среди его многочисленных возможностей – поддержка носимых устройств, тегов, TOTP, биометрических данных и различных файлов ключей.


5. MYKI

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


6. Pass

Этот менеджер паролей – утилита командной строки с открытым исходным кодом, который сохраняет пароли в зашифрованном файле GPG. Такой метод был выбран из-за приверженности разработчиков *nix-философии. Pass поддерживает расширения, интеграцию с Git, автодополнение bash, генерацию паролей, а также импорт и экспорт. Компоненты графического интерфейса для него создает сообщество разработчиков.


7. LastPass

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


8. KeePass

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


9. Dashlane

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

Если вы хотите пользоваться бесплатной пробной версией Dashlane Premium дольше стандартных 30 дней, можно получить бесплатную премию на 6 месяцев по этой ссылке .


10. KeePassXC

Kee P ass XC – бесплатный и легковесный менеджер паролей с открытым исходным кодом, уделяющий особое внимание безопасности. В наследство от старого менеджера KeePassX новому достались дополнительные функции: независимость от Mono, интеграция с браузером и более приятный UI .

Как и KeePassX, он также предлагает встроенный генератор паролей, многоязычную поддержку, поддержку групповых паролей и импорт данных из многих форматов файлов. Он сохраняет URL-адреса, вложения, комментарии, пароли и другую информацию в единой базе данных.


11. Password Safe

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

Этот инструмент можно использовать для хранения пар ключ/значение и номеров кредитных карт, которые доступны с помощью одного мастер-пароля. Он был создан для Windows, но существуют бета-версии, доступные пользователям Ubuntu, Debian и FreeBSD. В Sourceforge есть и версия на основе Java.

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


12. Password Gorilla

Password Gorilla был создан для управления паролями и другой регистрационной информацией, вроде имен пользователей и тайтлов без их отображения на экране, а также для выполнения функции генератора паролей. Он доступен для Windows, Linux, Mac, а также для Android, и поставляется как утилита командной строки или приложение с GUI.

Password Gorilla отличается от других менеджеров тем, что получить и запустить его не так просто, как соперников, поскольку для этого требуется умение работать с исходниками.


13. Universal Password Manager (UPM)

UPM – бесплатный и легковесный софт с открытым исходным кодом, предназначенный для безопасного хранения учетных данных. Он доступен для Windows, Android, Mac и Linux с такими функциями, как синхронизация базы данных на нескольких устройствах и шифрование AES.

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


Заключение

Безопасность паролей – очень больная и животрепещущая тема в последние годы, т. к. участились случаи мошенничества и кражи данных пользователей. Естественно, безопаснее хранить свои пароли в голове, но если для каждого сервиса у вас свой пароль (что строго необходимо), то вероятность забыть какой-то из них повышается. Стоит использовать подобный софт во избежание непоправимой боли и разочарования. Если у вас есть свой проверенный вариант, способный безопасно хранить данные, напишите в комментариях. Нам очень интересно ваше мнение.

Favorite

Добавить в избранное

Главное меню » Linux » Где и как хранятся пароли в Linux?

Где и как хранятся пароли в Linux?

Файл /etc/passwd хранит всю важную информацию, необходимую для входа пользователя. Проще говоря, в файле /etc/passwd хранятся данные учетной записи пользователя. Этот файл представляет собой обычный текстовый файл, содержащий полный список всех пользователей вашей системы Linux. Он содержит информацию об имени пользователя, пароле, UID (идентификатор пользователя), GID (идентификатор группы), оболочке и домашнем каталоге. Этот файл должен иметь разрешения на чтение, поскольку многие утилиты командной строки используются для сопоставления идентификаторов пользователей с именем пользователя. Но должны иметь ограниченные права на запись только для учетных записей суперпользователя или пользователя root.

В этой статье будет показано, как и где можно хранить пароли учетных записей системных пользователей в дистрибутиве Linux. Мы реализовали все демонстрации в системе Ubuntu 20.04. Однако вы можете найти файл /etc/passwd в любом дистрибутиве Linux.

Предварительные условия

У вас должны быть права root для выполнения административных команд.

Базовые сведения о файле/etc/passwd

Файл/etc/passwd содержит информацию об учетной записи пользователя вашей системы. Все сохраненные поля разделяются знаком двоеточия «:».
Когда вы запустите следующую команду, вы увидите каждую запись файла /etc/passwd:

Приведенная выше команда выведет список всех пользователей вашей системы Linux.

Читать Все, что вам нужно знать о жесткой ссылке в Linux

Подробная информация о форматах полей /etc/passwd:

Поиск пользователя в файле/etc/passwd

Вы можете найти конкретного пользователя с помощью файла/etc/passwd, используя команду grep. Например, мы хотим найти имя пользователя andreyex из файла/etc/passwd, используя следующий синтаксис, тогда мы можем легко найти указанного пользователя, сэкономив наше время:

Приведенный выше синтаксис изменится на следующую форму:

Показать разрешения для файла/etc/passwd

Как мы упоминали выше, все остальные пользователи, кроме root, должны иметь возможность читать права доступа к файлу/etc/passwd, и что владельцем должен быть суперпользователь или root.

Введите следующее, чтобы проверить разрешения на чтение файла:

Чтение файла/etc/passwd

Вы можете прочитать файл/etc/passwd в своей системе Linux с помощью следующего сценария bash или напрямую запустить то, что написано ниже, во время выполнения команд цикла на терминале.

Создайте текстовый файл и вставьте в него следующий код:

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

Сохраните указанный выше файл с именем readfile.sh.

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

Изучите файл/etc/shadow

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

Вы можете увидеть все пароли в зашифрованном виде.

Вывод

Из этой статьи мы видели, что все данные учетной записи и пароли пользователя хранятся в файле/etc/passwd в системе Linux. Вы можете читать этот файл, но только пользователи root имеют «права на запись». Более того, мы также видели все зашифрованные пароли, хранящиеся в файле/etc/shadow. Вы также можете изучить файл/etc/group, чтобы получить подробную информацию о группе пользователя.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

5 лучших менеджеров паролей для Linux

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

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

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

Основные современные веб-браузеры, такие как Mozilla Firefox и Google Chrome, имеют встроенный менеджер паролей. Это поможет, но вы ограничены его использованием только в определенном веб-браузере.

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

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

Менеджеры паролей для Linux

Мы отдали приоритет тем, которые имеют открытый исходный код (с некоторыми платными опциями, прошу простить за это!), а также предлагаем отдельное настольное приложение (GUI) для Linux. Выделены патентованные опционы.

1. Bitwarden


  • Открытый исходный код
  • Бесплатно для личного пользования (платные опции для апгрейда)
  • Сквозное шифрование для облачных серверов
  • Кросс-платформенный
  • Доступны расширения браузера
  • Инструменты командной строки

Bitwarden - один из самых впечатляющих менеджеров паролей для Linux. Честно говоря, я не знал о нем до этого - и я уже переключаюсь с LastPass. Я смог легко и без проблем импортировать данные из LastPass.

Премиум версия стоит всего 10 долларов в год, что, кажется, того стоит (я обновился для личного пользования).

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

Кроме того, вы получите все необходимые функции, такие как двухфакторная аутентификация для входа в систему, опции импорта/экспорта учетных данных, отпечатки пальцев (уникальный ключ), генератор паролей и многое другое.

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

2. Buttercup


  • Открытый исходный код
  • Бесплатно, без дополнительных покупок.
  • Кросс-платформенный
  • Доступны расширения браузера

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

В отличие от некоторых других, вам не нужно скептически относиться к его облачным серверам, потому что он работает только в автономном режиме и поддерживает подключение таких облачных источников, как Dropbox, OwnCloud, Nextcloud и WebDAV.

Таким образом, вы можете выбрать облачный источник, с которым вам необходимо синхронизировать данные. И на это у вас есть выбор.

3. KeePassXC


  • Открытый исходный код
  • Простой интерфейс
  • Кросс-платформенный
  • Нет мобильной поддержки

KeePassXC - это ответвление сообщества KeePassX - которое первоначально была портом Linux для KeePass на Windows.

Если вы не знаете, KeePassX не поддерживается уже много лет - так что KeePassXC - это хорошая альтернатива, если вам нужен простой менеджер паролей. KeePassXC может и не самый красивый или изящный менеджер паролей, но он справляется со своими задачами.

Вы можете найти некоторые неофициальные приложения Android с открытым исходным кодом с поддержкой KeePass, но мы бы не рекомендовали их.

Тем не менее, настольное приложение защищено и с открытым исходным кодом. Думаю, стоит попробовать, что скажете?

4. Enpass (без открытого исходного кода)


  • Проприетарное
  • Множество функций, включая поддержку носимых устройств.
  • Полностью бесплатно для Linux (с премиум-функциями)

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

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

Приятно видеть, что Enpass активно управляется пакетом для дистрибутивов Linux. Также обратите внимание, что он работает только на 64-битных системах. Официальные инструкции по установке вы можете найти на их сайте. Установка потребует использования терминала, но я следовал указанным шагам, чтобы удостовериться, и это, магическим образом, сработало.

5. myki (без открытого исходного кода)


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

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

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

Тем не менее, если вы выбираете премиум-версию, цены довольно высокие, но решать вам.

Попробуйте и сообщите нам, как это работает!

Некоторые другие менеджеры паролей также заслуживают внимания

Если вам необходимо использовать менеджеры паролей на базе браузера (расширений), мы рекомендуем попробовать LastPass, Dashlane и 1Password. LastPass даже предлагает Linux клиент (и инструмент командной строки).

Если вы ищете менеджеров CLI паролей, пропробуйте Pass.

Password Safe - тоже вариант, но клиент Linux находится в бета-версии. Я бы не рекомендовал полагаться на "бета-приложения" для хранения паролей. Universal Password Manager существует, но больше не поддерживается. Возможно, вы также слышали о Password Gorilla, но у него нет активной поддержки.

В заключение

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

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

Читайте также: