Как настроить SMTP для Mail-tester.com и Duck.com? Postfix порт 587

Вопрос или проблема

Есть рабочий iRedMail с Postfix, отправляющий почту в Google, а также в Яндекс через ipv6, используя порт 25.

2025-01-01T22:13:34.633154+00:00 vps-93cd9763 postfix/smtp[10995]: Trusted TLS connection established to mx.yandex.ru[2a02:6b8::311]:25: TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (2048 bits) server-digest SHA256
2025-01-01T22:13:35.653055+00:00 vps-93cd9763 postfix/smtp[10995]: 4YNkcs4G7Xz42Z4: to=<[email protected]>, relay=mx.yandex.ru[2a02:6b8::311]:25, delay=2.1, delays=0.02/0.08/1.1/0.88, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued on mail-nwsmtp-mxfront-production-main-86.sas.yp-c.yandex.net 1735769615-XDop8P6H7Gk0-JBGtnk8J)

Но, видимо, не все почтовые ящики предоставляют эту функциональность. Встретились упорные, которые этого не делают. Это Duck.com, Mail-tester.com и, конечно, существует больше таких.

Поэтому нужна альтернатива для использования порта 587:

2025-01-01T22:14:03.670081+00:00 vps-93cd9763 postfix/smtp[10991]: connect to reception.mail-tester.com[94.23.206.89]:25: Connection timed out
2025-01-01T22:14:03.673338+00:00 vps-93cd9763 postfix/smtp[10991]: 4YNdjC4G5Dz42c1: to=<[email protected]>, relay=none, delay=13324, delays=13294/0.26/30/0, dsn=4.4.1, status=deferred (connect to reception.mail-tester.com[94.23.206.89]:25: Connection timed out)

Master.conf:

# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (no)    (never) (100)
# ==========================================================================
smtp       inet  n       -       y       -       -       smtpd
#smtp      inet  n       -       y       -       1       postscreen
#smtpd     pass  -       -       y       -       -       smtpd
#dnsblog   unix  -       -       y       -       0       dnsblog
#tlsproxy  unix  -       -       y       -       0       tlsproxy
# Choose one: enable submission for loopback clients only, or for any client.
#127.0.0.1:submission inet n -   y       -       -       smtpd
submission inet  n       -       y       -       -       smtpd
#  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
#  -o smtpd_tls_auth_only=yes
#  -o local_header_rewrite_clients=static:all
#  -o smtpd_reject_unlisted_recipient=no
#     Instead of specifying complex smtpd_<xxx>_restrictions here,
#     specify "smtpd_<xxx>_restrictions=$mua_<xxx>_restrictions"
#     here, and specify mua_<xxx>_restrictions in main.cf (where
#     "<xxx>" is "client", "helo", "sender", "relay", or "recipient").
  -o smtpd_client_restrictions=permin_sasl_authenticated,reject
#  -o smtpd_helo_restrictions=
#  -o smtpd_sender_restrictions=
#  -o smtpd_relay_restrictions=
#  -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING

Main.conf

# Enable SASL authentication on port 25 and force TLS-encrypted SASL authentication.
# WARNING: NOT RECOMMENDED to enable smtp auth on port 25, all end users should
#          be forced to submit email through port 587 instead.
#
#smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_tls_auth_only = yes

smtpd_use_tls = yes
smtp_use_tls = yes

Любые идеи будут очень полезны!

Ответ или решение

Для того чтобы отправить почту с использованием SMTP на mail-tester.com и Duck.com через Postfix на порту 587, необходимо произвести ряд изменений и настроек. В данной ситуации вы имеете рабочую установку iRedMail с Postfix, где отправка почты на Google и Yandex осуществляется по IPv6 через порт 25. Однако некоторые почтовые сервисы, такие как mail-tester.com и Duck.com, не поддерживают данный подход. Рассмотрим det глубоком подходом и шаги для решения этой задачи.

Для начала ознакомимся с текущей конфигурацией:

  1. Конфигурация master.cf:

    • Включена служба submission, слушающая на порту 587. Этот параметр в файле конфигурации уже настроен, и это хорошо, поскольку порт 587 является предпочтительным для SMTP-передачи с аутентификацией.
  2. Конфигурация main.cf:

    • Обеспечена поддержка шифрования через TLS, что существенно для безопасной передачи данных.

Шаги для настройки:

Шаг 1: Настройка аутентификации SASL

Поскольку многие сервера, во избежание спама, не принимают неаутентифицированные соединения через порт 587, убедитесь, что в main.cf включена SASL аутентификация.

  • Проверьте, что smtpd_sasl_auth_enable используется для порта 587:
    smtpd_sasl_auth_enable = yes
    smtpd_tls_security_level = encrypt
    smtpd_tls_auth_only = yes
    smtpd_sasl_security_options = noanonymous

Шаг 2: Редактирование master.cf для порта 587

Убедитесь, что конфигурационный блок для submission приведен в порядок:

submission inet n - y - - smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject
  • Постарайтесь избегать использования smtpd_tls_auth_only=yes, если это отрицательно сказывается на совместимости, например, если клиент не поддерживает STARTTLS.

Шаг 3: Актуализация DNS и сертификатов

Обновление DNS-записей может помочь с рассылкой через дополнительные SMTP сервера, указывая их IP-адреса. Проверьте, соответствуют ли SPF и DKIM записям предполагаемым настройкам. Также удостоверьтесь в актуальности TLS-сертификатов, так как это может напрямую влиять на прием сообщений.

Шаг 4: Проверка подключения

  • Используйте команду telnet для проверки соединения с окончательными серверами. Если соединение блокируется брандмауэром или другими политиками, необходимо будет разрешить порты или обновить сетевые политики.

  • telnet reception.mail-tester.com 587

Завершение и тестирование

После внесения всех изменений перезапустите Postfix:

sudo systemctl restart postfix

Проверьте журналы для выявления ошибок или предупреждений:

sudo tail -f /var/log/mail.log

Тестируйте отправку писем на mail-tester.com и Duck.com через подходящие клиентские приложения, которые используют порт 587, и учитывайте соответствующую аутентификацию.

Следуя этим шагам, вы создадите эффективную и функциональную среду для отправки писем на mail-tester.com и Duck.com посредством порта 587. Обеспечьте регулярный мониторинг системных логов для быстрой идентификации и устранения возникающих проблем.

Оцените материал
Добавить комментарий

Капча загружается...