Комментарии 14
Есть ли какой-то более-менее стандартный способ защитить пароль в конфигах без ручного ввода? Только хранить где-то захардкоженный ключ?
Так себе идея хранить хеш. Из хеша крайне затруднительно восстановить пароль для последующего использования, т.к. "Фарш невозможно провернуть назад" (с).
Только если это конфиг сервера, вроде nginx. В конфиге клиента пароль не может быть хэшированным по определению - либо в открытом виде, либо зашифрованный.
Зачем городить обертки над GnuPG, когда в любом дистрибутиве есть libsecret, реализация Secret Service API (например, gnome-keyring) и сопутствующие обертки?
Использую keyring
97231945
Эта схема добавляет безопасности (по сравнению с хранением пароля в текстовом файле) совсем чуть-чуть.
Если у кого-то есть права на чтение файлов в домашней директории - обычно у него есть и права на запись. Допустим, некто любопытный подменит модули python-gnupg и getpass4 на свои собственные. С логированием. Заметит ли пользователь, что что-то идёт не так?
Правда, ему нужно, чтобы я хранил пароль в файле конфигурации (.mutt)
Нет, мутт позволяет использовать зашифрованный пароль.
https://wiki.archlinux.org/title/Mutt#Passwords_management
Я решил, что лучший способ защитить мой пароль в Mutt — ввести пароль с клавиатуры, сохранить его в зашифрованном файле GPG, написать на Python скрипт расшифровки для моего GPG-пароля, ну и заодно обеспечить передачу пароля Mutt в скрипт offlineimap, который я использую для локальной синхронизации моего ноутбука с почтовым сервером.
Нет! Разработчики мутта достаточно умны, чтобы осознать, что открытое хранение пароля не приводит к чему-то хорошему, поэтому они предусмотрели работу с gpg.
Переливание пустого в порожнее.
Безопасный ввод и сохранение зашифрованных паролей в конфигах Linux: пишем скрипт на Python