Смит Родерик В.
Шрифт:
qualify_domain = threeroomco.com
Если пользователь
ben
отправит письмо, а программа, с помощью которой это письмо было подготовлено, не укажет в поле From:
имя домена, то Exim добавит имя threeroomco.com
. Если доменное имя адреса не соответствует имени threeroomco.com
, то Exim заменит адрес. Таким образом, содержимое поля From:
будет выглядеть так: ben@threeroomco.com
. Еще одна опция, которую можно использовать для маскировки адресов, называется
primary_hostname
. Она применяется подобно qualify_domain
, и ее значение принимается в качестве значения по умолчанию для qualify_domain
. Значение primary_hostname
используется при переговорах о взаимодействии Exim и удаленного сервера имен. Имя, задаваемое посредством данной опции, применяется при формировании заголовка Received:
. Для более сложной маскировки адресов применяется файл
/etc/email-addresses
. Строго говоря, на файл /etc/email-addresses
ссылается запись, расположенная в конце конфигурационного файла exim.conf
. Эта запись имеет следующий вид: *@threeroomco.com ${lookup{$1}lsearch{/etc/email-addresses}\
{$value}fail} bcfrF
Это одна из наиболее сложных записей, содержащихся в файле
exim.conf
. При настройке сервера не следует редактировать ее, допустимо лишь изменить имя домена в начале строки. С помощью данной записи Exim проверяет каждый адрес на принадлежность домену threeroomco.com
, а затем использует файл /etc/email-addresses
для замены адреса. В первом поле записи, содержащейся в файле /etc/email-addresses
(перед двоеточием), указывается почтовый адрес, предназначенный для сравнения, а во втором поле (после двоеточия) — адрес для замены. Данное средство позволяет выполнять маскировку для каждого пользователя; чтобы сделать это, достаточно лишь отредактировать файл email-addresses
. При необходимости вы можете обрабатывать письма из разных доменов. Для этого надо либо продублировать приведенную выше запись в exim.conf
, либо включить всю информацию, необходимую для замены адресов, в один файл email-addresses
. В данном разделе рассмотрены лишь некоторые средства маскировки адресов, предоставляемые Exim. Дополнительную информацию по этому вопросу вы можете получить в документации на Exim, обратившись по адресу
http://www.exim.org/exim-html-3.30/doc/html/spec_34.html
. Настройка Exim для приема почты
В конфигурационном файле
exim.conf
предусмотрены различные опции, позволяющие указать серверу, следует ли интерпретировать адрес как локальный. Эти опции кратко описаны ниже. •
local_domains
. В качестве значения данной опции задается список доменных имен, разделенных двоеточиями. Эти имена 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-адреса, а также использоваться символы групповых операций) увеличивается число компьютеров, которым позволено пользоваться услугами сервера для передачи почты. Например, выражение host_accept_relay = localhost:192.168.99.0/24:*.pangaea.edu
указывает на то, что письма для передачи должны приниматься с локального узла, со всех узлов сети 192.168.99.0/24, а также со всех компьютеров домена pangaea.edu
. Использование данной опции для указания IP-адресов компьютеров, принадлежащих домену, — один из самых безопасных способов обеспечения ретрансляции писем. •
relay_domains
. В качестве значения данной опции можно указать одно или несколько имен доменов, разделенных двоеточиями. В результате сервер Exim будет обрабатывать письма, направленные с любого компьютера, принадлежащего указанным доменам. Эта опция полезна тогда, когда необходимо, чтобы сервер обслуживал несколько доменов или один большой домен. Аналогичных результатов можно добиться, включая символ групповой операции (*
) в имена, задаваемые в качестве значения опции host_accept_relay
.