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

Установка и конфигурирование sendmail

Почтовый сервер с коммутируемым подключением к сети Internet

Третья типовая схемы включения почтового сервера на базе ОС Linux представляет собой подключение почтового сервера в режиме почтового шлюза к сети Internet через коммутируемое РРР-соединение. В этом случае почтовый сервер под управлением ОС Linux пересылает все сообщения, адресованные во внешний мир, на общий почтовый шлюз, или, как его еще называют, "интеллектуальный хост" (от англ. smart host — Прим. пер.). На рис. 11.5 представлена схема подключения почтового сервера к сети Internet с использованием коммутируемого соединения.

Подключение почтового сервера на базе ОС Linux к сети Internet по коммутируемой линии

Рис. 11.5. Подключение почтового сервера на базе ОС Linux к сети Internet по коммутируемой линии

Основная особенность такого подключения почтового сервера — наличие интеллектуального хоста, которому пересылаются все исходящие почтовые сообщения. Для организации работы по коммутируемой линии используется протокол IP, поэтому для пересылки сообщений на интеллектуальный хост вполне можно использовать протокол SMTP. В листинге 11.10 представлен пример файла макросов для такой конфигурации.

1 divert(-1)
2 divert(0)dnl
3 include('/usr/lib/sendmail-cf/m4/cf.m4')dnl
4 OSTYPE('linux')dnl
5
6 FEATURE('allmasquerade')dnl
7 FEATURE('masquerade_envelope')dnl
8 FEATURE('always_add_domain')dnl
9 FEATURE('virtusertable')dnl
10 FEATURE('local_procmail')dnl
11 FEATURE('access_db')dnl
12 FEATURE('blacklist_recipients')dnl
13
14 MASQUERADE_AS('smallorg.org')dnl
15
16 MAILER('smtp')dnl
17 MAILER('procmail')dnl
18
19 define('SMART_HOST', 'smtp:mail.isp.net')dnl
Листинг 11.10. Пример файла макросов для почтового сервера с подключением к сети Internet по коммутируемой линии

В строках 6–12 листинга 11.10 определены основные директивы, которые будут использоваться почтовым сервером на базе ОС Linux. В строках 6 и 7 программе sendmail указывается использовать механизм подстановки имен (маскарадинга), который определен для всех сообщений в строке 14. Строка 19 существенно отличается от предыдущего примера: Здесь, вместо пересылки сообщений непосредственно на хост-получатель, определяется интеллектуальный хост, на который будет поступать вся почта, адресованная во внешний мир. Таким образом, вся почта, адресованная вне локального домена, будет пересылаться с помощью протокола SMTP на хост mail.isp.net. Далее за доставку почты конечным пользователям полностью отвечает интеллектуальный хост. В листинге 11.11 представлены результаты тестирования файла конфигурации для подобного подключения.

1 [lizzy@shadrach lizzy]$ /usr/sbin/sendmail -bt -C test3.cf
2 ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
3 Enter <ruleset> <address>
4 > 3,0 rich@otherhost.org
5 rewrite: ruleset 3 input: rich @ otherhost . org
6 rewrite: ruleset 96 input: rich < @ otherhost . org >
7 rewrite: ruleset 96 returns: rich < @ otherhost . org >
8 rewrite: ruleset 3 returns: rich < @ otherhost . org >
9 rewrite: ruleset 0 input: rich < @ otherhost . org >
10 rewrite: ruleset 199 input: rich < @ otherhost . org >
11 rewrite: ruleset 199 returns: rich < @ otherhost . org >
12 rewrite: ruleset 98 input: rich < @ otherhost . org >
13 rewrite: ruleset 98 returns: rich < @ otherhost . org >
14 rewrite: ruleset 198 input: rich < @ otherhost . org >
15 rewrite: ruleset 95 input: < smtp : mail . isp . net > rich < @ otherhost . org >
16 rewrite: ruleset 95 returns: $# smtp $@ mail . isp . net $: rich < @ otherhost . org >
17 rewrite: ruleset 198 returns: $# smtp $@ mail . isp . net $: rich < @ otherhost . org >
18 rewrite: ruleset 0 returns: $# smtp $@ mail . isp . net $: rich < @ otherhost . org >
19 >
20 [lizzy@shadrach lizzy]$
Листинг 11.11. Пример файла конфигурации для почтового сервера с подключением к сети Internet через коммутируемое соединение

В строке 1 листинга 11.11 программа sendmail запускается в режиме тестирования нового файла конфигурации. В строке 4 производится отправка тестового сообщения пользователю на удаленном почтовом узле. После нескольких итераций в строке 18 можно видеть результаты выполнения теста — почтовое сообщение пересылается через хост mail.isp.net с помощью протокола SMTP, как и указано в файле конфигурации. Затем этот хост должен доставить сообщение на хост-получатель otherhost.org.

Valentin Diduk
Valentin Diduk
Украина, одесса, кпи, 2010
Евгений Олабин
Евгений Олабин
Беларусь, Гродно