Я перешел по следующей ссылке: Mutt: как безопасно хранить пароль?
Не уверен, что мне не хватает, но не работает так, как мне нужно. Вот что я заметил
когда я дошел до приглашения оболочки и ввел mutt, он вывел мне экран для ввода парольной фразы, как только я ее ввел, почтовый клиент вывел меня, и я смог отправлять и получать почту без проблем. Если я закрою его и сделаю это снова, он не будет запрашивать парольную фразу, однако, если я полностью закрою и вернусь по ssh на сервер и введу mutt, он запросит парольную фразу.
Я пытаюсь зашифровать пароль, чтобы при запуске cronjob не возникало проблем и чтобы не запрашивалась фраза-пароль. Может кто-нибудь помочь мне с этим?
решение1
Существует несколько различных вариантов с разными уровнями безопасности, поэтому давайте рассмотрим некоторые из них, чтобы вы могли принять наилучшее решение. Для автоматизации расшифровки парольная фраза должна где-то храниться (на диске, в памяти или на другой машине). Обычно стоит рассмотреть:
- Кто имеет доступ к машине?
- Является ли он общедоступным или размещает общедоступную услугу?
Опция 1:Сохраните пароль электронной почты в незашифрованном виде в файле muttrc.
Ограничьте доступ на чтение muttrc для пользователя, запустившего cron, и зашифруйте базовую файловую систему. Поскольку вы используете Gmail,создать пароль приложениякоторый может быть ротирован/отозван, если он скомпрометирован. Это, вероятно, самое простое решение проблемы.
Недостаток этого решения в том, что root
пользователь или любой другой человек с sudo
привилегиями может получить доступ к этому файлу. Вы можете настроить sudo
запрос пароля, чтобы уменьшить эту возможность.
Вариант 2:Сохраните парольную фразу gpg в незашифрованном виде в файле.
Для этого варианта вы настраиваете Mutt для неинтерактивного запуска gpg. Доступ на чтение должен быть ограничен для ваших паролей Mutt и файлов паролей gpg. Вам также следует зашифровать базовую файловую систему для защиты от физического доступа. Это только добавляет неясности простому хранению пароля в незашифрованном виде в muttrc. Применимы те же недостатки, и это решение будет считаться столь же безопасным.
Чтобы gpg мог запустить неинтерактивный пользователь, вам необходимо выполнить команды gpg с помощью:
--batch
чтобы отключить интерактивный режим--passphrase-file
предоставить пароль для закрытого ключа gpg--pinentry-mode loopback
для перенаправления запросов PIN-кода обратно вызывающему абоненту.
Итак, в mutttrc:
source "/usr/local/bin/gpg -d --batch --passphrase-file=$HOME/.passFile.txt --pinentry-mode loopback $HOME/.mutt/passwords.gpg |"
Вариант 3:Воспользуйтесь услугой управления секретами.
В этой области не существует настоящего стандарта, и естьмного вариантов в этом пространстве. Служба управления секретами централизует управление секретами, обеспечивая аудит и контроль доступа к секретам в масштабе. Преимущества и недостатки будут меняться в зависимости от вашего развертывания и внедрения, и дальнейшее продвижение в этом направлении будет в значительной степени основано на мнении.
Кроме того,вот еще вопросчто в значительной степени затрагивает область вопросов, которая может быть полезна.