Рейтинг:0

Почему Outlook подключается только к моему серверу, но не отправляет электронную почту?

флаг se

У меня нет проблем с получением электронной почты от Gmail или любого из списков рассылки, на которые я подписан, но по какой-то причине Outlook отказывается отправлять электронную почту на мой почтовый сервер.

_handle_client строка чтения: b'EHLO NAM02-BN1-obe.outbound.protection.outlook.com\r\n' â
('52.100.160.208', 55618) >> b'EHLO NAM02-BN1-obe.outbound.protection.outlook.com'
('52.100.160.208', 55618) << b'250-0.0.0.0'
('52.100.160.208', 55618) << b'250-SIZE 33554432'
('52.100.160.208', 55618) << b'250-8BITMIME'
EHLO из «NAM02-BN1-obe.outbound.protection.outlook.com» —
('52.100.160.208', 55618) << b'250-AUTH PLAIN\n250-MAIL\n250 HELP'   

Сначала я подумал, что это может быть из-за того, что Outlook использует какие-то махинации с TLS, но полное удаление STARTTLS из ответа не помогает. С STARTTLS или без него Outook подключается к моему почтовому серверу, выдает EHLO, а затем просто... сдается? Я не знаю.

Но это говорит мне ложь:

29 января 2022 г., 16:39:30 — сервер BYAPR05MB6069.namprd05.prod.outlook.com вернул «550 5.4.317 Срок действия сообщения истек, невозможно подключиться к удаленному серверу (451 4.4.0
Ошибка сокета SocketError)'
29.01.2022 16:27:02 - Сервер на waynewerner.com (104.236.246.170) вернул '450 4.4.317 Не удается подключиться к удаленному серверу [Сообщение = 451 4.4.0 Ошибка сокета
SocketError] [LastAttemptedServerName=waynewerner.com] [LastAttemptedIP=104.236.246.170:25] [BN7NAM10FT066.eop-nam10.prod.protection.outlook.com](451 4.4.0
Ошибка сокета SocketError)'

Мой сервер ничего не вернул 450 4.4.317 которые я вижу в своих журналах. Я даже не вижу нигде в исходном коде моего сервера такого ответа. поддерживается. Outlook предоставляет https://docs.microsoft.com/en-us/microsoft-365/security/office-365-security/mail-flow-intelligence-in-office-365?view=o365-worldwide в письме об отказе, но следующая информация:

Код ошибки: 450 4.4.317 Не удается подключиться к удаленному серверу

Как правило, эта ошибка означает, что Microsoft 365 подключился к целевому серверу электронной почты, но сервер немедленно ответил ошибкой или не соответствует требованиям к подключению. Детали ошибки объяснят проблему. Например:

    Целевой сервер электронной почты ответил ошибкой «Служба недоступна», что указывает на то, что сервер не может поддерживать связь с Microsoft 365.
    Соединитель настроен на требование TLS, но целевой сервер электронной почты не поддерживает TLS.

Также кажется, что Outlook делает что-то неправильно. Сравните это с вполне разумным подходом Google:

_handle_client строка чтения: b'EHLO mail-vk1-f175.google.com\r\n'
('209.85.221.175', 42948) >> b'EHLO mail-vk1-f175.google.com'
('209.85.221.175', 42948) << б'250-0.0.0.0'
('209.85.221.175', 42948) << b'250-РАЗМЕР 33554432'
('209.85.221.175', 42948) << b'250-8BITMIME'
('209.85.221.175', 42948) << b'250-STARTTLS'
EHLO из 'mail-vk1-f175.google.com'
('209.85.221.175', 42948) << b'250-AUTH PLAIN\n250-STARTTLS\n250 HELP'
_handle_client строка чтения: b'STARTTLS\r\n'
('209.85.221.175', 42948) >> b'STARTTLS'
('209.85.221.175', 42948) << b'220 Готов к запуску TLS'
_handle_client строка чтения: b'EHLO mail-vk1-f175.google.com\r\n'
('209.85.221.175', 42948) >> b'EHLO mail-vk1-f175.google.com'
('209.85.221.175', 42948) << б'250-0.0.0.0'
('209.85.221.175', 42948) << b'250-РАЗМЕР 33554432'
('209.85.221.175', 42948) << b'250-8BITMIME'
('209.85.221.175', 42948) << b'250-AUTH LOGIN PLAIN'
EHLO из 'mail-vk1-f175.google.com'
('209.85.221.175', 42948) << b'250-AUTH PLAIN\n250-STARTTLS\n250-MAIL\n250 HELP'
_handle_client строка чтения: b'ПОЧТА ОТ:<[email protected]> SIZE=3159\r\n'

Здесь мы видим, что Gmail:

  • ЭХЛО
  • Получает ответ, включая STARTTLS
  • STARTTLS
  • Начинает отправлять почту

По сравнению с Outlook, который просто:

  • ЭХЛО
  • Ничего больше

Я даже дважды проверил, и не похоже, чтобы Outlook после этого отправлял еще один байт данных.

Через пару минут соединение ищет тайм-аут ожидания отправки данных Outlook:

[2022-01-31 18:04:54,355][mail.log][INFO] ('40.107.93.71', 64992) >> b'EHLO NAM10-DM6-obe.outbound.protection.outlook.com'
[2022-01-31 18:04:54,356][mail.log][DEBUG] ('40.107.93.71', 64992) << b'250-0.0.0.0'
[2022-01-31 18:04:54,356][mail.log][DEBUG] ('40.107.93.71', 64992) << b'250-SIZE 33554432'
[2022-01-31 18:04:54,357][mail.log][DEBUG] ('40.107.93.71', 64992) << b'250-8BITMIME'
[2022-01-31 18:04:54,358][mail.log][DEBUG] ('40.107.93.71', 64992) << b'250-STARTTLS'
[2022-01-31 18:04:54,359][mail.log][DEBUG] ('40.107.93.71', 64992) << b'250-AUTH PLAIN\n250-MAIL\n250 HELP'
[2022-01-31 18:04:54,359][mail.log][DEBUG] ('40.107.93.71', 64992) чтение данных...
[2022-01-31 18:04:54,360][mail.log][DEBUG] ('40.107.93.71', 64992) просмотр
[2022-01-31 18:09:54,356][mail.log][INFO] ('40.107.93.71', 64992) время ожидания соединения
[2022-01-31 18:09:54,358][mail.log][INFO] ('40.107.93.71', 64992) соединение потеряно

Любая подсказка, что Outlook может искать здесь, которую я не предоставляю?

Рейтинг:0
флаг se

Что ж, как оказалось, ответ все это время был передо мной:

('209.85.221.175', 42948) << b'250-AUTH PLAIN\n250-STARTTLS\n250 HELP'

Перспектива строго принуждает '\ г\п' между битами ответа.

Это решило мою проблему

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.