![]() | |||||||||
24.7. SMTP через UUCPНастройка поставляемого с FreeBSD sendmail предназначена для сайтов, подключенных к интернет непосредственно. Сайты, осуществляющие обмен почтой через UUCP, должны использовать другой файл настройки sendmail. Редактирование /etc/mail/sendmail.cf вручную это сложная задача. sendmail версии 8 генерирует файлы настройки через препроцессор m4(1), реально настройка выполняется на более высоком уровне абстракции. Файлы настройки m4(1) можно найти в /usr/share/sendmail/cf. Файл README в каталоге cf содержит введение в основы настройки m4(1). Лучшим способом настройки поддержки передачи по UUCP является использование возможности mailertable. При этом создается база данных, которая помогает sendmail решать вопросы маршрутизации. Во-первых, создайте файл .mc. В каталоге /usr/share/sendmail/cf/cf находятся несколько примеров. Возьмем для примера имя файла foo.mc. Все, что потребуется для преобразования его в sendmail.cf, это: # cd /etc/mail # make foo.cf # cp foo.cf /etc/mail/sendmail.cf Типичный .mc файл может выглядеть примерно так: VERSIONID(`Your version number') OSTYPE(bsd4.4) FEATURE(accept_unresolvable_domains) FEATURE(nocanonify) FEATURE(mailertable, `hash -o /etc/mail/mailertable') define(`UUCP_RELAY', your.uucp.relay) define(`UUCP_MAX_SIZE', 200000) define(`confDONT_PROBE_INTERFACES') MAILER(local) MAILER(smtp) MAILER(uucp) Cw your.alias.host.name Cw youruucpnodename.UUCP Строки, содержащие accept_unresolvable_domains, nocanonify, и confDONT_PROBE_INTERFACES, предотвратят использование DNS для доставки почты. Пункт UUCP_RELAY необходим для поддержки доставки по UUCP. Просто поместите сюда имя хоста в интернет, способного работать с .UUCP адресами псевдо-доменов; скорее всего, вы введете сюда основной сервер пересылки почты провайдера. Как только вы сделаете это, потребуется файл /etc/mail/mailertable. Если вы используете для всей почты только одно внешнее соединение, подойдет следующий файл: # # makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable . uucp-dom:your.uucp.relay Более сложный пример может выглядеть так: # # makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable # horus.interface-business.de uucp-dom:horus .interface-business.de uucp-dom:if-bus interface-business.de uucp-dom:if-bus .heep.sax.de smtp8:%1 horus.UUCP uucp-dom:horus if-bus.UUCP uucp-dom:if-bus . uucp-dom: В первых трех строках обрабатываются специальные случаи, когда почта для домена должна отправляться не на маршрут по умолчанию, а на ближайшее соединение UUCP для сокращения пути доставки. Следующая строка обрабатывает почту, которая может быть доставлена по SMTP для локального Ethernet домена. Наконец, определены маршруты UUCP в нотации псевдо-доменов .UUCP, для включения перезаписи правил по умолчанию правилом uucp-neighbor !recipient. Последняя строка всегда содержит одиночную точку, означающую ''все остальное'', с отправкой через UUCP, являющимся универсальным почтовым шлюзом. Все имена узлов после ключевого слова uucp-dom: должны представлять существующие маршруты UUCP, проверить их можно с помощью команды uuname. Напоминаем, что этот файл должен быть преобразован в базу данных DBM перед использованием. Командную строку для этой задачи лучше всего поместить в качестве комментария в верхней части файла mailertable. Всегда выполняйте эту команду после правки файла mailertable. И наконец: если вы не уверены, что некоторые отдельные почтовые маршруты будут работать, запомните параметр sendmail % sendmail -bt ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter <ruleset> <address> > 3,0 foo@example.com canonify input: foo @ example . com ... parse returns: $# uucp-dom $@ your.uucp.relay $: foo < @ example . com . > > ^D
Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ | |||||||||
2008 © osinf.ru, при публикации активная ссылка обязательна. |