Password-store: различия между версиями
м (Удалил информацию о неполной статье. В данном виде статье имеет вполне завершенный вид.) |
|||
Строка 79: | Строка 79: | ||
Наконец, импортируем ключ на новом компьютере: | Наконец, импортируем ключ на новом компьютере: | ||
<source lang="bash">$ gpg --import ./pass.gpg</source> | <source lang="bash">$ gpg --import ./pass.gpg</source> | ||
{{Примечание|Если новом компьютере в каталоге пользователя уже содержится каталог .gnupg, его следует удалить. Иначе даже после импорта программа будет выдавать ошибку: "gpg: сбой расшифровки: Нет секретного ключа"}} | {{Примечание|Если на новом компьютере в каталоге пользователя уже содержится каталог .gnupg, его следует удалить. Иначе даже после импорта программа будет выдавать ошибку: "gpg: сбой расшифровки: Нет секретного ключа"}} | ||
=== Встроенная поддержка git === | === Встроенная поддержка git === |
Текущая версия от 22:27, 5 декабря 2023
Название пакета
password-store
Назначение
Программа password-store (она же pass) является консольным менеджером паролей, ориентированным на простоту, надежность и переносимость. В своей работе она не использует базы данных, вместо этого все пароли хранятся в локальном каталоге (по умолчанию ~/.passwor-store) в виде иерархии обычных каталогов и файлов. Названием файла может являться название сайта, логин или какое-то другое произвольное имя. Сами пароли расположены внутри файлов, которые зашифрованы с помощью gpg (при необходимости файлы могут содержать дополнительные строки). Для password-store также создано большое количество графических оболочек и клиентов под различные ОС, включая мобильные, а также ряд расширений.
Установка и начало работы
# apt-get install password-store
Если у пользователя отсутствует пара ключей gpg, ее нужно создать (подробнее см. здесь, при создании следует выбирать тип RSA и RSA (по умолчанию), размер следует указать 4096 бит):
$ gpg --gen-key
Далее нужно инициализировать хранилище:
$ pass init ид.№ ключа
Узнать ид.№ ключа можно с помощью команды
$ gpg --list-keys
Например, если первая строка вывода следующая
pub 4096R/7CB55075 2023-07-21
ид.№ является 7CB55075. Альтернативно в качестве ид.№ можно ввести электронную почту владельца.
Использование
Создать пароль можно командой
$ pass add название
В этом случае программа запросит ввести пароль вручную. Поддерживается автоматическая генерация паролей:
$ pass generate название #создает случайный пароль длиной 25 символов; состоит из спецсимволов, букв и цифр
$ pass generate название X #создает случайный пароль длиной X символов
$ pass generate --no-symbols название X #создает случайный пароль длиной X символов; не использует спецсимволы, только буквы и цифры
Также возможно создать один или несколько подкаталогов:
$ pass generate каталог/каталог/название
Увидеть иерархию каталогов и файлов, можно введением команды без аргументов:
$ pass Password Store ├── group0 │ ├── key0 │ └── key1 └── group1 ├── key2 ├── key4 └── key5
Чтобы вывести содержимое файла в консоль, нужно ввести команду (для просмотра содержимого программа запросит пароль от ключа gpg):
$ pass название
Есть возможность не выводить содержимое файла на консоль, а скопировать его в буфер обмена (если файл содержит несколько строк, копируется только первая строка; пароль из буфера обмена будет автоматически удален через 45 секунд):
$ pass -c название
Изменить содержимое файла можно командой:
$ pass edit название
Чтобы удалить файл, нужно ввести команду (каталоги будут удалены автоматически после того, как будет удален последний файл в нем):
$ pass rm название
Чтобы переместить файл, нужно ввести команду:
$ pass mv старое_название новое_название
Удалить все хранилище можно простым удалением каталога .password-store:
$ rm -rf ~/.password-store
Использование pass на нескольких компьютерах и перенос хранилища между устройствами
Перенос данных на другой компьютер
Для переноса хранилища на другой компьютер достаточно скопировать хранилище (по умолчанию находится в ~/.password-store) со старого ПК на новый. Например, при помощи scp:
$ scp -r ~/.password-store newpc.example.com:/home/user/
Дополнительно требуется скопировать ключ gpg. На старом ПК выполняем команду:
$ gpg2 --export-secret-keys > pass.gpg
Копируем файл gpg на новый ПК, например, при помощи scp:
$ scp pass.gpg newpc.example.com:/home/user/
Наконец, импортируем ключ на новом компьютере:
$ gpg --import ./pass.gpg
Встроенная поддержка git
Указанный выше способ переноса хранилища неудобен, если требуется обеспечить постоянную синхронизацию хранилища и одновременное использование на нескольких устройствах. Для этих целей гораздо удобнее использовать git, поддержка которого встроена в программу. Программа pass автоматически создает и поддерживает репозиторий git. Для задействования функционала git вручную нужно запустить pass в ключом 'git':
$ pass git команда
Например:
$ pass git status
Альтернативно можно переместиться в каталог хранилища и выполнять команды git оттуда напрямую. Поддержка git позволяет получить мощный функционал как по работе с локальным репозиторием, так и по созданию удаленного репозитория и синхронизации с ним.
Графические оболочки
На официальной странице программы в разделе "Compatible Clients" приведен список графических оболочек под разные операционные системы, в том числе мобильные. Таким образом, программа pass обладает достаточной гибкостью для обеспечения работы как из командной строки, так и в программах с графическим интерфейсом на различных операционных системах.
Ссылки: [https://www.passwordstore.org/