В настоящее время у меня все электронные письма от eximʻa пересылаются на исходящий сервер STMP в нашей сети. Вот раздел моей конфигурации Exim, который отправляет почту:
send_to_gateway:
driver = manualroute
transport = remote_smtp
route_list = * outbound-stmp.domain.com
Это отлично подходит для электронных писем, которые отправляются на внешние адреса с нашего веб-сервера. Это не работает, когда задания cron отправляют электронное письмо на локальную корневую учетную запись. Эти локальные электронные письма отправляются на наш исходящий сервер и не возвращаются, потому что их нельзя отправить на что-то вроде "root @ localhost".
Возможно ли через Exim отправлять электронные письма, предназначенные для локальных учетных записей, чтобы они оставались на локальной машине, и для любых электронных писем, которые не являются локальными, чтобы они проходили через реле?
Вам необходимо определить маршрутизатор для вашего шлюза, другой маршрутизатор для локальной доставки и условия, в которых они используются.
Итак, чтобы локально доставлять почту, адресованную *.localhost
суффикс, определите список доменов local_domains
который включает "localhost" и включает domains
пункт в первом маршрутизаторе. Exim проверяет domains
пункт, чтобы решить, следует ли использовать маршрутизатор.
exim.conf:
...
# MAIN CONFIGURATION SETTINGS #
domainlist local_domains = @ : localhost : localhost.localdomain : mydomain.com
...
begin routers
...
send_to_gateway:
driver = manualroute
domains = !+local_domains
transport = remote_smtp
route_list = * outbound-stmp.domain.com
...
localuser:
driver = accept
check_local_user
transport = local_delivery
cannot_route_message = Unknown user
...
В domains = !+local_domains
условие означает "использовать этот маршрутизатор, когда домен не в local_domains
список." !
средства не, +
означает разыменование следующей переменной / списка