Я использую сервер Ubuntu 18.04.6 LTS с пакетом postfix 3.1.0-3ubuntu0.4.
И клиент Apple Mail, и клиент Postbox испытывают странную задержку при первой отправке письма в службу smtp. В конце концов Apple Mail повторяет попытку и работает, но Postbox сдается.
В первоначальном обмене почтовый клиент, похоже, отправляет '???' как команду после приветствия сервера, или, по крайней мере, это регистрируется таким образом postfix. Строка в журнале выглядит так (реальный IP-адрес отредактирован):
Nov 23 17:11:09 mail postfix/smtpd[3367]: < ipxx-xxx-xxx-xxx.ph.ph.cox.net[xx.xxx.xxx.xxx]: ???
На что сервер отвечает:
502 5.5.2 Error: command not recognized
Что здесь происходит? Я нигде не могу найти, что строка '???' считается допустимой командой SMTP. Это какой-то хак для старых систем?
Хотя оба вышеперечисленных клиента, похоже, отправляют это сообщение, почтовый клиент iOS этого не делает.
Я не нашел никакой документации по этому поводу или допуска этого как постфиксной настройки.
решение1
Постфикс заменяет не-печатный()символы ?
в его журналах.
Один из способов, которым это может произойти, — клиенту, которому поручено установить TLS-соединение, но при этом используется номер порта, где postfix говорит открытым текстом. Двоичный TLS1.3 ClientHello, не являющийся допустимой командой SMTP, будет отображаться в журналах как ?. Серверы предлагают обновить уже существующее незашифрованное SMTP-соединение до безопасного канала с помощью STARTTLS
хака совместимости, что обычно остается незамеченным. Умный MUA может распознать эту ошибку — и повторить попытку с настройками, отклоняющимися от конфигурации — гдеумныймогли легко ступить на опасную территорию.
Предполагая, что ваш postfix настроен на это; Настройте своих клиентов на использование порта 465/tcp («Отправка сообщений по протоколу TLS») вместе с инструкцией по использованию TLS немедленно. Это рекомендуемый безопасный вариант для отправки почты. Несколько ключевых слов, которые помогут вам определить параметры, которые идут вместе:
порт | зарезервировано для отправки сообщений через | как это обозначено в настройках программного обеспечения |
---|---|---|
465 | SMTP через TLS (рекомендуемые) | скрытыйTLS, TLS, SMTPS,чистыйTLS, режим оболочки |
587 | Открытый текст SMTP с опциональным TLS | явныйTLS, STARTTLS,необязательныйTLS, RFC 3207 |