. В качестве значения данной опции задается список доменных имен, разделенных двоеточиями. Эти имена Exim должен интерпретировать как локальные. Например, запись
local_domains = localhost: threeroomco.com
сообщает Exim о том, что адреса
localhost
и
threeroomco.com
являются локальными и письма, в которых они указаны, необходимо непосредственно доставлять пользователям. По умолчанию значение данной опции принимается равным значению
qualify_recipient
. Опция
qualify_recipient
задает имя узла для входящих сообщений, в которых такая информация отсутствует.
•
local_domains_include_host
. Если значение данной
опции равно
true
, Exim принимает письма, в адресе которых указано имя компьютера. Тот же результат можно получить, добавив имя узла к списку
local_domains
.
•
local_domains_include_host_literals
. Если значение данной опции равно
true
, Exim принимает письма, в которых указан IP-адрес компьютера. Например, если Exim выполняется на компьютере с адресом 172.24.98.2 и на этом компьютере имеется учетная запись пользователя
ben
, Exim примет письмо с адресом
ben@[172.24.98.2]
. Если вы не хотите, чтобы подобные письма обрабатывались сервером, необходимо установить значение
false
опции
local_domains_include_host_literals
.
Сценарий
eximconfig
устанавливает эти опции исходя из ответов администратора на вопросы о домене, для которого необходимо принимать письма. Таким образом, если вы внимательно отнесетесь к вопросам, задаваемым данным сценарием, вы обнаружите, что необходимые для вас значения опций уже установлены.
Конфигурация Exim для ретрансляции писем
Подобно
sendmail
, в сервере Exim предусмотрен ряд опций, предназначенных как для ретрансляции писем, переданных другими программами, так и для использования в качестве ретрансляторов других серверов. Сценарий
eximconfig
задает администратору вопросы, касающиеся ретрансляции писем, и в большинстве случаев устанавливает приемлемую конфигурацию сервера. Уточнить настройку Exim можно с помощью непосредственного редактирования файла
exim.conf
.
Настройка Exim для работы в режиме ретранслятора
Основные опции
exim.conf
предназначенные для реализации режима ретрансляции писем, описаны ниже.
•
host_accept_relay
. Для того чтобы сервер Exim мог ретранслировать письма, переданные определенными компьютерами, вам надо указать в качестве значения данной опции их адреса (адреса отделяются друг от друга двоеточиями). В конфигурационном файле должно быть как минимум указано выражение
host_accept_relay = localhost
, позволяющее Exim передавать письма, подготовленные локальными почтовыми программами. По мере расширения списка (в котором могут быть указаны доменные имена, IP-адреса, а также использоваться символы групповых операций) увеличивается число компьютеров, которым позволено пользоваться услугами сервера для передачи почты. Например, выражение
указывает на то, что письма для передачи должны приниматься с локального узла, со всех узлов сети 192.168.99.0/24, а также со всех компьютеров домена
pangaea.edu
. Использование данной опции для указания IP-адресов компьютеров, принадлежащих домену, — один из самых безопасных способов обеспечения ретрансляции писем.
•
relay_domains
. В качестве значения данной опции можно указать одно или несколько имен доменов, разделенных двоеточиями. В результате сервер Exim будет обрабатывать письма, направленные с любого компьютера, принадлежащего указанным доменам. Эта опция полезна тогда, когда необходимо, чтобы сервер обслуживал несколько доменов или один большой домен. Аналогичных результатов можно добиться, включая символ групповой операции (
*
) в имена, задаваемые в качестве значения опции
host_accept_relay
.
•
relay_domains_include_local_mx
. Если вы зададите значение yes данной опции, доступ к почтовому серверу
автоматически получат компьютеры, указанные в записях
MX
серверов DNS. Такой подход очень удобен, так как избавляет от необходимости перенастраивать Exim при изменении конфигурации домена. Однако в этом случае повышается опасность использования сервера спамерами, которые имеют возможность управлять доменом и включать в конфигурационный файл сервера DNS записи
MX
.
•
sender_address_relay
. В качестве значения данной опции задается список почтовых адресов, разделенных двоеточиями, для которых разрешено использование сервера в качестве ретранслятора. В обычных условиях письмо должно соответствовать как значению данной опции, так и адресу узла, указанному с помощью опции
host_accept_relay
. (Вы можете задать проверку на соответствие любой из этих опций, включив в конфигурационный файл выражение
relay_match_host_or_sender = yes
, но такая конфигурация опасна для системы, так как почтовый адрес легко подделать.) Данную опцию можно применить для того, что-бы ограничить круг пользователей, имеющих право использовать сервер в качестве ретранслятора.
Приведенные здесь опции позволяют настроить Exim для работы в режиме ретранслятора и указать, какие компьютеры локальной сети или внешних доменов имеют право доступа к данному серверу. Данные опции позволяют решать большинство задач по обеспечению ретрансляции почты. Если же вам необходимо установить специальную конфигурацию сервера, вы можете воспользоваться дополнительными опциями, например,
host_auth_accept_relay
(которая выполняет аутентификацию удаленной системы перед ретрансляцией писем) и
tls_host_accept_relay
(которая требует, чтобы удаленная система использовала средства аутентификации и кодирования TLS).
Настройка Exim для передачи почты через ретранслятор
Если ваш почтовый сервер должен передавать почту через ретранслятор, надо настроить соответствующим образом. В конфигурационном файле Exim не предусмотрена специальная опция, позволяющая решить эту задачу, однако сценарий
eximconfig
генерирует набор записей, обеспечивающих необходимые установки. Опции, созданные с помощью
eximconfig
, выглядят следующим образом:
smarthost:
driver = domainlist
transport = remote_smtp
route_list = "* franklin.threeroomco.com bydns_a"
end
Приведенная выше группа записей сообщает Exim о том, что письма, адресованные внешним пользователям, надо передавать через узел
franklin.threeroomco.com
. Чтобы использовать другой ретранслятор, надо изменить значение соответствующей опции.
Настройка Exim для противодействия распространению спама
В сервере Exim предусмотрен набор правил фильтрации. С помощью этих правил вы можете задавать адреса узлов, которым должна быть запрещена передача писем, указывать пользователей, от которых почта не должна приниматься, а также выполнять другие проверки на основе самых разнообразных критериев. Основные опции фильтрации описаны ниже.
•
host_reject
. Данная опция задается в конфигурационном файле
exim.conf
. Ее значение представляет собой список имен узлов и доменов, а также IP-адресов, разделенных двоеточиями. Почта, переданная с компьютеров, указанных посредством данной опции, должна блокироваться. Например, запись
host_reject = *.badspammer.net:10.16.8.0/24
указывает на то, что письма из домена
badspammer.net
, а также из сети 10.16.8.0/24 должны отвергаться. Система отказывается взаимодействовать с удаленным компьютером, заданным с помощью опции
host_reject
, уже на этапе установления соединения. В результате удаленный компьютер предпринимает повторные попытки обращения к вашему серверу, но связанная с этим дополнительная нагрузка на линии связи и компьютеры небольшая.