Я установил сервер Exim4 на свой сервер debian wheezy. Этот почтовый сервер отправляет почту только с localhost. Цель - отправка почты для моего сайта.
У меня есть задачи cron и другие службы, генерирующие почту для root
пользователь. Эти письма не хранятся в /var/mail
как и раньше, но отправлено exim на root@mydomain.com
.
Я пытаюсь заставить exim отправлять письма для root
к mypersoaddress@gmail.com
скорее, чем root@mydomain.com
.
Я пробовал добавить .forward
в /root
с участием mypersoaddress@gmail.com
как содержание. Я пробовал также менять /etc/aliases
с участием root: mypersoaddress@gmail.com
. Дело в том, что маршрутизация работает на root@localhost
но не для root
который решается как root@mydomain.com
Я тестировал, как разрешается маршрутизация с помощью exim -bt
:
root@srv02:~# exim -bt root@localhost
R: system_aliases for root@localhost
R: dnslookup for mypersoaddress@gmail.com
mypersoaddress@gmail.com
<-- root@localhost
router = dnslookup, transport = remote_smtp
host gmail-smtp-in.l.google.com [173.194.67.27] MX=5
host alt1.gmail-smtp-in.l.google.com [74.125.143.27] MX=10
host alt2.gmail-smtp-in.l.google.com [74.125.25.27] MX=20
host alt3.gmail-smtp-in.l.google.com [173.194.64.27] MX=30
host alt4.gmail-smtp-in.l.google.com [74.125.142.27] MX=40
root@srv02:~# exim -bt root
R: dnslookup for root@mydomain.com
root@mydomain.com
router = dnslookup, transport = remote_smtp
host aspmx.l.google.com [173.194.78.27] MX=1
host alt1.aspmx.l.google.com [74.125.143.27] MX=5
host alt2.aspmx.l.google.com [74.125.25.27] MX=5
host alt4.aspmx.l.google.com [74.125.142.27] MX=10
host alt3.aspmx.l.google.com [173.194.64.27] MX=10
Бьюсь об заклад, это вопрос того, как настроен мой сервер (а не как настроен exim). Но чтобы хорошо понять, я хотел бы найти решение для обоих:
root
решено как root@localhost
?root@mydomain.com
направлен к mypersoaddress@gmail.com
?Используемые вами выходные данные отладки указывают на то, что вы используете систему конфигурации в стиле Debian. Я буду называть это exim4 чтобы прояснить, что есть некоторая дополнительная магия конфигурации, происходящая за пределами конфигурации exim по умолчанию, которая входит в исходный код. Любой, кто прочитает это позже, должен четко понимать, что некоторые из этих предложений не применимы, если они не используют конфигурации exim в стиле Debian.
Разница в вашем выводе -bt дает подсказку:
root@srv02:~# exim -bt root@localhost
R: system_aliases for root@localhost
R: dnslookup for mypersoaddress@gmail.com
mypersoaddress@gmail.com
root@srv02:~# exim -bt root
R: dnslookup for root@mydomain.com
root@mydomain.com
В первом он знал, что нужно искать в маршрутизаторе system_aliases, потому что "localhost" настроен как один из доменов, которому разрешено просматривать файл псевдонимов. Но во втором он пропустил этот файл псевдонимов, потому что «mydomain.com» отсутствует в этом списке. В exim4 этот список MAIN_LOCAL_DOMAINS макрос.
По моей оценке, одна из этих вещей, вероятно, решит вашу проблему. Пункты 2 и последующие - это потенциальные изменения в вашем exim.conf. Поскольку вы запускаете exim.4, вам необходимо настроить файлы конфигурации почты Debian в / etc / exim /, а затем запустить exim4-conf.conf или что-то в этом роде, чтобы эти изменения были прочитаны и сгенерирован новый файл конфигурации (/ var / lib / exim4 / config.autogenerated *), который фактически использует exim4: