Вопрос или проблема
Я пытаюсь настроить почтовый сервер Exim и получаю ошибку
временно отклонено RCPT: удаленный адрес хоста – это локальный хост
domain.com указывает на локальный хост, MX для domain.com указывает на локальный хост, но полностью квалифицированное доменное имя локального хоста – otherdomain.com, что, как я подозреваю, связано с проблемой.
Оба domain.com и otherdomain.com настроены в конфигурационном файле Exim:
domainlist local_domains = domain.com : otherdomain.com
Сервер не заполняет никакие почтовые ящики.
В чем проблема?
Как правило, в domainlist local_domains у вас есть “указатель” на реальный список:
domainlist local_domains = MAIN_LOCAL_DOMAINS
в то время как список доменов находится в
dc_other_hostnames="example.com;example2.com"
списке, заключенном в одинарные кавычки, разделенном точкой с запятой. (У вас там двоеточие.)
Также выберите один почтовый хост, при этом этот почтовый хост может принимать почту для нескольких доменов (все перечислены в dc_other_hostnames). Добавьте MX-запись для otherdomain.com, указывающую на ваш почтовый хост.
Убедитесь, что почтовый хост имеет FQDN, который вы установили в Exim. Если FQDN и то, что Exim думает, что это, не совпадают, вы получите вышеуказанную ошибку. Если вам нужно установить ваш FQDN, отредактируйте /etc/hosts
и /etc/hostname
и примените эти изменения, вызвав hostname -F /etc/hostname
(по ссылке)
Ответ или решение
Проблема, с которой вы столкнулись, связана с неправильной конфигурацией Exim, в частности с настройками доменов и полным доменным именем (FQDN) вашего сервера.
Решение проблемы
-
Проверка и настройка FQDN
Убедитесь, что ваш сервер имеет правильное полное доменное имя (FQDN), которое должно совпадать с тем, как он идентифицируется в Exim. Для этого выполните следующие шаги:-
Откройте файл
/etc/hosts
и убедитесь, что там указана строка для вашего сервера с правильным FQDN. Пример:127.0.0.1 localhost ваш_внешний_IP ваше_полное_доменное_имя
-
В файле
/etc/hostname
должно быть указано только полное доменное имя вашего сервера (например,mail.otherdomain.com
). -
После внесения изменений примените их командой:
hostname -F /etc/hostname
-
-
Настройка конфигурации Exim
В вашем конфигурационном файле Exim (/etc/exim/exim.conf
или/etc/exim4/update-exim4.conf.conf
) вам нужно правильно задать список доменов и убедиться, что они включены в нужные секции.-
Измените ваш
domainlist local_domains
на:domainlist local_domains = MAIN_LOCAL_DOMAINS
-
Убедитесь, что другой домен перечислен в
dc_other_hostnames
:dc_other_hostnames='domain.com;otherdomain.com'
-
-
Настройка записей DNS (MX)
Убедитесь, что записи MX дляdomain.com
иotherdomain.com
настроены на ваш сервер. Запись MX должна указывать на ваш полный домен, например:domain.com. IN MX 10 mail.otherdomain.com. otherdomain.com. IN MX 10 mail.otherdomain.com.
-
Проверка состояния Exim
После внесения изменений обязательно перезапустите службу Exim, чтобы применить изменения:sudo systemctl restart exim
-
Тестирование конфигурации
Проверьте состояние вашего почтового сервера с помощью следующей команды:exim -bV
Это покажет текущую конфигурацию Exim и позволит убедиться, что ваши домены правильно настроены.
-
Логи и отладка
Если проблема не решится, проверьте логи Exim для более подробной информации о причине ошибки. Логи можно найти в/var/log/exim4/mainlog
. Анализируйте их на предмет ошибок или сообщений, которые могут указывать на другие проблемы в конфигурации или DNS.
Следуя этим шагам, вы должны устранить ошибку "temporarily rejected RCPT: remote host address is the local host" и настроить ваш почтовый сервер Exim правильно. Если возникают дополнительные вопросы или трудности, не стесняйтесь задавать их.