Используйте этот вариант, если у вас собственная почтовая инфраструктура или если вашего провайдера нет в нашем списке — SMTP поддерживают практически все почтовые службы.
⚠️ Если ваш провайдер — Mailgun, SendGrid, Postmark, Amazon SES или Resend, воспользуйтесь соответствующей инструкцией для него. Такие подключения обеспечивают более информативные сообщения об ошибках в случае сбоев, поскольку мы получаем прямой ответ от провайдера, а не общий код состояния SMTP.
Что вам понадобится
Четыре параметра от администратора вашего почтового сервера:
- Хост — например,
smtp.yourprovider.com
- Порт —
587, 465 или 2525
- Имя пользователя и пароль
Какой порт выбрать
587 — это порт отправки (submission) с использованием STARTTLS, и именно его следует использовать. Соединение начинается в открытом виде и обновляется до TLS перед отправкой каких-либо данных.
465 — это неявный TLS (implicit TLS), зашифрованный с первого байта. Тоже отличный вариант; некоторые провайдеры предпочитают именно его.
2525 — неофициальная альтернатива, которую предлагают некоторые хостинг-провайдеры, поскольку отдельные сети блокируют порт 587. Используйте его только по прямой рекомендации вашего провайдера.
⛔ Порт 25 здесь принимается, но почти никогда не является правильным выбором. Это порт, который почтовые серверы используют для связи друг с другом, а не тот, через который приложение отправляет сообщение. Он заблокирован в большинстве сетей, часто не требует аутентификации, а там, где он работает, трафик зачастую не шифруется.
⛔⛔ Мы не отправляем почту через незашифрованное соединение. Если опция Использовать STARTTLS включена (а она должна быть включена), и ваш сервер отказывается повышать безопасность соединения, отправка завершится ошибкой, а не продолжится в открытом виде. Это сделано намеренно: в этих письмах передаются ссылки для сброса паролей ваших клиентов, а незамеченное понижение уровня защиты (downgrade) — худший вид сбоя, так как письмо все равно доставляется.
Сначала настройте DNS
Ваш провайдер не сделает это за вас, как в случае с управляемыми сервисами. Для домена, с которого вы отправляете почту, вам потребуются:
SPF — запись TXT, авторизующая адрес вашего сервера: v=spf1 ip4:203.0.113.10 -all или v=spf1 a:smtp.yourprovider.com -all. Если у вас уже есть запись SPF, отредактируйте ее; наличие двух записей SPF на одном домене приводит к полной ошибке проверки SPF.
DKIM — ваш почтовый сервер подписывает исходящие сообщения, а вы публикуете соответствующий открытый ключ по адресу <selector>._domainkey.yourdomain.com. В Postfix для этого обычно используется OpenDKIM; селектор вам сообщит провайдер.
DMARC — запись TXT по адресу _dmarc.yourdomain.com, начинающаяся с v=DMARC1; p=none;, пока вы проверяете успешность прохождения SPF и DKIM.
Обратный DNS (Reverse DNS) — запись PTR для IP-адреса вашего сервера должна разрешаться обратно в его имя хоста. Крупные почтовые сервисы проверяют это, и многие из них не принимают почту с адресов без данной записи. Ее настраивает ваш хостинг-провайдер, а не DNS-провайдер.
⭐ Отличный бесплатный способ проверки после настройки: отправьте письмо на mail-tester.com и посмотрите результат. Сервис покажет, в каком именно из четырех компонентов допущена ошибка, что гораздо быстрее, чем гадать по папке «Спам».
Подключение в Zinn®
Откройте раздел Отправка почты в вашей панели управления:
- Провайдер — SMTP-сервер
- Отправлять с этого домена —
mail.yourdomain.com (домен, а не адрес)
- SMTP-хост, Порт, Имя пользователя, Пароль
- Использовать STARTTLS — включено, если только вы не используете порт 465
⭐ Создайте для этого отдельный почтовый ящик или специального пользователя отправки, а не используйте личную учетную запись сотрудника. Если кто-то уволится и его пароль изменится, уведомления для ваших клиентов не должны перестать приходить.
Отправьте тестовое письмо и введите код
Нажмите Отправить тестовое сообщение на ящик в другом домене, скопируйте код из письма и введите его.
Если что-то не работает
«Почтовый сервер отклонил имя пользователя или пароль» — ошибка SMTP AUTH. Если для учетной записи у провайдера включена двухфакторная аутентификация, вам почти наверняка потребуется пароль приложения, а не обычный пароль для входа.
«Не удалось связаться с host:port» — порт заблокирован, имя хоста указано неверно либо сервер не принимает отправку почты на этом порту. Команда telnet smtp.yourprovider.com 587 с другого компьютера поможет выяснить причину.
Ошибка TLS — срок действия сертификата вашего сервера истек, он самоподписанный или не соответствует введенному имени хоста. Мы проверяем сертификаты и не пропускаем этот шаг; исправьте сертификат.
«Почтовый сервер отклонил получателя» — ваш сервер не настроен для ретрансляции (relay) сообщений от этого отправителя. Обычно это означает, что авторизованному пользователю не разрешено отправлять письма от имени вашего домена отправителя.
Письма отправляются, но попадают в спам — дело в DNS, а не в SMTP. Проверьте настройки SPF, DKIM, DMARC и обратного DNS, описанные выше, затем снова запустите проверку на mail-tester.