Как я могу безопасно отправлять электронную почту через зашифрованное соединение из командной строки?

Я нашел следующие связанные вопросы в сети stackexchange:

  • stackoverflow – Подключение к smtp.gmail.com через командную строку
  • serverfault – использование nc.exe (NetCat) для отправки электронной почты на защищенный SMTP-сервер (TLS)
  • stackoverflow – Как отправить электронную почту с помощью простых команд SMTP через Gmail?

Но за исключением последнего, все они говорят о Windows или Debian и указывают программное обеспечение, которое я не смог найти для RHEL / CentOS (например, msmtp-mta ).

Последнее связанное решение выглядит нормально (как в, возможно, работает на CentOS), но требует ввода пароля в текстовом поле в командной строке (в perl one-liner), чтобы получить строку с кодировкой base64, а затем требуется base64 закодированную строку, которая будет введена позже во время запуска openssl. Это относительно небезопасно, даже если предположить, что я отключил историю bash для этой команды, строка base64 не зашифрована и сама хранится в истории терминала, в буфере обмена и кто знает, где еще. Кроме того, по возможности я работаю в виртуальном терминале, и поэтому я предпочел бы иметь решение, которое не требует копирования и вставки вообще.

Я также предпочел бы иметь решение, которое будет работать даже в бизнес-среде, то есть когда вводится мой пароль электронной почты, его даже не следует повторять на экране (точно так же, как вход в систему bash ).

Итак, снова возникает вопрос: как я могу безопасно отправлять электронную почту с учетной записи gmail через командную строку в CentOS?

One Solution collect form web for “Как я могу безопасно отправлять электронную почту через зашифрованное соединение из командной строки?”

См. Этот ответ stackoverflow о том, как установить msmtp на CentOS из репозитория Epel.

В конфигурационном файле ~/.msmtprc вы можете поместить свой пароль ~/.msmtprc или установить passwordeval на имя команды, чтобы получить пароль любым способом.

Interesting Posts
Linux и Unix - лучшая ОС в мире.