Как настроить Sendmail для отправки через Haskimail

Сергей

Сергей

Обновлено Nov 5, 2026

Sendmail можно настроить как смарт-хост, который пересылает почту через SMTP-сервер Haskimail. Код приложения при этом менять не нужно, а Sendmail сам ставит письма в очередь: если связь с Haskimail временно пропадёт, письма отправятся позже.

Для подключения понадобятся SMTP-реквизиты канала — логин и пароль. Они находятся в настройках канала отправки в личном кабинете. По реквизитам Haskimail определяет, через какой канал отправлять письма. Подробнее — в статье «Какие SMTP-реквизиты и API-ключи нужно использовать?».

Ниже — настройка для порта 587 с шифрованием STARTTLS. Команды выполняйте от имени root.

Установка Sendmail

Для авторизации нужны модули SASL, поэтому установите их вместе с Sendmail.

  • Debian, Ubuntu: apt-get install sendmail sasl2-bin
  • CentOS, RHEL: yum install sendmail sendmail-cf cyrus-sasl-plain

Реквизиты для авторизации

Создайте файл /etc/mail/authinfo со строкой:

AuthInfo:smtp.haskimail.ru "U:ЛОГИН" "P:ПАРОЛЬ" "M:PLAIN LOGIN"

Вместо ЛОГИН и ПАРОЛЬ подставьте SMTP-реквизиты канала. Затем закройте файл от посторонних и соберите из него таблицу, которую читает Sendmail:

chmod 600 /etc/mail/authinfo
makemap hash /etc/mail/authinfo < /etc/mail/authinfo

Настройка смарт-хоста

Добавьте в файл /etc/mail/sendmail.mc перед строками MAILER(...):

define(`SMART_HOST', `[smtp.haskimail.ru]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl
define(`confAUTH_MECHANISMS', `PLAIN LOGIN')dnl
FEATURE(`authinfo', `hash -o /etc/mail/authinfo.db')dnl

Если строка SMART_HOST в файле уже есть, замените её.

Соберите конфигурацию:

cd /etc/mail && m4 sendmail.mc > sendmail.cf

Проверка

Перезапустите Sendmail:

systemctl restart sendmail

На старых системах без systemd: service sendmail restart.

Отправьте тестовое письмо на свой адрес:

echo "Тестовое письмо" | mail -s "Проверка Sendmail" ваш@адрес.ru

Письмо должно появиться в логе активности канала в личном кабинете Haskimail. Если его там нет, ищите ошибку в журнале почты: /var/log/maillog в CentOS и RHEL или /var/log/mail.log в Debian и Ubuntu.

Если провайдер блокирует порт 587, укажите 2525 в строках RELAY_MAILER_ARGS и ESMTP_MAILER_ARGS. Подробнее о портах — в статье «Что делать, если порт 25 заблокирован (AWS и другие облака)» и в документации по SMTP. Настройка для Postfix — в статье «Как настроить Postfix для отправки через Haskimail».