Удалённый адрес хоста — это локальный хост

Вопрос или проблема

Я пытаюсь настроить почтовый сервер 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) вашего сервера.

Решение проблемы

  1. Проверка и настройка FQDN
    Убедитесь, что ваш сервер имеет правильное полное доменное имя (FQDN), которое должно совпадать с тем, как он идентифицируется в Exim. Для этого выполните следующие шаги:

    • Откройте файл /etc/hosts и убедитесь, что там указана строка для вашего сервера с правильным FQDN. Пример:

      127.0.0.1   localhost
      ваш_внешний_IP   ваше_полное_доменное_имя
    • В файле /etc/hostname должно быть указано только полное доменное имя вашего сервера (например, mail.otherdomain.com).

    • После внесения изменений примените их командой:

      hostname -F /etc/hostname
  2. Настройка конфигурации 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'
  3. Настройка записей DNS (MX)
    Убедитесь, что записи MX для domain.com и otherdomain.com настроены на ваш сервер. Запись MX должна указывать на ваш полный домен, например:

    domain.com. IN MX 10 mail.otherdomain.com.
    otherdomain.com. IN MX 10 mail.otherdomain.com.
  4. Проверка состояния Exim
    После внесения изменений обязательно перезапустите службу Exim, чтобы применить изменения:

    sudo systemctl restart exim
  5. Тестирование конфигурации
    Проверьте состояние вашего почтового сервера с помощью следующей команды:

    exim -bV

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

  6. Логи и отладка
    Если проблема не решится, проверьте логи Exim для более подробной информации о причине ошибки. Логи можно найти в /var/log/exim4/mainlog. Анализируйте их на предмет ошибок или сообщений, которые могут указывать на другие проблемы в конфигурации или DNS.

Следуя этим шагам, вы должны устранить ошибку "temporarily rejected RCPT: remote host address is the local host" и настроить ваш почтовый сервер Exim правильно. Если возникают дополнительные вопросы или трудности, не стесняйтесь задавать их.

Оцените материал
Добавить комментарий

Капча загружается...