Назад | Перейти на главную страницу

виртуальные домены exim против основного домена - правила перезаписи

У меня сейчас два сервера

Оба сервера имеют записи 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

Тем не менее, нет никаких правил переписывания.

Вопросы:

Вышеупомянутое работает в одной тюрьме 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, ссылка на которую приведена выше, содержит много подробностей обо всем процессе отправки сообщения и исправления.