Назад | Перейти на главную страницу

После добавления аутентификации на почтовый сервер невозможно подключиться по SMTP

До вчерашнего дня мой почтовый сервер (на mail.simunomics.com) работал нормально в отношении моих почтовых клиентов - отправки и получения. Однако он не проходил аутентификацию должным образом на серверах-получателях, поскольку еще не был настроен. (Результатом является автоматическая фильтрация в папки спама / нежелательной почты.) Итак, сегодня я улучшил аутентификацию, добавив spf, dkim и dmarc, а также создав запись rDNS.

Но теперь, используя те же настройки в моем почтовом клиенте, которые работали вчера, я не могу подключиться по SMTP. Входящая почта в порядке. И если я попытаюсь отправить через сервер напрямую, либо через веб-почту cPanel, либо (скажем) автоматически через скрипт phpmailer, это нормально. Проблема только в удаленном подключении к SMTP.

Я тестировал на https://www.smtper.net/ и похоже, что если я использую защищенное соединение на порту 465, время операции истекает. И если я использую незащищенное соединение без порта 587, я быстро получаю сообщение об ошибке «Доступ запрещен - недопустимое имя HELO (см. RFC2821 4.1.1.1)». Поэтому я понятия не имею, что запрещает это, поскольку это не фактические учетные данные.

Есть идеи, что я мог напутать или где искать? Спасибо.

Это должен быть комментарий, но он слишком длинный. Рассматривали ли вы использование необработанного telnet (или ncat) для тестирования / отладки? Вот что у меня получилось:

# telnet mail.simunomics.com 587
Trying 173.249.157.178...
Connected to mail.simunomics.com.
Escape character is '^]'.
220-server.simunomics.com ESMTP Exim 4.89_1 #1 Fri, 29 Dec 2017 13:55:38 +0000 
220-We do not authorize the use of this system to transport unsolicited, 
220 and/or bulk e-mail.
HELO is.it.me.your.looking.for.com
250 server.simunomics.com Hello is.it.me.your.looking.for.com [193.183.99.226]
MAIL FROM: <smtptest@barrycarter.info>
250 OK
RCPT TO: <carter.barry@gmail.com>
550 SMTP AUTH is required for message submission on port 587
Connection closed by foreign host.

Порт 587 не обязательно небезопасен: он может ожидать, что клиент явно запросит использование шифрования, используя STARTTLS команда. Если STARTTLS не используется, сервер может принимать незащищенные соединения только от доверенных сетей или, возможно, только от localhost.

Кроме того, SMTP-серверы традиционно выполняют обратный поиск в DNS по исходному IP-адресу входящего соединения, чтобы получить полное доменное имя клиента. Предполагается, что клиент использует это полное доменное имя (или, возможно, необработанный IP-адрес, если он не может знать свое собственное доменное имя) в своей начальной команде HELO / EHLO.

Если имя / адрес, используемый клиентом в его команде HELO / EHLO, не соответствует исходному IP-адресу соединения или полному доменному имени, доступному при обратном поиске DNS, сервер может отклонить соединение, поскольку это один из более старых антиспам тесты.

Хорошо обслуживаемый почтовый сервер имеет статический общедоступный IP-адрес и регистрацию DNS, которая согласуется с конфигурацией сервера, а также с прямым и обратным поиском; спамер (или случайный компьютер с вредоносным ПО для рассылки электронной почты) может находиться за NAT провайдера и не может удовлетворить это требование.