Это старая версия документа.


Иногда нужно, чтобы сервер умел посылать почту. Например, система мониторинга должна извещать админа о сбоях, веб-сервер — оповещать пользователей форума о новых ответах. Для этого в системе должен быть пакет mail-transport-agent. Это виртуальный пакет, то есть на самом деле программы с таким названием не существует. Роль mail-transport-agent может выполнять exim, sendmail, postfix, ssmtp или ещё какая-то почтовая программа.

exim

exim используется в debian-дистрибутивах по дефолту. Большой и многофункциональный, используется, когда сервер является полноценным почтовым сервером. Для нашего случая он годится, но избыточен.

sendmail

sendmail — классический MTA. Для простейшей отправки почты требуются небольшие изменения конфига и совсем немного времени. Но возможностей у sendmail очень много, обычно ненужных. Одно из побочных действий богатства возможностей — необходимость выполнять такой неординарную процедуру, как «компиляция конфигов».

Есть мнение, что он уже покрылся плесенью времён и применяться более не должен, так что его настройку описывать не будем.

ssmtp

В нашем случае отличной заменой sendmail'у может стать ssmtp — действительно маленькая программа с самым базовым функционалом.

sudo apt-get install ssmtp

В конфигурационный файл /etc/ssmtp/ssmtp.conf достаточно внести всего одну строку:

mailhub=192.168.1.1

где 192.168.1.1 — сервер, через который будет ходить почта (например, провайдерский или корпоративный почтовый сервер). Есть возможность указать некоторые другие опции, например, домен отправителя.

nullmailer

FIXME Напишите, кто знает