Что: e5d1f8fc7767cbe567ed39dc0e568f4216921e6e
Когда: 2023-09-05 22:48:03+03:00
passman менеджер паролей http://www.git.stargrave.org/?p=passman.git;a=summary Что-то ни разу не писал про свой менеджер паролей тут. Видимо, потому что он был сделан задолго до создания блога. Давным давно я хранил пароли в текстовом файле в TSV формате, зашифрованном GnuPG. gpg -d < passwords.tsv.gpg | grep foo.com Дальше я перешёл на хранение всего этого в виде иерархии директорий и текстовых файлов. www.foo.com/stargrave+foo@stargrave.org/passwd файл содержит пароль, просто одной строчкой. Соответственно я вводил "passman foo.com" и он найдёт www.foo.com. Если в нём одна запись (поддиректория), то сразу же в X11 буферы обмена копирует stargrave+foo@stargrave.org и пароль. Если учётных записей несколько, скрипт вернёт плохой код возврата и покажет доступные найденные варианты. А я уже уточню "passman foo.com/stargrave2" каким-нибудь. В GUI программах вставить из одного буфера обмена просто третьей кнопкой, а из второго через контекстное меню. В эмуляторах терминалов, даже в suckless terminal, shift+ins и alt+shift+ins тоже позволяет из одного и другого буфера вставку произвести. Через десять секунд скрипт очищает буфер с паролем. А сейчас решил что всё же стоит хоть какой-то дополнительный порог добавить, а не в открытом виде (для моего пользователя) хранить всю эту кучу паролей. Безусловно это всё на зашифрованном диске должно быть, чтобы никакого plaintext на самом накопителе не оказалось. Теперь passman хранит всё в одном recfile. И все действия используют родной инструментарий recutils для поиска и вывода паролей. Ищем пароль регулярным выражением через recsel. На вход ему подаётся БД всех паролей, а на выходе тоже будет уже отфильтрованная другая БД. recsel --count покажет сколько записей найдено, recsel -P Password уже выведет только пароль из этой БД. passman gen -- сгенерирует случайный пароль (16 случайных байт в Base64). passman add name [password] -- добавит новую запись под именем name (если пароль не задан, то сгенерирует его). Можно её добавить, а дальше уже вызвать passman name чтобы в буфере получить пароль для копирования в броузере -- таким образом я его на мониторе вообще ни разу не увижу. passman mod -- позволяет отредактировать весь recfile в редакторе, например чтобы добавить Data: поле с произвольными данными, которые при поиске пароля тоже будут выведены на экран. И этот файл автоматически шифруется age-ем с использованием парольной фразы и сжимается zstd. passman mod конечно же натравит редактор на временный дешифрованный файл, а дальше его зашифрует. Надо сменить парольную фразу на БД? Просто запустить passman mod и сохранить файл ничего в нём не изменяя -- age всё равно перешифрует всё в другой временный файл. Переконвертировать 238 паролей из иерархии директорий: одной строчкой zsh-а сделал и к началу только добавил схему этой БД, чисто чтобы была, для красоты и порядка. При мне я не встречал чтобы люди использовали что-то более удобное. А то что видел -- громоздкие GUI какие-то, где телодвижений всё равно сильно больше совершается.
From: Egor Petrov Date: 2023-09-05 21:56:52Z > громоздкие GUI Слышал, что сногие пользуются pass_. На его сайте даже говорят, мол, самый юникс-вейный менеджер паролей. .. _pass: https://www.passwordstore.org/
From: Sergey Matveev Date: 2023-09-05 22:58:26Z
From: Sergey Matveev Date: 2023-09-05 23:09:52Z
Сгенерирован: SGBlog 0.34.0