Отправка электронной почты с помощью Bash и SSMTP
Last updated
Last updated
SSMTP — это инструмент, который доставляет электронную почту с компьютера или сервера на настроенный почтовый хост.
SSMTP сам по себе не является сервером электронной почты, не принимает электронные письма и не управляет очередью.
Одно из его основных применений — пересылка автоматической электронной почты (например, системных предупреждений) с вашего компьютера на внешний адрес электронной почты.
Для успешного завершения этого урока вам понадобятся следующие вещи:
Доступ к серверу Ubuntu 18.04 от имени пользователя без полномочий root с привилегиями sudo и активным брандмауэром, установленным на вашем сервере. Чтобы настроить их, обратитесь к нашему
SMTP-сервер вместе с именем пользователя и паролем SMTP. Это также будет работать с SMTP-сервером Gmail, или вы можете настроить свой собственный SMTP-сервер, выполнив действия, описанные в этом руководстве «Как установить и настроить Postfix в качестве SMTP-сервера только для отправки»
Чтобы установить SSMTP, вам необходимо сначала обновить кэш apt с помощью:
Затем выполните следующую команду для установки SSMTP:
Еще одна вещь, которую вам нужно будет установить mailutils
, — это выполнить следующую команду:
Теперь, когда вы ssmtp
установили, чтобы настроить его для использования вашего SMTP-сервера при отправке электронной почты, вам необходимо отредактировать файл конфигурации SSMTP.
Откройте файл с помощью вашего любимого текстового редактора /etc/ssmtp/ssmtp.conf
:
Вам необходимо включить конфигурацию SMTP:
Сохраните файл и выйдите.
После завершения настройки для отправки электронного письма просто выполните следующую команду:
Вы можете запустить это прямо в своем терминале или включить в свои сценарии bash.
Если вам нужно отправить файлы в виде вложений, вы можете использовать расширение mpack
.
Для установки mpack
выполните следующую команду:
Затем, чтобы отправить электронное письмо с вложенным файлом, выполните следующую команду.
Приведенная выше команда отправит электронное письмо <^>your_recepient_email@yourdomain.com<^>
с <^>your_file.zip<^>
вложенным файлом.
SSMTP — отличный и надежный способ реализовать функции электронной почты SMTP непосредственно в сценариях bash.
Для получения дополнительной информации о SSMTP я бы рекомендовал проверить официальную документацию .