Опубликован: 21.11.2006 | Доступ: свободный | Студентов: 1669 / 116 | Оценка: 4.09 / 4.00 | Длительность: 38:34:00
Лекция 17:

Почтовые псевдонимы и преобразование адресов

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >

Каждый пользователь должен описываться в отдельной строке. Формат записи в таблице виртуальных пользователей следующий:

virtaddress realaddress,

где virtaddress — адрес виртуального пользователя, для которого sendmail будет принимать сообщения, а realaddress — его реальный почтовый адрес, на который sendmail будет пересылать принятые сообщения. Эти два адреса в строке таблицы должны разделяться символом табуляции (клавиша Tab ). В листинге 17.3 представлен пример таблицы виртуальных пользователей.

1 frank@smallorg.org frank@spoke1.smallorg.org
2 melanie@smallorg.org melanie@spoke1.smallorg.org
3 haley@smallorg.org haley@spoke2.smallorg.org
4 riley@smallorg.org riley@spoke2.smallorg. org
5 katie@smallorg.org katie@spoke3.smallorg. org
6 jessicaiasmallorg.org jessica@spoke3.smallorg.org
7 rich@smallorg.org rich
8 barbara@smallorg.org barbara
Листинг 17.3. Пример файла /etc/virtusertable

В строках 1 и 2 листинга 17.3 описаны пользователи, которые работают с электронной почтой через сервер spoke1.smallorg.org. Таким образом, когда центральный почтовый сервер получает сообщение на адрес frank@smallorg.org, он автоматически пересылает его на frank@spoke1.smallorg.org. То же самое происходит в строках 3–4 — пользователи сервера spoke2.smallorg.org получают почту из Internet через центральный почтовый сервер hub.smallorg.org. Таким же образом обслуживаются и остальные вспомогательные почтовые серверы в локальной сети. При создании новой учетной записи на одном из вспомогательных серверов необходимо добавлять соответствующую строку в таблицу виртуальных пользователей. Помните также, что на двух вспомогательных почтовых серверах нельзя использовать одинаковые имена пользователей.

Строки 7 и 8 немного отличаются от предыдущих. В них описаны пользователи центрального почтового сервера hub.smallorg.org. Дело в том, что по умолчанию, если имя пользователя не указано в таблице виртуальных пользователей, программа sendmail предполагает, что она имеет дело с пользователем на локальном сервере. Следовательно, строки 7 и 8 можно было бы опустить, но иногда для учета пользователей их желательно указывать.

После создания файла /etc/virtusertable его необходимо преобразовать в формат хешированной базы данных, понятный программе sendmail. Для этого воспользуйтесь программой makemap. Формат команды на запуск makemap следующий:

makemap hash /etc/virtusertable < /etc/virtusertable

Возможно, он покажется вам несколько необычным, но именно таким образом из текстового файла /etc/virtusertable программа makemap создает файл /etc/virtusertable.db. При внесении каких-либо изменений в таблицу виртуальных пользователей необходимо повторно запускать программу makemap.

Кроме пересылки сообщений на соответствующие вспомогательные почтовые серверы, таблица виртуальных пользователей может применяться и для других целей. В листинге 17.4 представлено несколько дополнительных записей, которые могут присутствовать в файле /etc/virtusertable.

1 rich@smallorg.org rich@othermail.com
2 @acct.smallorg. acct
3 baduser@smallorg.org error:nouser No such user
4 register@smallorg.org rich
5 officenews@smallorg.org officenews
6 @smallorg.org %1@neworg.org
Листинг 17.4. Дополнительные записи в /etc/virtusertable

В строках листинга 17.4 представлены все возможные варианты записей, поддерживаемых в таблице виртуальных пользователей. В строке 1 представлена запись, которая выполняет фактически ту же функцию, что и файл aliases, — пересылает сообщения на адрес электронной почты пользователя другого почтового сервера в сети Internet.

Запись в строке 2, вероятно, очень часто применяется вашим провайдером сети Internet. С ее помощью вся почта, адресованная определенному домену, направляется в один почтовый ящик на сервере. Этот способ обработки почты может быть весьма полезен, если необходимо поддерживать связь с удаленными филиалами офиса, которые соединяются с центральным почтовым сервером для получения почты на домен второго уровня acct.smallorg.org. В "Подключение почтового сервера к провайдеру Internet" подробно описан процесс рассылки сообщений из общего почтового ящика на главном сервере в индивидуальные ящики пользователей на удаленных серверах.

В строке 3 представлена еще одна полезная запись, применяемая в таблице виртуальных пользователей. Например, если необходимо принудительно выдать на определенный адрес электронной почты сообщение об ошибке, то это можно сделать прямо в таблице. В строке 4 представлена запись, благодаря которой почта, принятая на псевдоним, перенаправляется на реальную учетную запись пользователя локального почтового сервера.

В строке 5 представлена запись таблицы виртуальных пользователей, совмещающая функции почтовых псевдонимов со своими функциями. При создании псевдонима officenews, описанного в начале лекции, таблица виртуальных пользователей может перенаправлять на локальный псевдоним сообщения, посланные на этот адрес. И если в качестве локального псевдонима будет задан список адресов электронной почты в виде файла, то сообщение будет разослано каждому из них.

Запись в строке 6 представляет собой довольно редкий случай перенаправления сообщений электронной почты. Если по какой-либо причине возникает необходимость перенаправлять электронную почту для целого домена, то приведенная в строке 6 запись решает именно эту задачу. В этой записи все сообщения для домена smallorg.org будут перенаправлены в домен neworg.org. Имена пользователей при этом остаются неизменными.

Резюме

В этой лекции мы рассмотрели несколько дополнительных функций, присущих офисным системам электронной почты. Довольно часто в системе электронной почты возникает потребность создания временных учетных записей для специальных событий или для выполнения определенных задач. Так, программа sendmail позволяет использовать почтовые псевдонимы для перенаправления почтовых сообщений от несуществующего пользователя на действующий почтовый ящик. В файле /etc/aliases хранятся все псевдонимы для действующих почтовых ящиков. Для преобразования текcтового файла /etc/aliases в хешированную базу данных, к которой сможет обращаться программа sendmail, воспользуйтесь программой newaliases. При внесении каких-либо изменений в текстовую версию файла также необходимо запускать программу newaliases, с помощью которой эти изменения вносятся и в файл хешированной базы данных. Еще одна полезная функция программы sendmail — преобразование адресов электронной почты (маскарадинг). С его помощью несколько хостов могут использовать в обратных адресах сообщений одно и то же доменное имя. Для этого необходимо организовать центральный почтовый сервер и создать на нем таблицу виртуальных пользователей. С помощью таблицы виртуальных пользователей центральный почтовый сервер может доставлять сообщения, адресованные пользователям домена, в почтовые ящики на соответствующих вспомогательных почтовых серверах.

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >
Александр Андреев
Александр Андреев
Россия
Андрей Мальщуков
Андрей Мальщуков
Россия