
У меня проблемы с ретрансляцией на серверы, которые направляют почту через mimecast. Подключения отклоняются с сообщением:
553 This route requires encryption (TLS) - https://community.mimecast.com/docs/DOC-1369#553
Это заставляет меня думать, что sendmail, который настроен с сертификатами и объявляет STARTTLS, когда действует как сервер, не отправляет STARTLS в нужное время (или вообще не отправляет). Это след неудачной передачи:
>>220 zzz.mimecast.com ESMTP; Thu, 16 Jun 2022 11:55:55 +0200
>>> EHLO rigel-170.orion.it
250-zzz.mimecast.com Hello [212.115.64.170]
250-AUTH PLAIN LOGIN
250-STARTTLS
250 HELP
>>> MAIL From:<[email protected]>
250 Sender OK [R9SDNpJCMqeqqffSnRQQeg.de46]
>>> RCPT To:<[email protected]>
553 This route requires encryption (TLS) - https://community.mimecast.com/docs/DOC-1369#553 [R9SDNpJCMqeqqffSnRQQeg.de46]
>>> DATA
503 Illegal command sequence - https://community.mimecast.com/docs/DOC-1369#503 [R9SDNpJCMqeqqffSnRQQeg.de46]
Я добавлю, что тот же сервер работает как сервер smtps без проблем (что говорит об отсутствии проблем со стороны сертификата) и что отправитель почты регулярно отправляет STARTTLS (я вижу STARTTLS=client в журналах). Однако это единственный =client, который я когда-либо там видел (что говорит о том, что sendmail на самом деле не отправляет STARTTLS, когда действует как клиент для других серверов).
Я пробовал, но безрезультатно, несколько комбинаций SRV_Features, Try_TLS, TLS_Clt, TLS_Srv и TLS_Rcpt. Единственная директива TLS, которую я оставил в карте доступа, это:
Try_TLS: Yes
Я также настроил клиентские сертификаты в sendmail.mc
Понятия не имею, что делать дальше.
РЕДАКТИРОВАТЬ
Я только что узнал следующее (что еще больше запутывает проблему).
Я настроил (из-за проблем с черным списком) имя хоста/адрес, отличные от значений по умолчанию (и адрес, и имя хоста правильно зарегистрированы в DNS). Я сделал это с помощью строк:
CLIENT_OPTIONS(`M=S,Addr=a.b.c.d')dnl
define(`confDOMAIN_NAME', `fubar.it')dnl
Если эти две строки закомментированы, starttls выдается, как и ожидалось (как видно из трассировки сеанса SMTP). Это, похоже, не имеет никакого смысла.
ПРАВКА 2: Согласно комментариям, виновником является часть M=S
в строке CLIENT_OPTIONS (которая была выдрана откуда-то эоны назад). «S» означает «выключить STARTTLS», изменение этого значения M=s
делает свое дело. Для справки, вот значение флагов в параметрах демона/клиента по состоянию на sm 14.4:
ON OFF Meaning
a A Offer the AUTH SMTP extension
b B Offer use of the SMTP VERB command
d D Offer the DSN SMTP extension
e E Offer the ETRN SMTP extension
l L Require the client to authenticate with AUTH
p P Offer the PIPELINING SMTP extension
s S Offer the STARTTLS SMTP extension
v V Verify a client certificate
x X Offer use of the SMTP EXPN ...
С наилучшими пожеланиями,
решение1
Насколько я понимаю, S
флаг CLIENT_OPTIONS
отключает STARTTLS
поддержку.
CLIENT_OPTIONS(`M=S,Addr=a.b.c.d')dnl