Опубликован: 21.11.2006 | Уровень: специалист | Доступ: платный
Лекция 17:

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

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

Итак, исходящее сообщение поступает от вспомогательного сервера на центральный почтовый сервер и далее, через сервер провайдера, в сеть Internet. А как же ведет себя входящее сообщение? Предположим, что запись в DNS, определяющая почтовый сервер для домена, указывает на сервер провайдера. Тот, в свою очередь, собирает почту для вашего домена и передает ее через определенные интервалы времени на центральный почтовый сервер вашего домена. Затем центральный почтовый сервер определяет, на какой из вспомогательных серверов нужно переслать пришедшие сообщения. На рис. 17.4 показана схема получения сообщения для пользователя на вспомогательном сервере.

Схема прохождения сообщения для пользователя на вспомогательном сервере (в данном случае сообщение утеряно)

Рис. 17.4. Схема прохождения сообщения для пользователя на вспомогательном сервере (в данном случае сообщение утеряно)

Если обратный адрес в сообщении указан как frank@spoke1.smallorg.org, то работа центрального сервера сильно упрощается. Однако в нашем случае (и в реальной жизни тоже) в сообщении указывается обратный адрес frank@smallorg.org. Центральный почтовый сервер ( hub.smallorg.org ) сконфигурирован для преобразования всех адресов к виду smallorg.org. Итак, центральный почтовый сервер при получении сообщения для пользователя frank решает, что домен smallorg.org достигнут, а этот пользователь является пользователем на сервере hub.smallorg.org. Очевидно, что такой пользователь на центральном сервере отсутствует, следовательно, сообщение будет возвращено отправителю из-за невозможности его доставки.

Для решения этой проблемы можно воспользоваться файлом aliases на центральном сервере. Если создать для пользователя frank псевдоним, который будет указывать на адрес frank@spoke1.smallorg.org, то сообщение будет доставлено на соответствующий почтовый сервер, откуда пользователь frank сможет его получить. Хотя такой способ имеет право на существование, все же он представляется не совсем правильным. Чаще в такой ситуации применяется специальная конфигурация программы sendmail — поддержка виртуальных хостов ( виртуальный хостинг ). С помощью этой настройки почта для пользователя frank будет пересылаться на соответствующий вспомогательный почтовый сервер и затем в почтовый ящик пользователя frank.

Виртуальный хостинг

Виртуальный хостинг позволяет программе sendmail обращаться к специальной таблице пользователей, в которой описываются способы перенаправления входящих сообщений. Эта таблица напоминает файл aliases, но является более универсальной. На рис. 17.5 представлена схема работы таблицы виртуальных пользователей.

Пересылка почты с помощью таблицы виртуальных пользователей

Рис. 17.5. Пересылка почты с помощью таблицы виртуальных пользователей

Сначала необходимо создать новый файл конфигурации для sendmail, где описывается центральный почтовый сервер. Для использования виртуального хостинга задайте в файле макросов настройку virtusertable. Это делается следующим образом:

FEATURE ('virtusertable',
'hash /etc/virtusertable')

После регенерации файла конфигурации sendmail с помощью макропроцессора m4 перезапустите на сервере программу sendmail.

Создайте таблицу виртуальных пользователей, в которой указывается, каким образом, пользователям будут пересылаться почтовые сообщения. Как и файл aliases, таблица виртуальных пользователей представляет собой текстовый файл, который необходимо преобразовать в файл хешированной базы данных.

Текстовая версия таблицы виртуальных пользователей содержится в файле /etc/virtusertable.

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >
Valentin Diduk
Valentin Diduk
Украина, одесса, кпи, 2010
Евгений Олабин
Евгений Олабин
Беларусь, Гродно