Маскировка адресов
Маскировка адресов
Опция myorigin позволяет задать имя, под которым Postfix будет представляться при взаимодействии с другими системами. По умолчанию в качестве значения данной опции задается переменная $myhostname, которая, в свою очередь, определяет доменное имя компьютера. Конфигурация по умолчанию приемлема во многих случаях, но если вашему компьютеру соответствует несколько имен или если вы хотите вместо имени узла использовать имя домена, вам придется изменить настройку сервера. Для этого надо задать новое значение опции myorigin, например:
myorigin = threeroomco.com
При желании вы можете указать в качестве значения опции переменную, например $mydomain. По умолчанию значением переменной $mydomain является значение из которого исключен компонент, находящийся слева. Например, если переменная $myhostname имеет значение franklin.threeroomco.com, то значение $mydomain будет равно threeroomco.com. В файле main.conf содержится много закомментированных записей. В некоторых случаях вы можете изменить конфигурацию, выбрав подходящую для вас запись и удалив символ комментариев.
Опция myorigin определяет только базовые средства маскировки адресов. Значение данной опции используется лишь в ходе начальных переговоров с удаленным сервером, предусмотренных протоколом SMTP, и для указания доменного имени в поле From:, если соответствующие данные не были включены в это поле программой подготовки писем. Если ваш почтовый сервер выступает в качестве ретранслятора по отношению к другим системам вашего домена, которые, возможно, настроены для включения в заголовок полного адреса, вам потребуется выполнять более сложные действия по маскировке адресов. Предположим, например, что клиентская программа, использующая сервер Postfix для передачи писем, включает в поле From: адрес ben@client.threeroomco.com. Предположим также, что вы хотите удалить идентификатор client так, чтобы адрес имел вид ben@client.threeroomco.com. Учитывая, что значением переменной $mydomain является имя домена threeroomco.com, вы можете использовать для получения требуемого результата следующую запись:
masquerade_domains = $mydomain
Данная опция указывает серверу Postfix на то, что при обработке сообщения должна быть удалена часть доменного имени, не относящаяся к имени домена, указанного посредством переменной $mydomain. В результате в поля From: и To: вместо имени узла, принадлежащего домену $mydomain, будет записано имя домена.
Postfix позволяет выполнять еще более сложные действия по маскировке адресов. В частности, вы можете указать Postfix на необходимость изменить содержимое файла базы данных. Для этого используется опция sender_canonical_maps.
sender_canonical_maps = hash:/etc/postfix/sender_canonical
В файл sender_canonical необходимо включить записи, используемые для преобразования имен. Каждая строка этого файла должна содержать адрес, который может находиться в составе заголовка, и адрес, которым он должен быть заменен. Следующие две строки заменяют имена client.threeroomco.com и localhost на threeroomco.com:
@client.threeroomco.com @threeroomco.com
@localhost @threeroomco.com
Аналогичный подход можно использовать для преобразования пользовательских имен. Например, ваш сервер может выполнять роль посредника между сетями, в которых для представления имен применяются различные форматы. Включив в файл, предназначенный для преобразования, записи, отображающие имя каждого пользователя, вы обеспечите соответствие имен в разных форматах.
После создания файла sender_canonical его необходимо преобразовать в двоичный формат посредством команды postmap sender_canonical. Чтобы внесенные в файл изменения были учтены сервером Postfix, надо вызвать команду postfix reload либо перезапустить сервер.
Выполняя настройку сервера, необходимо ограничиваться минимально допустимым уровнем маскировки адресов. В большинстве случаев конфигурация, установленная по умолчанию, позволяет Postfix выполнять свои функции, иногда приходится лишь скорректировать значение myorigin. Опция masquerade_domains в основном применяется в тех случаях, когда сервер принимает для передачи письма, которые уже были обработаны почтовым сервером, выполняющимся в системе Linux или UNIX. Средства преобразования адресов воздействуют не только на заголовок From:, они также затрагивают содержимое заголовка Received:. Многие администраторы неохотно используют данные средства, но в ряде случаев они могут быть очень полезны, особенно если ваши программы требуют, чтобы имена и адреса в поле From: были представлены в специальном формате.