Я настраиваю новый выделенный сервер с использованием Windows Server 2019. Он заменяет старый на базе Windows Server 2008 R2. У меня был встроенный SMTP-сервер, работающий на старом сервере, без проблем. Я также настроил новый сервер в качестве SMTP-сервера, используя свои собственные заметки о настройке старого, а также двойную проверку вторжений в Интернете. В основном по инструкции здесь:
http://www.vsysad.com/2017/05/install-and-configure-smtp-server-on-windows-server-2016/
У меня проблема в том, что электронная почта не покидает C: \ inetpub \ mailroot \ Queue и никогда не дойдет до получателей. Журнал событий Windows содержит следующие предупреждения:
Событие 4006, smtpsvc
«Ошибка доставки сообщения на хост 204.79.197.212 при доставке в удаленный домен hotmail.com по следующей причине: удаленный сервер не ответил на попытку подключения».
Вышеупомянутое - всего лишь пример использования адреса назначения Hotmail. Такое же сообщение получено при попытке отправить на адреса в других доменах.
Что я пробовал:
Этот последний пункт выше также связан с интересной вещью, которую я заметил, а именно, что IP-адрес, указанный в сообщении о событии 4006, не является одним из IP-адресов, перечисленных в записях MX. Это IP-адрес фактического домена hotmail.com. Итак, почему он пытается связаться с hotmail.com, а не с одним из адресов, перечисленных в записях MX?
Для дальнейшего исследования я использовал Telnet для отправки электронной почты в один из моих собственных доменов. Конечно же, я нахожу в журнале событие 4006, говорящее:
«Не удалось доставить сообщение на хост« [IP моего домена] »при доставке в удаленный домен« [мой домен] »по следующей причине: соединение было разорвано удаленным хостом».
Снова кажется, что SMTP-сервер пытается подключиться к IP-адресу моего домена и порту 25, а не к адресу, указанному в записи MX.
Это все, что я сделал. Возможно, я здесь что-то неправильно интерпретирую, но похоже, что SMTP-сервер Windows пытается подключиться к домену адреса электронной почты напрямую через порт 25 (игнорируя записи MX) ... Любые идеи о том, что я делаю неправильно или, возможно, как мне действовать при устранении этой проблемы?
РЕДАКТИРОВАТЬ: Нашел обходной путь, а также то, что вызывает проблему. Смотрите мой ответ ниже.
Я продолжал исследовать эту проблему и теперь считаю, что это ошибка Windows Server 2019. Я действительно нашел обходной путь а также как воспроизвести эту проблему со 100% уверенностью.
Почта не будет отправляться правильно, если для типа запуска службы SMTP установлено значение «Автоматический» (т.е. запускать сразу при загрузке). Однако, если служба SMTP настроена на запуск вручную, а затем запускается вручную из services.msc или из диспетчера IIS6, электронная почта выйдет из очереди и будет доставлена получателям.
Если для службы используется «Автоматический» запуск, любые попытки отправить электронное письмо всегда будут приводить к тому, что электронное письмо застревает в очереди, а событие 4006 (подробности см. В исходной публикации) записывается в журнал событий. Это на 100% воспроизводимо в моих тестах.
Временное решение - установить тип запуска «Автоматический (отложенный запуск)».. Если я правильно проинформирован, это приведет к запуску службы SMTP через 2 минуты после запуска последней "автоматической" службы. Это не оптимальное решение, но пока подойдет.
Вот пошаговое описание проблемы для полноты:
Примечание. Шаги 2–6, вероятно, не нужны для воспроизведения проблемы, но это базовая настройка, которую я использовал.