Exim удваивает доменное имя в SMTP-аутентифицированной почте

Я настраиваю почтовый сервер Exim 4.87 с виртуальными доменами, хранящимися в базе данных MySQL. У машины есть имя хоста athena.example.com (example.com, конечно, вымышленный). Я хочу иметь возможность отправлять как com конечно вымышленный). Я хочу иметь возможность ...

Я настраиваю почтовый сервер Exim 4.87 с виртуальными доменами, хранящимися в базе данных MySQL. У машины есть имя хоста athena.example.com (example.com, конечно, вымышленный). Я хочу иметь возможность отправлять как com конечно вымышленный). Я хочу иметь возможность ...

Я настраиваю почтовый сервер Exim 4.87 с виртуальными доменами, хранящимися в базе данных MySQL. У машины есть имя хоста athena.example.com (example.com, конечно, вымышленный). Я хочу иметь возможность отправлять какuser@example.com.

Локальная доставка этим виртуальным пользователям работает, поэтому я знаю, что таблицы читаются правильно. Я добавил это в свой /etc/exim/config:

domainlist local_domains = @:localhost:${lookup mysql{SELECT domain FROM domains WHERE type='local' AND domain='${quote_mysql:${domain}}'}} 

.. как видно на многих примерах.

+------------+-----------------------+------+-----+---------+-------+
| Field      | Type                  | Null | Key | Default | Extra |
+------------+-----------------------+------+-----+---------+-------+
| domain     | char(128)             | NO   | MUL |         |       |
| type       | enum('local','relay') | NO   |     | local   |       |
| relay_host | char(128)             | NO   |     |         |       |
+------------+-----------------------+------+-----+---------+-------+

Теперь при отправке почты на удаленный хост происходит что-то странное:

$ /usr/lib/sendmail jvo@my.real.domain
Subject: Test 1

foo
.

Журнал:

2016-08-21 00:56:41 1bbFBm-0005ZL-0D <= jvo@athena.example.com U=jeroen P=local S=382
2016-08-21 00:56:43 1bbFBm-0005ZL-0D => jvo@my.real.domain R=dnslookup T=remote_smtp H=mx3.xs4all.nl [194.109.24.134] X=TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256 CV=yes C="250 2.0.0 mxdrop302.xs4all.net accepted message u7KMuf8f017179"
2016-08-21 00:56:43 1bbFBm-0005ZL-0D Completed

Это доставляется с От: из jvo@athena.example.com , как и для быть ожидаемым.

$ /usr/lib/sendmail jvo@my.real.domain
Subject: Test 2
From: jvo@example.com

foo
.

Журнал (похожий на первый)

2016-08-21 00:57:32 1bbFCT-0005ZT-O5 <= jvo@athena.example.com U=jeroen P=local S=427 
2016-08-21 00:57:35 1bbFCT-0005ZT-O5 => jvo@my.real.domain R=dnslookup T=remote_smtp H=mx1.xs4all.nl [194.109.24.132] X=TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256 CV=yes C="250 2.0.0 mxdrop301.xs4all.net accepted message u7KMvW6N012011" 
2016-08-21 00:57:35 1bbFCT-0005ZT-O5 Completed

Доставляется с От: из jvo@example.com, без части «афина». Все идет нормально.

Теперь, когда я пытаюсь отправить почту с использованием аутентифицированного SMTP, полное доменное имя добавляется к почте! Конечным результатом является

"jvo@example.com"@athena.example.com

, который, конечно, отвергается. Цитаты также добавлены (и да, они правильно установлены в моем почтовом клиенте).

Журнал:

2016-08-21 00:38:27 1bbEuJ-0005Yb-S0 <= "jvo@example.com"@athena.example.com H=([IPv6:2001:xx:yy:zz]) [2001:xx:yy:zz] P=esmtpsa X=TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128 CV=no A=plain:jvo@example.com S=2822 id=57B8DBE3.9060504@example.com
2016-08-21 00:38:29 1bbEuJ-0005Yb-S0 ** jvo@my.real.domain R=dnslookup T=remote_smtp H=mx2.xs4all.nl [194.109.24.138] X=TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256 CV=yes: SMTP error from remote mail server after RCPT TO:<jvo@my.real.domain>: 554 5.7.1 invalid routing in sender address <"jvo@example.com"@athena.example.com>
2016-08-21 00:38:29 1bbEuL-0005Yi-HO <= <> R=1bbEuJ-0005Yb-S0 U=exim P=local S=4489
2016-08-21 00:38:29 1bbEuJ-0005Yb-S0 Completed
2016-08-21 00:38:29 1bbEuL-0005Yi-HO ** jvo@example.com@athena.example.com <"jvo@example.com"@athena.example.com>: Unrouteable address
2016-08-21 00:38:29 1bbEuL-0005Yi-HO Frozen (delivery error message)

Итак, на данный момент я застрял ... есть идеи, что может быть не так?

0
задан 21 August 2016 в 02:43
2 ответа

Похоже, у вас есть правило перезаписи, которое добавляет домен ко всему адресу, а не к local_part. Попробуйте проверить свою перезапись из командной строки:

exim -brw joe@example.com

См. Главу Перезапись адреса в Спецификации Exim для руководства.

0
ответ дан 5 December 2019 в 09:40

Ну ... он был спрятан далеко в углах Google, но у кого-то была та же проблема:

Добавлен адрес электронной почты, к которому добавлен основной хост.

Оказывается, опция, которая необходимо добавить в один из списков ACL (часть / domain = )

accept  hosts         = +relay_from_hosts
      control       = submission/domain=
      control       = dkim_disable_verify

accept  authenticated = *
      control       = submission/domain=
      control       = dkim_disable_verify

Хотя я сомневаюсь, что это необходимо в первом разделе «accept», это, вероятно, не повредит ...

0
ответ дан 5 December 2019 в 09:40

Теги

Похожие вопросы