У меня есть выделенный сервер с exim. У меня также есть обычная учетная запись общего хостинга («sharedhostingdomain.com») на hostgator. Я хочу настроить exim так, чтобы он всегда использовал smtp-сервер hostgator ("mail.sharedhostingdomain.com") для доставки электронной почты.
Проблема в том, что smtp-сервер hostgator, очевидно, требует аутентификации и находится на другом порту (26). Поскольку у меня есть законная учетная запись, у меня есть учетные данные для доступа, но я не знаю, как заставить exim всегда использовать этот SMTP-сервер вместо попытки напрямую подключиться к smtp-серверу получателя и где указать эти учетные данные для доступа.
Как говорит Дэниел, вам нужно настроить exim как smarthost. Это означает определение такого маршрутизатора (N.B. двойное двоеточие, разделяющее имя хоста и номер порта):
send_to_smarthost:
debug_print = "R: smarthost for $local_part@$domain"
driver = manualroute
domains = ! +local_domains
transport = remote_smtp_smarthost
route_list = * smarthost.example.com::26
host_find_failed = defer
no_more
а затем транспорт, который может подтолкнуть exim к аутентификации:
remote_smtp_smarthost:
debug_print = "T: remote_smtp_smarthost for $local_part@$domain"
driver = smtp
hosts_require_auth = smarthost.example.com
Для многих дистрибутивов теперь можно просто поставить host:username:password
тройка в /etc/exim/passwd.client
и это должно работать.
Я считаю, что вместо указания порта в роутере можно использовать port
команда в транспорте. По идее должны работать оба.
Прошло много времени с тех пор, как я делал что-нибудь интересное с конфигурациями exim, но я могу дать вам несколько основных указателей. Это также будет зависеть от того, какую версию exim вы используете и какой дистрибутив (например, у debian есть файл конфигурации мета-конфигурации, который многое из этого абстрагирует для вас).
По сути, вы захотите настроить exim с помощью smarthost, настроенного на SMTP-сервер hostgator. (Раньше это называлось «роутером» в exim-talk, я думаю, что так оно и есть).
Транспортному протоколу, на котором настроен ваш маршрутизатор, необходимо указать, чтобы он использовал порт 26, а не порт 25. (Вы можете установить переменную «порт»).
Вам также необходимо настроить аутентификацию клиента exim (например, проверить Вот для бита "Аутентификация клиентом exim"
Извините, я не могу быть более конкретным, но, надеюсь, этого достаточно, чтобы вы пошли дальше.