[Video] v20.24 Отправка писем с сервера. ssmtp

Сегодня я хочу рассказать о утилите sSMTP – это маленькая, лёгкая утилита с ограниченным функционалом, но в тоже время выполняющая определённые задачи очень быстро.

На сайте debian.org приведено следующее описание данной утилиты:

sSMTP is a simple Mail Transport Agent (MTA) to deliver mail from a computer to a mail hub (SMTP server). sSMTP is simple and lightweight, there are no daemons or anything hogging up CPU; Just sSMTP. Unlike Exim4, sSMTP does not receive mail, expand aliases, or manage a queue.

С помощью данной утилиты можно отправлять сообщения с вашего сервера к вам на почту, например, в случае каких-либо проблем или можно выслать результаты какого-либо теста. Что очень удобно – вам не придётся постоянно проверять логи или просто быть подключённым к серверу. Смартфоны сейчас есть у всех – ваш сервер что-то делает, а вы получаете нотификации или результаты в любом месте.

Утилита работает только в одну сторону и отправлять можно текст. Плюсом является то, что утилита потребляет минимум ресурсов вашего сервера (cpu и диск, оперативку).

Установить данную утилиту можно из репозитория:
sudo apt-get install ssmtp
После установки нужно произвести настройки в файле конфигураций данной утилиты:
Нужно указать почтовый сервер, свой логин и пароль. Если вы не хотите поднимать свой почтовый сервер, то можно воспользоваться данной утилитой, завести дополнительный почтовый ящик где-нибудь на yandex или gmail.

Вот пример моих настроек.
~/mytest.dir/v25-mail$ cat /etc/ssmtp/ssmtp.conf
#######################################
# my config
#######################################
#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000 # Make this empty to disable rewriting. # root=postmaster root=мойпочтовыйадрес@почта.ru

# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=smtp.mail.ru:465

# Where will the mail seem to come from?
rewriteDomain=почта.ru

# The full hostname
# hostname=srv-sc-01

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=YES

AuthUser=мойпочтовыйадрес@почта.ru
AuthPass=********mypassword
UseTLS=YES

После того как настройки произведены, утилита готова к работе. Ничего перезапускать не нужно.

Для отправки сообщения можно подготовить текстовый файл с каким-либо сообщением и адресной инфомармацией.
Данный файл можно генерировать в зависимости от ситуации скриптами.

Вот пример такого файла. В нём указаны адресаты, тема письма и содержание. Данный файл был згенерирован одним из скриптов о котом я расскажу в следующем видео.
$ cat mailheader-backupstatus.txt
To: мойпочтовыйадрес-на-телефоне@почта.ru
From: мойпочтовыйадрес@почта.ru
Subject: Backup of ya.ru was successful. 2015-03-06.16:42:35.

Monitoring of ya.ru, packetloss=0%, less than 20%!
Backup should be successful.

Теперь давайте отправим письмо (нужно указать получателя при вызове утилиты, опция from должна совпадать с тем аккаунтом что указан в настройках):
$ /usr/sbin/ssmtp мойпочтовыйадрес-на-телефоне@почта.ru < /home/alex/mytest.dir/v25-mail/mailheader-backupstatus.txt

Теперь осталось проверить получение письма у себя в почтовом ящике.
Вот такая простая и полезная утилита sSMTP.

На сегодня всё, спасибо за внимание, надеюсь вам понравилось.
Мне важен ваш отклик - пишите свои мысли в комментариях, подписывайтсь на канал, вступайте в мою группу в Вконтакте, ставьте большие пальцы вверх!
До встречи в следующем видео!

Sources:
sSMTP - Simple SMTP
man ssmtp