У меня сейчас два сервера
first.mydomain.com
(ip: A.B.C.28) иsecond.mydomain.com
(ip: A.B.C.30)Оба сервера имеют записи DNS и обратные DNS, например A.B.C.30 -> second.mydomain.com
В first.mydomain.com
- обрабатывает все электронные письма с / на mydomain.com (например, MX для mydomain.com
указывает на first.mydomain.com
)
В second
настроен (exim / dovecot) для обработки электронной почты для двух других доменов. (virt1.com
и virt2.com
). MX записи в порядке, virt1.com mail is handled by 100 second.mydomain.com
Все основные функции работают (TLS, dovecot-auth ... и т. Д.). Получение электронной почты разрешено - доставка в /home/mail/virt1.com/user/Maildir
. Исходящая почта тоже доставляется (но странно), поэтому роутеры и транспорты работают, но:
Например, когда: user@virt1.com
отправка электронной почты на someuser@example.com
через second.mydomain.com
, есть странные вещи в заголовках.
Return-Path: <"user@virt1.com"@mydomain.com>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ??? - added mydomain
Received: ... deleted ...
Received: ... deleted ...
Received: from somedsl.someisp.com ([X.X.X.X]:21563 helo=marvin.local)
by second.mydomain.com with esmtpsa (TLSv1:DHE-RSA-CAMELLIA256-SHA:256)
(Exim 4.80.1 (FreeBSD))
(envelope-from <"user@virt1.com"@second.mydomain.com>)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ??? added FQDN
id 1UVf91-000ALf-fb
for someuser@example.com; Fri, 26 Apr 2013 11:40:43 +0200
Date: Fri, 26 Apr 2013 11:40:42 +0200
From: username <user@virt1.com>
Reply-To: user@virt1.com
To: someuser@example.com
Subject: test message
Sender: "user@virt1.com"@second.mydomain.com
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ??? added the FQDN again
начало моей конфигурации exim:
local_interfaces = A.B.C.30
primary_hostname = second.mydomain.com
domainlist local_domains = dsearch;/etc/mail/virtual #each domain has its own subdir
Тем не менее, нет никаких правил переписывания.
Вопросы:
smtp_active_hostname
к чему-то вместо second.mydomain.com
?Вышеупомянутое работает в одной тюрьме freebsd, но это, вероятно, не имеет значения ...
Первые почтовые серверы (из которых Exim является производным от очень раннего) были разработаны в то время, когда адрес электронной почты для userX@example.com обычно принадлежал настоящему пользователю unix с именем «userX». Таким образом, когда он создает заголовок отправителя и другие заголовки, он будет использовать имя пользователя @ default_domainname. Часть имени пользователя упоминается в Exim как local_part.
В современных системах гораздо более распространены виртуальные пользователи, где сервер exim может получать электронную почту в домен, который не является доменом по умолчанию, и local_part, вероятно, не является действительным локальным пользователем, или может быть несколько адресов электронной почты. с тем же local_part. В таких системах, вместо аутентификации как «userX», чаще используется аутентификация как «userX@example.com». Exim внутренне будет рассматривать всю эту строку как имя пользователя, если вы не сконфигурируете это иначе.
http://www.exim.org/exim-html-current/doc/html/spec_html/ch-message_processing.html#SECTsubmodnon
В control = submission
Строка сообщает exim о необходимости применения определенных исправлений к отправляемому сообщению, включая создание упомянутых вами заголовков. Измените его на:
control = submission/sender_retain
чтобы указать, что вы хотите, чтобы exim обрабатывал отправленное имя как полное userX@example.com, а не просто local_part, то есть exim не будет пытаться добавить имя домена по умолчанию к тому, что было отправлено. Документация exim, ссылка на которую приведена выше, содержит много подробностей обо всем процессе отправки сообщения и исправления.