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

Как заставить Exim принимать почту для поддоменов?

Я пытаюсь использовать поддомены с Exim, но если я отправлю тестовое сообщение на любой адрес, отличный от fqdn, кроме моего основного доменного имени, оно будет возвращено с ошибкой ретрансляции. Я могу отправить и войти в Dovecot и Exim с адресом, например, test@mysub.mydomain.com, но могу отправлять почту только с этого адреса. Входящая почта работает только на основном домене.

К сожалению, я выбрал опцию конфигурации Debian с несколькими файлами, когда настраивал свои почтовые серверы год назад, так что здесь много файлов конфигурации. Сообщите мне, есть ли какие-то конкретные сообщения, которые будут актуальны.

У меня есть обходной путь, но он полностью удаляет поддомен из адреса в отправке и требует только «локальных» имен пользователей, не позволяя имена пользователей с полным адресом электронной почты.

Как я могу заставить Exim разрешить все поддомены? Это позволяет мне войти в систему с полным адресом электронной почты, почему бы не узнать, что этот адрес существует?

Я использую аутентификацию пользователя PAM с полными адресами электронной почты для имен пользователей с поддержкой электронной почты. Я думаю, что, возможно, у меня есть неправильная конфигурация где-то в маршрутизации, которая добавляет домен поверх адреса электронной почты, поскольку обычно PAM использует простые имена пользователей, а не полные адреса электронной почты. Но это не в авторизации. Это должно быть в маршруте. С другой стороны, может быть, это не причем.

Любые идеи приветствуются, так как мои поиски выявили все Кроме как заставить Exim принимать почту для поддоменов.

Если вы редактируете конфигурацию напрямую, добавьте подстановочный знак в свой MAIN_LOCAL_DOMAINS макрос в вашей конфигурации или шаблоне.

MAIN_LOCAL_DOMAINS=@:localhost:example.com : *.example.com 

Это установит local_domains используется для приема электронной почты.

domainlist local_domains = MAIN_LOCAL_DOMAINS

Если вы используете конфигурацию на основе Debian, укажите свои домены как другие домены в update-exim4.conf.conf следующим образом:

dc_other_hostnames='example.com : *.example.com'

Если вы хотите проверить наличие фактических локальных поддоменов, вы должны использовать поиск DNS вместо подстановочного знака. Увидеть Спецификация Exim. Соответствующие разделы: «Поиск файлов и баз данных» и «Списки доменов, хостов, адресов и локальных частей».

Для поиска полного имени пользователя, включая домен, вы находитесь за пределами обычного поиска пользователя. Проверьте документацию по виртуальным доменам для такого поиска. См. Раздел «Технические характеристики» «Некоторые общие параметры конфигурации». Также есть отличный Вопросы-Ответы доступный.