Pass — командный менеджер паролей
Быстрые ссылки
Получение и настройка
Добавление паролей в хранилище
Получение паролей
Многострочные пароли
Интеграция с Git
Взаимодействие с другими инструментами

Pass — это командный парольный менеджер, спроектированный по принципам Unix. Он позволяет управлять паролями через привычные командные утилиты: пароли сохраняются в виде GPG‑зашифрованных текстовых файлов в дереве директорий. Такой подход упрощает резервное копирование, интеграцию с Git и автоматизацию.
Получение и настройка
pass доступен в репозиториях большинства распространённых дистрибутивов Linux и в пакетных менеджерах других ОС. Установите пакет под именем pass через ваш пакетный менеджер, например:
aptдля Ubuntu/Debian или
yumдля Fedora/RHEL. Подробные инструкции по дистрибутивам — на официальном сайте Pass.
Перед началом убедитесь, что у вас есть GPG‑ключ — он нужен для шифрования файлов паролей. Создать новый ключ можно командой:
gpg --full-generate-keyСледуйте подсказкам: рекомендуем использовать тип ключа по умолчанию (RSA и RSA) и увеличить размер ключа до 4096 бит для максимальной совместимости и безопасности. Обязательно запишите идентификатор созданного ключа (ID) — он понадобится дальше.
Инициализация хранилища Pass выполняется командой, где вместо placeholder-gpg-key подставьте ваш GPG‑ID:
pass init placeholder-gpg-keyПосле этого в домашней папке появится директория .password-store, куда Pass будет сохранять зашифрованные файлы. Каждому паролю соответствует отдельный файл, что упрощает выборочное резервное копирование и отслеживание изменений.

Если нужно использовать несколько хранилищ, задайте переменную окружения PASSWORD_STORE_DIR в конфигурации вашей оболочки. Это позволяет хранить пароли в нестандартном месте, например на отдельном зашифрованном разделе или сетевом каталоге.
Важно: храните приватный GPG‑ключ и резервные копии фраз восстановления в безопасном месте. Потеря приватного ключа делает доступ к зашифрованным файлам невозможным.
Добавление паролей в хранилище
Добавлять записи просто — используется команда pass insert. Укажите имя сервиса в качестве аргумента, и Pass интерактивно запросит ввод пароля:
pass insert cloudsavvy/examplePass создаст новый зашифрованный файл /home/you/.password-store/cloudsavvy/example.gpg.
Имена сервисов поддерживают слэши, что позволяет строить иерархию:
pass insert personal/email/gmailЭто создаст цепочку подпапок personal/email внутри .password-store.
Pass также умеет генерировать сильные пароли:
pass generate cloudsavvy/example-generated 32 --no-symbolsПример выше создаст пароль длиной 32 символа и сохранит его в cloudsavvy/example-generated. По умолчанию генерируются пароли с буквами, цифрами и символами; флаг --no-symbols отключает специальные символы. Чтобы сразу скопировать сгенерированный пароль в буфер обмена, используйте флаг --clip (или -c):
pass generate mysite/new 24 --clipПримечание: Pass использует утилиты буфера обмена платформы (xclip, wl‑clipboard и т.д.). На некоторых системах нужно установить соответствующий пакет.


Получение паролей
Чтобы перечислить все записи, выполните pass без аргументов:
pass
Чтобы получить значение пароля, передайте имя записи:
pass cloudsavvy/exampleПо умолчанию Pass выводит пароль в терминал; чтобы скопировать его в буфер обмена на 45 секунд, используйте --clip или -c:
pass -c cloudsavvy/exampleПосле вызова с --clip буфер автоматически очищается через 45 секунд, что уменьшает риск утечки данных.
Удаление и редактирование записей:
pass rm cloudsavvy/example
pass edit cloudsavvy/examplepass edit откроет файл пароля в текстовом редакторе по умолчанию (переменная EDITOR). При любом взаимодействии с паролями система запросит разблокировку вашего GPG‑ключа — это выступает в роли «мастер‑ключа» для всего хранилища.

Многострочные пароли
Поскольку пароли — обычные текстовые файлы, вы можете хранить дополнительные строки данных: например, резервные коды двухфакторной аутентификации, URL, заметки или JSON‑метаданные.
Правило: первая строка файла должна содержать сам пароль без префиксов. Остальные строки используются для доп. данных.
Откройте запись в редакторе:
pass edit personal/2fa/githubИ добавьте строки с дополнительной информацией. При создании через CLI вы можете сразу включить режим многострочного ввода:
pass insert -m personal/2fa/backupНажмите Ctrl+D после ввода, чтобы сохранить.

Интеграция с Git
Pass включает встроенную поддержку Git для версионирования хранилища. Инициализируйте Git в хранилище командой:
pass git initПосле этого Pass будет автоматически коммитить изменения при добавлении, редактировании или удалении записей. Вы также можете использовать обычные команды Git через префикс pass git:
pass git remote add origin example-server:/passwords.git
pass git push -u origin masterGit‑репозиторий содержит зашифрованные файлы .gpg, поэтому сам по себе удалённый бэкап не раскрывает пароли без приватного ключа. Тем не менее соблюдайте осторожность при размещении репозитория на общедоступных серверах.
Рекомендации по использованию Git с Pass:
- Заводите отдельный удалённый репозиторий для паролей, не смешивайте его с кодом.
- Настройте доступ по SSH и двухфакторную аутентификацию на сервере Git.
- Регулярно проверяйте историю на наличие удалённых секретов (в случае компрометации ключей).
- Рассмотрите использование branch‑strategies для сотрудничества (см. секцию «Для команд»).
Взаимодействие с другими инструментами
Pass создаёт простую файловую структуру, что облегчает интеграцию:
- Есть импортеры/экспортеры для популярных менеджеров (1Password, KeePass, LastPass).
- Клиенты для Android/iOS/Windows позволяют синхронизировать локально или через Git.
- Для быстрых GUI‑взаимодействий в X11/Wayland используются проекты вроде
passmenu(интеграция с dmenu/rofi). - Скрипты автоматизации позволяют вытягивать пароли внутри CI/CD или локальных инструментов.
Полный список проектов см. на сайте Pass — там же есть инструкции по миграции из других менеджеров.
Когда Pass не подходит
- Для пользователей, которым нужна простая графическая оболочка без работы с терминалом.
- Когда необходима централизованная корпоративная политика доступа и ролей («роли» и делегирование) — лучше рассмотреть SaaS‑решения с управлением учётными записями.
- Для сценариев с коллективным доступом без отдельного секрета GPG: Pass требует обмена публичных ключей и надёжного управления приватными ключами.
Альтернативные подходы
- KeePassXC — локальное хранилище с GUI и файлами .kdbx.
- Bitwarden — бесплатный и платный SaaS с клиентами для всех платформ.
- 1Password — коммерческое решение с корпоративными функциями.
Выбор зависит от требований к удобству, совместной работе и политике хранения ключей.
Модель мышления и рекомендации
Ментальная модель: представьте дерево каталогов, где каждый файл — отдельный зашифрованный «замочек». GPG‑ключ — это единственный ключ от всех замков. Git — журнал изменений, не раскрывающий содержимого.
Эвристики:
- Разделяйте личные и рабочие пароли в разных поддиректориях или хранилищах.
- Используйте подпапки для сервисов (например,
work/aws/илиpersonal/finance/). - Для сгенерированных сервисных паролей используйте отдельную запись и помечайте в многострочной части цель и дату создания.
Чек‑листы по ролям
Администратор:
- Установить
passи GPG на целевые машины. - Создать ключи для сервисных аккаунтов.
- Настроить удалённый Git‑репозиторий и права доступа.
- Документировать процедуру восстановления ключей.
Разработчик:
- Установить
pass,xclip/wl‑clipboardдля работы с буфером. - Использовать
pass generateдля создания сильных паролей. - Добавлять записи в иерархию проекта (например,
project/service/database).
Обычный пользователь:
- Создать личный GPG‑ключ и инициализировать
pass. - Сохранять важные пароли в многострочных записях.
- Настроить автоматическое резервное копирование
.password-store.
Руководство по безопасности и жёсткая настройка
- Используйте ключи RSA 4096 или ECC‑ключи с современными кривыми (если ваша среда поддерживает ECC).
- Храните приватные ключи в аппаратных токенах (YubiKey/смарт‑карты) для дополнительной защиты.
- Настройте
gpg-agentиpinentryдля безопасного ввода фраз. - Включите автоматическое удаление паролей из буфера (Pass делает это по умолчанию, 45 сек) и проверяйте наличие локальных утилит очистки.
- Регулярно производите экспорт публичных ключей для резервного копирования, приватные ключи экспортируйте только в защищённую офлайн‑среду.
План миграции и бэкапы
- Создайте экспорт из старого менеджера (CSV/JSON/формат экспорта).
- Преобразуйте файл в структуру, совместимую с Pass (существуют скрипты‑импортёры).
- Импортируйте в локальное
.password-storeи проверяйте корректность многострочных записей. - Инициализируйте Git и сделайте начальный коммит.
- Создайте зашифрованную офлайн‑копию приватного GPG‑ключа и храните её отдельно.
Шаблон быстрого реагирования при утечке (runbook)
- Оценить: какие GPG‑ключи могли быть скомпрометированы и какие записи раскрыты.
- Отозвать/сменить приватные ключи: сгенерировать новые ключи,ный и обновить все записи.
- Обновить записи паролей: сгенерировать новые пароли для сервисов, сменить пароли на сервисах.
- Синхронизировать изменения через Git и оповестить команду.
Полезный набор команд (cheat sheet)
# Инициализация
pass init
# Добавить интерактивно
pass insert personal/email/gmail
# Многострочный ввод
pass insert -m personal/2fa/backup
# Сгенерировать и скопировать в буфер
pass generate mysite/pass 24 --clip
# Получить и вывести
pass mysite/pass
# Скопировать в буфер
pass -c mysite/pass
# Удалить
pass rm mysite/pass
# Git в хранилище
pass git init
pass git remote add origin user@server:/passwords.git
pass git push -u origin master Когда Pass лучше, а когда хуже
Подходит, если вы цените простоту, текстовые форматы, контроль версий и автоматизацию. Не подходит, если нужно централизованное корпоративное управление, удобный GUI для не‑техничных сотрудников или интеграция с облачными SSO‑провайдерами.
Краткое резюме
- Pass — лёгкий, прозрачный и скриптуемый инструмент, который хранит каждую запись как GPG‑файл.
- Требуется базовое понимание GPG и работы в терминале.
- Интеграция с Git даёт простую модель бэкапа и синхронизации.
- Для командной работы потребуются дополнительные договорённости по управлению ключами.
Важно: никогда не размещайте приватные GPG‑ключи вместе с .password-store в одном публичном репозитории.
Критерии приёмки
- Возможность инициализировать хранилище и добавить первую запись.
- Успешное извлечение пароля и копирование в буфер.
- Наличие рабочего бэкапа Git и документации по восстановлению ключей.
Подсказка для социальных сетей (Open Graph)
- OG title и описание указаны в метаданных JSON; используйте их при публикации.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента