Exim - изменить Message-ID внутри письма

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Udarnick
рядовой
Сообщения: 11
Зарегистрирован: 2017-04-21 10:04:03

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение Udarnick » 2017-05-25 13:37:13

Приветствую уважаемый форум!
Прошу помощи в решении небольшой проблемы, так как сам
пока плохо понимаю синтаксис exim

Из 1С-клиента автоматом формируется письмо с вложенным отчетом,
с несколькими адресатами из чужих для exim доменов.
user1@чужой_домен.com
user2@чужой_домен.com

В Exim письмо прилетает, имея в заголовке "кривой" Message-ID вида

Код: Выделить всё

Message-Id: <8f50930e-b72e-4768-9d04-2422addb206f@чужой_домен.com>


Адресаты хостят почту на mail.protection.outlook.com и там, из-за этого
Message-Id, письмо блокируется фильтрами и к адресату не попадает.

Задача заменить в заголовке чужой_домен.com на родной домен Exim
Либо вообще полностью изменить Message-ID на какой-то свой

Помогите пожалуйста!

Аватара пользователя
f_andrey
майор
Сообщения: 2631
Зарегистрирован: 2007-12-26 1:22:58
Откуда: СПб
Контактная информация:

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение f_andrey » 2017-05-25 14:41:19

Без логов могу лажанытся, но кажется мне
Udarnick писал(а):Источник цитаты Адресаты хостят почту на mail.protection.outlook.com и там, из-за этого
Message-Id, письмо блокируется фильтрами и к адресату не попадает.

Вы похоже не понимаете как нынче устроена почта, откройте для себя чудный мир DMARC

Код: Выделить всё

host -t TXT _dmarc.outlook.com
_dmarc.outlook.com descriptive text "v=DMARC1; p=none; pct=100; rua=mailto:d@rua.agari.com; ruf=mailto:d@ruf.agari.com; fo=1"
Если ваша тема перенесена, то смотри viewtopic.php?f=1&t=32308

Udarnick
рядовой
Сообщения: 11
Зарегистрирован: 2017-04-21 10:04:03

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение Udarnick » 2017-05-25 14:59:12

Я Вас совсем не понял, извините.
Партнер, которому не доходят наши письма, обратился напрямую к хостеру почты с жалобой. ТП хостера ответила, что наши письма блокируются фильтром из-за Message-ID, в котором после @ указан домен получателя.
Emails are being spoofed as *@чужой_домен.com Please ask the user to get in touch with third party IT team and fix the issue.


Не уверен что поможет настройка DMARC... DKIM настроен, не помогло

Аватара пользователя
f_andrey
майор
Сообщения: 2631
Зарегистрирован: 2007-12-26 1:22:58
Откуда: СПб
Контактная информация:

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение f_andrey » 2017-05-25 15:10:54

Покажите лог и желательно заголовки письма, я так подозреваю у вас и отсылка идёт от имени вот того домена или своего?
Если ваша тема перенесена, то смотри viewtopic.php?f=1&t=32308

Udarnick
рядовой
Сообщения: 11
Зарегистрирован: 2017-04-21 10:04:03

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение Udarnick » 2017-05-25 15:32:42

В логе доставки ничего особенного - письма принимаются:

Код: Выделить всё

  grep "5279bcee-82c2-457c-abf1-4d88023c6078@чужой_домен.com" /var/log/exim/main.log
2017-05-23 14:02:56 1dD7aa-0008G6-1h <= mailer@наш_домен.ru H=(nout-02.домен.ru) [1.1.1.1] P=esmtpsa X=TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256 CV=no SNI="smtp.наш_домен.ru" A=auth_cram_md5:mailer@наш_домен.ru S=432585 id=5279bcee-82c2-457c-abf1-4d88023c6078@чужой_домен.com from <mailer@наш_домен.ru> for Elena@чужой_домен.com Konstantin@чужой_домен.com Mariya@чужой_домен.com Valentina@чужой_домен.com
2017-05-23 14:02:58 1dD7aa-0008G6-1h => elena@чужой_домен.com <Elena@чужой_домен.com> R=dnslookup T=remote_smtp H=чужой_домен-com.mail.protection.outlook.com [213.199.xxx.xxx] X=TLSv1.2:ECDHE-RSA-AES256-SHA384:256 CV=yes DN="/C=US/ST=WA/L=Redmond/O=Microsoft Corporation/OU=Microsoft Corporation/CN=mail.protection.outlook.com" K C="250 2.6.0 <5279bcee-82c2-457c-abf1-4d88023c6078@чужой_домен.com> [InternalId=84567906058830, Hostname=AM3PR01MB1313.eurprd01.prod.exchangelabs.com] 448054 bytes in 0.277, 1578.463 KB/sec Queued mail for delivery"
2017-05-23 14:02:58 1dD7aa-0008G6-1h -> konstantin@чужой_домен.com <Konstantin@чужой_домен.com> R=dnslookup T=remote_smtp H=чужой_домен-com.mail.protection.outlook.com [213.199.xxx.xxx] X=TLSv1.2:ECDHE-RSA-AES256-SHA384:256 CV=yes DN="/C=US/ST=WA/L=Redmond/O=Microsoft Corporation/OU=Microsoft Corporation/CN=mail.protection.outlook.com" K C="250 2.6.0 <5279bcee-82c2-457c-abf1-4d88023c6078@чужой_домен.com> [InternalId=84567906058830, Hostname=AM3PR01MB1313.eurprd01.prod.exchangelabs.com] 448054 bytes in 0.277, 1578.463 KB/sec Queued mail for delivery"
2017-05-23 14:02:58 1dD7aa-0008G6-1h -> mariya@чужой_домен.com <Mariya@чужой_домен.com> R=dnslookup T=remote_smtp H=чужой_домен-com.mail.protection.outlook.com [213.199.xxx.xxx] X=TLSv1.2:ECDHE-RSA-AES256-SHA384:256 CV=yes DN="/C=US/ST=WA/L=Redmond/O=Microsoft Corporation/OU=Microsoft Corporation/CN=mail.protection.outlook.com" K C="250 2.6.0 <5279bcee-82c2-457c-abf1-4d88023c6078@чужой_домен.com> [InternalId=84567906058830, Hostname=AM3PR01MB1313.eurprd01.prod.exchangelabs.com] 448054 bytes in 0.277, 1578.463 KB/sec Queued mail for delivery"
2017-05-23 14:02:58 1dD7aa-0008G6-1h -> valentina@чужой_домен.com <Valentina@чужой_домен.com> R=dnslookup T=remote_smtp H=чужой_домен-com.mail.protection.outlook.com [213.199.xxx.xxx] X=TLSv1.2:ECDHE-RSA-AES256-SHA384:256 CV=yes DN="/C=US/ST=WA/L=Redmond/O=Microsoft Corporation/OU=Microsoft Corporation/CN=mail.protection.outlook.com" K C="250 2.6.0 <5279bcee-82c2-457c-abf1-4d88023c6078@чужой_домен.com> [InternalId=84567906058830, Hostname=AM3PR01MB1313.eurprd01.prod.exchangelabs.com] 448054 bytes in 0.277, 1578.463 KB/sec Queued mail for delivery"



Пример заголовков генерируемого письма:

Код: Выделить всё

exim -Mvh 1dDpP4-0005pt-PK

1dDpP4-0005pt-PK-H
exim 93 93
<mailer@xxx.ru>
1495705798 0
-helo_name xxx.xxx.ru
-host_address 192.168.xx.xxx.59567
-host_auth auth_cram_md5
-interface_address 192.168.xx.xxxx.465
-received_protocol esmtpsa
-body_linecount 18716
-max_received_linelength 74
-auth_id mailer@xxxx.ru
-allow_unqualified_recipient
-allow_unqualified_sender
-tls_cipher TLSv1:AES256-SHA:256
XX
7
_xxxxx@чужой_домен.com
Danil@чужой_домен.com
Irina@чужой_домен.com
Irina@чужой_домен.com
kuznets@xxxxx.net
mir@xxxx.ru
smir@xxxx.ru

233P Received: from [192.168.xx.xxx] (helo=xxx.xxxxxxx.ru)
        by mx1.xxxxx.ru with esmtpsa (TLSv1:AES256-SHA:256)
        (Exim 4.72)
        (envelope-from <mailer@xxxxx.ru>)
        id 1dDpP4-0005pt-PK; Thu, 25 May 2017 12:49:59 +0300
038  Date: Thu, 25 May 2017 12:49:58 +0300
121F From: =?utf-8?B?0J7QntCeeIMKr0JDfQtNC80LjRgNdeCw0LvCuywgKNCS0L3Rdcfg9C60L7QstC+?=
        =?utf-8?B?KQ==?= <mailer@xxxxxx.ru>
062  Subject: =?utf-8?B?QxxsxsqfdWjExNV8sdvyNS4wNS4ysdvwswMDE3IDEyLTQ5?=
225T To: <_Mxxx@чужой_домен.com>,
        <Danil@чужой_домен.com>,
        <Irina@чужой_домен.com>,
        <Irina@чужой_домен.com>,
        <kuznets@xxxxx.net>,
        <mir@xxxx.ru>,
        <smir@xxxx.ru>
064I Message-Id: <7421b67b-068e-4ed7-aa62-0f4bf79822b4@чужой_домен.com>
018  Mime-Version: 1.0
023  X-Priority: 3 (Normal)
028  X-Mailer: 1C:Enterprise 8.3
070  Content-Type: multipart/mixed;
        boundary="------_13669_16459010_2680"

Аватара пользователя
f_andrey
майор
Сообщения: 2631
Зарегистрирован: 2007-12-26 1:22:58
Откуда: СПб
Контактная информация:

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение f_andrey » 2017-05-25 16:35:52

Да так нельзя, Message-Id меньшая из ваших проблем, почему её вообще на 1C не сменить, там в общем то хоть локалхост может быть , ну и начните где то отсюда https://technet.microsoft.com/en-us/library/mt734386(v=exchg.150).aspx
Последний раз редактировалось f_andrey 2017-05-25 17:20:45, всего редактировалось 1 раз.
Причина: fix link
Если ваша тема перенесена, то смотри viewtopic.php?f=1&t=32308

Udarnick
рядовой
Сообщения: 11
Зарегистрирован: 2017-04-21 10:04:03

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение Udarnick » 2017-05-25 17:14:14

Ссылка битая
В 1С не знаю способов сменить message-id

Поэтому и спросил про смену message-id в EXIM

Аватара пользователя
f_andrey
майор
Сообщения: 2631
Зарегистрирован: 2007-12-26 1:22:58
Откуда: СПб
Контактная информация:

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение f_andrey » 2017-05-25 17:25:36

fixed
Udarnick писал(а):Источник цитаты В 1С не знаю способов сменить message-id

Что за бред, обычно это хостнейм сервера, который шлёт первоначально письмо

Подмена его на релее, возможно и осуществима, но как выше написал, это скорее всего меньшая из ваших проблем.
Если ваша тема перенесена, то смотри viewtopic.php?f=1&t=32308

Udarnick
рядовой
Сообщения: 11
Зарегистрирован: 2017-04-21 10:04:03

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение Udarnick » 2017-05-25 18:58:06

f_andrey писал(а):Что за бред, обычно это хостнейм сервера, который шлёт первоначально письмо

Это не бред, а реальность. Знаете способ - приведите его, пожалуйста.
Повторюсь, что письмо генерируется в 1С-клиенте. Список адресатов берется из справочника. Экспериментальным методом удалось выяснить, что часть Message-ID после @ формируется из домена первого в справочнике адресата (таким образом, пока найден метод обхода проблемы)
f_andrey писал(а):Подмена его на релее, возможно и осуществима, но как выше написал, это скорее всего меньшая из ваших проблем.


Я не просил решать никакие другие мои проблемы, которые Вы тут ВДРУГ увидели.

Можете помочь с изменением message-id средствами EXIM - помогите!
Нет? Извините, но к чему тогда тему захламлять?

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1164
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение xM » 2017-05-25 23:17:43

Вообще-то Message-ID генерируется самим Exim при получении письма от клиента. Если ваша Одна-Эс выступает таким клиентом, то смотрите что у вас не так с настройкой самого Exim и, в частности, его primary_hostname, которое и используется при формировании Message-ID.
Если Одна-Эс имеет некий встроенный аналог SMTP-сервера, а Exim выступает релеем, то надо смотреть что у неё прописано в настройках и корректировать уже там.
Но вы, наверняка, можете удалить старый и сгенерировать новый Message-ID в транспорте удалённой доставки типа как-то так

Код: Выделить всё

remote_smtp:
   headers_remove = Message-ID
   headers_add = Message-ID: <${md5:${randint:65536}}$tod_epoch@your.domain>
IT voodoo blog https://kostikov.co

Udarnick
рядовой
Сообщения: 11
Зарегистрирован: 2017-04-21 10:04:03

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение Udarnick » 2017-05-26 18:00:01

xM писал(а):Вообще-то Message-ID генерируется самим Exim при получении письма от клиента. Если ваша Одна-Эс выступает таким клиентом, то смотрите что у вас не так с настройкой самого Exim и, в частности, его primary_hostname, которое и используется при формировании Message-ID.
Если Одна-Эс имеет некий встроенный аналог SMTP-сервера, а Exim выступает релеем, то надо смотреть что у неё прописано в настройках и корректировать уже там.
Но вы, наверняка, можете удалить старый и сгенерировать новый Message-ID в транспорте удалённой доставки типа как-то так

Код: Выделить всё

remote_smtp:
   headers_remove = Message-ID
   headers_add = Message-ID: <${md5:${randint:65536}}$tod_epoch@your.domain>


В 1С есть встроенный почтовый клиент, настройки которого элементарны как в любом другом клиенте. Именно он генерирует это кривой message-id и как-то изменить его нет никакой возможности. Подопытный EXim служит релеем для 1С. Я пробовал экспериментировал с двумя Exim - первый с настройками по умолчанию от ISPManager 5 (не думаю, что они там так сильно накосячили), второй когда-то давно настраивался как релей для подобных задач. На оба письмо прилетает с кривым Message-ID.
Далее, экспериментально доказано, что если в 1С-ке в справочнике, откуда берутся адреса для рассылки, первым будет, к примеру, адрес

Код: Выделить всё

bill@microsoft.com
, то письмо прилетит с message-id

Код: Выделить всё

 blablabla@microsoft.com
, то есть однозначный косяк 1С-ки

Exim, насколько я знаю, формирует Message-ID сам только если его нет в полученном письме. Поправьте меня, если ошибаюсь.

Большое Вам спасибо, похоже, Вы указали мне на параметр, который я сам не смог найти в документации по Exim
Буду пробовать!

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1164
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение xM » 2017-05-26 18:34:04

Udarnick писал(а):Источник цитаты Exim, насколько я знаю, формирует Message-ID сам только если его нет в полученном письме.

Да, вы правы. Так и есть. Обычно его формирует клиент. Я ошибся.
Но, в любом случае, Exim чрезвычайно гибок по части адаптации к конкретным задачам, поэтому и эта задача должна быть легко решаема.
IT voodoo blog https://kostikov.co

Udarnick
рядовой
Сообщения: 11
Зарегистрирован: 2017-04-21 10:04:03

Exim - изменить Message-ID внутри письма

Непрочитанное сообщение Udarnick » 2017-05-27 9:18:40

xM писал(а):

Код: Выделить всё

remote_smtp:
   headers_remove = Message-ID
   headers_add = Message-ID: <${md5:${randint:65536}}$tod_epoch@your.domain>


Работает!! Большое спасибо!


Вернуться в «MTA - Mail Transfer Agent»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя