Дерни за веревочку, дверца и откроется. (C) Бабушка
Автор - Paul Dunne. Перевел Владас Лапинскас.
В этой статье вы узнаете как использовать Линукс для почтовых нужд вашей организации.
.mc
для почтового сервера
sendmail.cf
/etc/aliases
/etc/sendmail.cf
вручную
paul@tiny1.demon.co.uk
Эта статья основана на двух моих предыдущих статьях по установке Линукса и конфигурации Линукса для доступа в Интернет:
1. Введение
В этой статье мы опишем, как сконфигурировать Линукс для работы в качестве
почтового сервера для локальной сети, что позволит рабочим станциям получать
и передавать почту без непосредственного контакта с внешним миром. Вы уже
должны знать, как установить Линукс и подключить его к Интернет: предыдущие
статьи этого цикла были посвящены этим вопросам.
2. Где взять и как скомпилировать Sendmail
Несмотря на то, что Sendmail поставляется уже откомпилированным и готовым к
работе практически во всех дистрибутивах Линукса, есть преимущества в том,
чтобы знать, как самому найти и установить Sendmail. Sendmail очень широко
распространен и, являясь весьма важной программой, привлекает пристальное
внимание хакеров. Регулярно появляются исправления, закрывающие новые
"дыры"
в плане безопасности использования Sendmail. Исправления доступны как патчи
(patches, заплаты) к исходному программному коду, поэтому вам нужны
исходники если вы хотите "идти в
ногу" с изменениями. Для обеспечения
оптимального уровня безопасности, скачайте исходники Sendmail с одного из
узлов, заслуживающих доверия, сконфигурируйте, откомпилируйте и установите
Sendmail самостоятельно
Есть страница, посвященная Sendmail (http://www.sendmail.org/)
, и много
"зеркал" этого узла с исходным кодом.
Разверните исходный код в директорию -- /usr/src/sendmail
-x.x.xx -- и
перейдите в поддиреторию /src
. Там вы найдете скрипт makesendmail который
сделает всю работу за вас. Конфигурацию легче осуществить в директории с
исходным кодом, до установки исполняемых и конфигурационных файлов.
3. Конфигурирование почтового сервера
3.1. Введение
Браться сразу за конфигурацию Sendmail весьма тяжело. Главный
конфигурационный файл, sendmail.cf
, разработан так, чтобы программа могла
легко его прочесть и понять; поэтому он кажется чем-то загадочным для
человека. (Язык, на котором написан этот файл, часто в шутку называют
птичьим :-) - Прим.Пер.) К счастью, эту задачу редко когда приходится
выполнять с начала и до конца.
Дистрибутив Sendmail включает в себя несколько простых примеров файла
sendmail.cf
, один из которых наверняка подойдет к вашей конфигурации с
минимальными изменениями; многие дистрибутивы Линукса содержат свои примеры
конфигурационного файла.
Восьмая версия Sendmail внесла значительное упрощение в процесс
конфигурации, перенося вмешательство администратора с непосредственного
редактирования конфигурационного файла на внесение изменений в макросы
m4(1)
, что легче и более понятно. Я буду пользоваться макросами m4 в этой
секции, в то время как в секции по конфигурации клиентов, которые
подключаются к нашему почтовому серверу, мы будет редактировать файл
/etc/sendmail.cf
непосредственно, так в последнем случае непосредственное
редактирование значительно проще, чем редактирование макросов m4
.
3.2. Создание конфигурации Sendmail
Аппарат конфигурирования Sendmail находится в поддиректории cf/
. Структура
этой поддиректории следующая:
[Заметка редактора: Таким образом, первая директория - это cf/m4
,
Создание конфигурации Sendmail вторая
cf/cf
, и так далее]
m4/
Директория содержит процедуры поддержки, и поэтому не должна меняться.
cf/
Сами конфигурационные файлы. Они имеют расширение .mc
и должны быть
обработаны программой m4
чтобы стать пригодными к использованию.
Результат работы программы должен иметь расширение .cf
.
ostype/
Определения, описывающие конкретный тип операционной системы. Обращения
к ним всегда должны быть через макрос OSTYPE в .mc
файле.
domain/
Определения, описывающие конкретный домен, обращения через макрос
DOMAIN в .mc
файле.
mailer/
Описание почтовых программ (mailers)
, обращения через макрос MAILER в
.mc
файле.
sh/
Файлы оболочки (shell files)
для построения .cf
файла из файла .mc
в поддиректории cf/.
feature/
Здесь содержаться разные особенности (features)
, которые вы, возможно,
захотите подключить. Обращения через макрос FEATURE.
hack/
Локальные хаки из Berkeley (родина Sendmail
), представляют не более чем
эвристический интерес, если таковой имеется.
siteconfig/
Конфигурация узла -- например, таблицы локально присоединенных узлов
UUCP.
3.3. Корневой файл
Базовый .mc
для почтового сервера.mc
файл формирует отправную точку для директив m4 которые
вызывают другие макро-файлы. Все определения в нашем базовом .mc
файле в
свою очередь, ссылаются на другие файлы .mc
. Таким образом, важен порядок:
придерживайтесь порядка, приведенного здесь.
VERSIONID(@(#)unixworld-online.mc 8.5 (Virtual Reality, Maan) 19/8/97) OSTYPE(linux) FEATURE(nouucp) MAILER(local) MAILER(smtp)
Ниже я объясню то, что приведено здесь. Для полной информации, посмотрите
файл README в поддиректории cf/.
Так же неплохое объяснение вы найдете в
UnixWorld Online Sendmail tutorial
.
Первая строка для информации, она подставляет строчку с номером версии в выходной файл, чтобы вы могли проследить изменения.
OSTYPE
Первый макрос определяет нашу операционную систему. Вы ДОЛЖНЫ определить операционную систему, иначе конфигурационный файл не будет работать. Для нас, операционная система - Линукс, поэтому мы используем файл в поддиректории ostype с именем linux.mc. (Макрос OSTYPE(linux) подставляет файл linux.mc - Прим. Пер.) Этот файл содержит такие вещи, как расположение файлов по умолчанию и другой, зависящий от операционной системы, материал. Вам нет нужды изменять этот файл.
FEATURE
nouucp
Единственная деталь (feature) это nouucp, которая говорит не делать
ничего специального с адресами uucp.
nullclient
Эта деталь может быть использована для того, что мы сделаем позже
вручную, то есть генерирует урезанный конфигурационный файл, который не
делает ничего, кроме перенаправления почты на центральный почтовый
сервер через локальную сеть при помощи протокола SMTP (SMTP - Simple
Mail Transfer Protocol - Простой протокол передачи почты). Аргументом
является имя этого сервера.
MAILER
Макрос MAILER использует макро-файлы для установки правил позволяющих использовать одну или более почтовых программ (mailer). Здесь мы вызываем определения для локальной почтовой программы (local mailer) и SMTP почтовой программы. Общее правило: помещайте определения MAILER последними в ваш .mc файл, и всегда помещайте MAILER(smtp) перед MAILER(uucp) -- некоторые определения изменяются, и почтовая программа SMTP изменяет определения UUCP
local
Локальная почтовая программа. Она вам нужна практически всегда,
единственным исключением является случай, когда вы ВСЮ почту
перенаправляете на другой сайт. Эта почтовая программа подключается
автоматически.
smtp
Почтовая программа протокола SMTP. Она не сможет найти хост за
интернет-шлюзом (gateway) и не поймет других тонкостей. Она
предполагает, что находится в мире, где у всех запущен сервер имен.
Этот файл определяет 4 почтовых программы: smtp для передачи по
обычному протоколу (старого стиля) SMTP на другие сервера, esmtp для
серверов, поддерживающих расширенный (extended) SMTP, smtp8 для работы
с серверами без конвертации 8-бит данных в MIME (по существу, вы
говорите этим, что знаете, что с другой стороны поймут 8-бит, даже если
они не говорят об этом явно), и relay для передачи на наш RELAY_HOST,
LUSER_RELAY, или MAILER_HUB.
3.4. Файл
Окончательный файл конфигурации Sendmail получается в результате работы
программы m4 с указанным выше файлом sendmail.cf
.mc
в качестве аргумента. Коммандная
строка будет выглядеть примерно так:
m4 ../m4/cf.m4 config.mc > config.cf
Где cf.m4
-- в директории ../m4
относительно локальной директории -- общий
набор макроопределений, который нужен всегда, а config.mc
- это файл
макросов, который мы разработали выше, и config.cf
- это результат работы
программы, конфигурационный файл Sendmail, который будет установлен как
/etc/sendmail.cf
. (Автор предполагает, что мы находимся в директории
cf/cf
-Прим.Пер.)
3.5. Установка Sendmail
После завершения конфигурации, введите как пользователь root комманду
pmake install
для установки новой программы Sendmail. (Замечание: это pmake, из 4.4BSD, а НЕ GNU версия make, которую использует Линукс). Конечно, вы должны сначала сохранить вашу старую версию программы, на случай, если вам придется "вернуться назад" к ней. Файлы, которые будут установлены, приведены ниже:
/usr/sbin/sendmail
Это сама исполняемая программа Sendmail. Это может быть символьный линк
на историческое расположения Sendmail, /usr/lib
, но
/usr/sbin/
в
настоящее время является правильным расположением.
/etc/sendmail.cf
Конфигурационный файл, который мы сгенерировали.
/usr/bin/newaliases
Это символьный линк на /usr/sbin/sendmail
. Когда программа вызывается
под этим именем, она перестраивает базу данных псевдонимов (aliases)
/var/spool/mqueue
Это директория, где хранится входящяя и выходящая почта, ожидающая
отправки. Она должна иметь права доступа 700, чтобы запретить
любопытным пользователям читать чужую почту.
/etc/aliases
Системный файл псевдонимов.
/usr/lib/sendmail.hf
Файл помощи (подсказки) для Sendmail.
/etc/sendmail.st
Этот опциональный файл может использоваться Sendmail для записи
статистики.
/usr/bin/mailq
Это так же символьный линк на /usr/sbin/sendmail
. Sendmail печатает
содержание почтовой очереди, когда вызывается под этим именем.
4. Использование
4.1. Запуск Sendmail при загрузке
Вероятно, вы захотите запускать демон (так в UNIX называется программа,
постоянно работающая как фоновый процесс - Прим. Пер.) Sendmail каждый раз
при загрузке машины. В Slackware это достигается добавлением строчек кода в
соответствующий rc
файл в директории /etc/rc.d
directory. Инсталляционная
процедура Slackware помещает эти строчки в файл /etc/rc.d/rc.M
. Код будет
выглядеть примерно так:
if [ -x /usr/sbin/sendmail ] echo "sendmail " /usr/sbin/sendmail -bd -q1h fi
Здесь происходит проверка, является ли файл исполняемым, затем выдается
сообщение на консоль о попытке запустить Sendmail, и вызывается Sendmail в
режиме демона (опция -bd
), с обработкой почтовой очереди каждый час (опция
-q1h
).
(В дистрибутивах Линукс RedHat, SuSE, и в других, которые придерживаются
стиля загрузки System V, для запуска Sendmail существует отдельный небольшой
скрипт в директории init.d
, называемый sendmail
,
sendmail.init
или
как-нибудь еще. Можно запустить Sendmail вручную, для этого надо исполнить
скрипт с параметром start
, или остановить уже работающий процесс, запустив
скрипт с параметром stop
. Чтобы автоматизировать запуск при загрузке,
необходимо создать правильные линки на скрипт в поддиректорияхrc2.d
и
rc3.d
- Прим. Пер.)
4.2. Почтовая очередь
Почтовая очередь живет в директории /var/spool/mqueue
по умолчанию. Каждое
почтовое сообщение содержится в 2 файлах, один называется dfXXXnnnnn
, другой
- qfXXXnnnnn
, где XXX
это 3-х буквенная последовательность букв, а nnnnn -
последовательность из 5 цифр, просто чтобы дать каждому сообщению уникальный
идентификатор. qf
или queue control file
(файл управления очередью)
содержит заголовок почтового сообщения и другую информацию, связанную с
обработкой письма, в то время как df
или data file
(файл данных) содержит
текст письма. Есть другие файлы, но они временные, и интересны только самому
Sendmail'у.
4.3. Регистрация
Sendmail использует утилиту UNIX syslogd(8) для регистрации своих действий в
log-файле. Обычно, утилита сконфигурирована так, чтобы записывать все
транзакции Sendmail'а в файл /var/log/maillog
, по умолчанию.
4.4. Безопасность
У Sendmail репутация кошмара в плане безопасности (Security nightmare), но
это в основном незаслуженно, особенно в отношении 8-й версии, которая решила
множество проблем, которые были сущим наказанием в предидущих версиях. На
самом деле, степень безопасности Sendmail в основном зависит от системного
администратора (от вас!) Некоторые специальные вопросы, на которые следует
обратить внимание:
5. Клиенты
Предоставление почтового сервиса другим машинам в сети может быть
осуществлено двумя путями. Первый - использовать SMTP для работы в качестве
почтового хаба (mail hub), который принимает почту из локальной сети от
имени других машин. Второй - это POP (от Post Office Protocol) сервис, где
локальные пользователи используют клиентское программное обеспечение своих
компьютеров для получения почты по протоколу POP3, и посылают почту по
протоколу SMTP на сервер.
6. Файл
Sendmail на почтовом сервере должен знать о пользователях в локальной сети.
В случае POP почтовых ящиков это достигается созданием обычного
пользователя. В случае клиентов под Линукс, собирающих почту самостоятельно
через Sendmail, надо добавить соответствующий псевдоним (/etc/aliases
alias
) в файл
/etc/aliases
. Например, в моей локальной сети, любая почта, приходящая на
почтовый сервер (tiny1.demon.co.uk
) для пользователя bob
пересылается по
адресу bob@donner.example.com
в моей локальной сети следующей строчкой в
файле /etc/aliases
:
bob: bob@donner.example.com
Простейший способ быть уверенным, что почта придет обратно по правильному адресу, это установить заголовок Reply-To во всей выходящей почте, указывающий на почтовый сервер, а не на машину клиента. Это можно сделать в настройках почтовой программы, а можно поручить Sendmail на Линукс-машине клиента.
Рекоммендую использовать на почтовом сервере опцию маскировки "masquerade", чтобы заголовки почтовых сообщений из вашей локальной сети перезаписывались заново так, как будто они посылаются непосредственно с почтового сервера.
Сначала, включим маскировку на сервере:
MASQUERADE_AS(mailhub.example.com)
где mailhub.example.com
это имя, под которым ваш почтовый сервер известен в
Интернет.
По умолчанию, маскируются только адреса самого почтового сервера. В нашем случае в этом мало полезного, так как мы желаем менять почту, приходящую от других машин в локальной сети при помощи почтового сервера, чтобы она выгладела так, как будто сам почтовый сервер послал эту почту. Для этого служит следующая строка:
MASQUERADE_DOMAIN(otherhost.example.com)
Любая почта, пришедшая от машины otherhost.example.com при пересылке будет
изменена таким образом, что у нее будет адрес MASQUERADE_AS. Имена машин
можно указывать списком через пробел, или держать лист в файле, в этом
случае строка изменится следующим образлм для использования файла
.mc
:
MASQUERADE_DOMAIN_FILE(filename)
6.1. Другие Линукс-машины
Есть 2 пути изменения конфигурации Sendmail для клиентов, которые направляют
всю свою выходящую почту на почтовый сервер. Первый - использовать
конфигурацию через m4 так, как мы конфигурировали почтовый сервер, и я
пробегусь через пример такой конфигурации.
Файл .mc
очень прост, только:
divert(0)dnl VERSIONID(@(#)dumbclient.mc 28/10/97) OSTYPE(linux) FEATURE(nullclient, mailhost)
где mailhost
это полное доменное имя (fully qualified domain name
) почтового
сервера, куда направляется вся почта.
Этот случай достаточно прост, чтобы файл /etc/sendmail.cf
еще можно было
понять, поэтому стоит рассмотреть файл, который мы получили после генерации.
Здесь нет места для полного разбора синтаксиса файла. Для полной картины, посмотрите незаменимую книгу Sendmail, опубликованную O'Reilly & Associates, которую можно со скидкой купить на Amazon books.
Файл разделен на секции, не для Sendmail, а для удобства чтения и объяснения.
Комманды Sendmail записываются обычно одной буквой, и должны быть в первой позиции строки (в самом начале строки). Между буквой, обозначающей комманду и аргументами нет пробелов и других разделителей.
Первая часть, Macros, показывает переменные (известные как "макросы" на языке Sendmail). Они определяются коммандой "D" (Define Macro). Все макросы объясняются комментариями -- мудрая практика, которая не должна ограничиваться рамками этого примера!
### Определяем макросы (1) # Имя почтового сервера DRwotan.example.com # Имя, под которым почтовый сервер известен остальному мир DHtiny1.demon.co.uk # Локальное официальное имя домена Dj$w # Имя нашего домена DDexample.com # Идентификация посылателя сообщений об ошибках DnMailer-Daemon # Как будет выглядеть строчка m4_changequote([,])"From"m4_changequote(`,') DlFrom $g $d # Буквы, разделяющие части адреса Do.:%@!^=/[] # Форма для адреса отправителя по умолчанию Dq<$g>
Вторая часть, Классы, предназначена для специальных типов переменных,
классов, которые могут иметь множественные значения. Буква комманды здесь
"C". Класс, который мы определим в этом примере - w, который содержит список
альтернативных имен нашего хоста (то есть тех, которые отличаются от полного
доменного имени, fully-qualified domain name
, или FQDN
).
### Определяем Классы (2) # Все возможные имена для локальной машины Cw localhost donner
Третья секция определяет опции Sendmail. Их можно задать в коммандной строке при вызове Sendmail, но их так много, что лучше их указать в конфигурационном файле.
# Способ доставки по умолчанию (фоновый) Odbackground # Права доступа на временные файлы -- 0600 для безопасной почты OF0600 # UID & GID по умолчанию Ou1 Og1 # Уровень, на котором ошибки пишутся в syslog OL9 # Ожидание SMTP ответа. (1h - один час) Or1h # По умолчанию сообщения в старом стиле OoTrue # Заменять неотквоченные (not quoted) пробелы на точку OB.
Четвертая часть определяет заголовки, которые должны появляться в любом почтовом сообщении. Это те заголовки, которые Sendmail добавит, если пользовательская почтовая программа не сделала этого ранее.
### Объявления Заголовков (4) HFrom: $q HReceived: by $j id $i; $b H?x?Full-Name: $?x$x$. H?D?Date: $a H?M?Message-Id: <$t.$i@$j>
Пятая часть - это набор установок приоритетов. Sendmail будет обрабатывать
почту в очереди в порядке убывания приоритета, начиная со специального
приоритета special-delivery
. Уровень приоритета устанавливается почтовыми
программами пользователей строкой заголовка Precedence:special-delivery
.
### Приоритеты (5) Pspecial-delivery=100 Pfirst-class=0 Plist=-30 Pbulk=-60 Pjunk=-100
Шестая секция определяет набор почтовых программ, которые будет использовать
Sendmail для доставки почты. Sendmail на самом деле транспортный агент для
почты, он не доставляет почту самостоятельно. Строки начинаются с заглавной
буквы "M". Почтовые программы local
и prog
обязательны. Реальная работа
в примере осуществляется специальной почтовой программой [ICP], которая
вызывает внутренние процедуры Sendmail, вместо внешней почтовой программы.
для доставки всей почты на "умный
хаб" - почтовый сервер с помощью SMTP.
### Определения агентов доставки почты (6) # Почтовая программа для доставки почты на почтовый сервер Mhub, P=[IPC], S=10, R=0, F=xmDFMuCX, A=IPC $h # Sendmail требует эти строки, но мы ими пользоваться не будем Mlocal, P=/bin/mail, S=0, R=0, F=lsDFMShP, A=deliver $u Mprog, P=/bin/sh, S=0, R=0, F=lsDFMeu, A=sh -c $u
Седьмая, и последняя секция - это сердце Sendmail, или наборы правил
(rule
sets
). Они определяют перезапись адресов. Основная идея заключается в том,
что есть 2 стороны, левая (LHS) и правая (RHS), левая преставляет собой
маску для входных строк, а правая представляет собой преобразования,
производимые в случае нахождения совпадения. LHS и RHS разделяются знаками
табуляции, комментарии в 3-й колонке. Вы можете узнать больше об этих
правилах из учебной статьи на Unixworld.
### Наборы правил (7) # S0 - выбор агента доставки почты S0 select delivery agent R@$+ $#error $: Нет имени пользователя R$+ $#hub $@$R $:$1 Перенаправить на почтовый сервер (хаб)# S3 - препроцессинг для всех наборов правил S3 preprocessing for all rule sets R$*<>$* $n handle <> Ошибочный адрес R$*<$*<$*>$*>$* $2<$3>$4 Вложенные скобки R$*<$*>$* $2 основной разбор по RFC822 # S10 - перезапись посылателя для хаба S10 rewrite the sender for the hub R$- $@$1@$H user -> user@hub R$-@$w $@$1@$H user@local -> user@hub R$-@$=w $@$1@$H user@othernames -> user@hub R$-@$=w.$D $@$1@$H user@domain -> user@hub # S1 - пустое правило (не используется) S1 dummy ruleset 1 (unused)
Для более подробной информации по конфигурационному файлу Sendmail смотрите
нашу статью Учебная статья по Sendmail .
6.2. Виндоуз
Прием почты с почтового сервера из-под Windows это простое использование
POP3 протокола для приема с POP3-сервера, который просто забирает почту из
стандартной UNIX директории для хранения почты, /var/spool/mail
. Сервис POP
должен быть установлен как часть стандарной установки Линукс. Если вы не
сделали этого, используйте pkgtool или что-либо другое для установки сервиса
с CD.
(Следует отметить, что использование POP протокола под Линукс так же очень
просто, как и под windows, хотя, возможно, не настолько мощно, как Sendmail.
Я, например, использую fetchmail как POP-клиент и pine как почтовую
программу, другая комбинация - Netscape, который одновременно и забирает
почту по POP и посылает по SMTP - Прим. Пер.)
В файле /etc/services
должны быть следующие строки:
pop-2 109/tcp # PostOffice V.2 pop-3 110/tcp # PostOffice V.3
Сервис будет запущен автоматически демоном inetd когда сервер получит запрос
на данный сервис. Такая обработка запроса устанавливается следующими
строчками в файле /etc/inetd.conf
:
pop-2 stream tcp nowait root /sbin/tcpd /usr/sbin/in.pop3d pop-3 stream tcp nowait root /sbin/tcpd /usr/sbin/in.pop3d
(Название POP3-демона может отличаться в вашем дистрибутиве, тогда окончания строчек будут соответственно другие - Прим. Пер.)
Для использования POP почты, каждый почтовый пользователь должен быть
"реальным" UNIX пользователем на почтовом сервере, а не просто строчкой в
файле /etc/aliases
. Лучше всего сделать невозможным использование UNIX -
аккаунта для вхождения на почтовый сервер, поставив звездочку * в поле
пароля в файле /etc/passwd
и указав поддельную оболочку, например
/bin/false
в последнем поле файла паролей. (Грубая ошибка автора! Если убрать пароль
пользователя, и поставить звездочку, то пользователь не сможет не только
логиниться, но и забирать почту - система просто не будет знать пароля для
предоставления доступа к почте. Лучше оставить пароль в покое и ограничиться
фиктивной оболочкой - Прим.Пер.)
Я использую Eudura Lite, которая свободно распространяется, и представляет
собой урезанную версию Eudora Pro. Это приятный почтовый клиент, доступный с
сервера Qualcomm. Установка заключается в простом указании почтового
сервера, имени пользователя и пароля. Один глюк, который я нашел - не все
опции сохраняются в файле EUDORA.INI. Например, мне пришлось изменить
UseWinSock=1
и UseDialup=0
отредактировав ini
файл, так как изменение
этих опций с помощью меню не имело эффекта.
7. Заключение
Таким образом, вы обладаете работающим почтовым сервером, который
предоставляет почтовый сервис в локальной сети.
8. Приложение: Редактирование
Скажем, у вас уже установлен Sendmail, например, при инсталляции Линукса. Вы
не хотите утруждать себя получением исходников Sendmail, конфигурацией m4
итд. И, хотя я не могу надеяться охватить все детали синтаксиса
конфигурационного файла Sendmail, я могу сказать минимум необходимого для
преобразования обычного /etc/sendmail.cf
вручнуюsendmail.cf
в такой, который вам нужен. Из-за
сложного синтаксиса файла, я приведу только то, что вы должны изменить.
В секции выше конфигурирование Линукс-клиента для локальной сети, я дал
больше подробностей, которых должно хватить, чтобы дать вам общее
представление о синтаксисе файла. Я подразумеваю, что у вас есть подходящий
файл sendmail.cf
на машине (из дистрибутива Линукс или исходников Sendmail).
Макрос ``w''
содержит другие имена, под которыми известен хост, за
исключением полного доменного имени. Например, если машина известна вашему
интернет-провайдеру как example1.com
, но в локальной сети как example2.com,
вы должны указать в макросе example2.com
. Вы можете указать
localhost
заодно.
Cwlocalhost example2.com
Макрос S
может содержать имя
"умного" почтового сервера, на который будет
отправляться вся не-локальная почта без лишнего шума. Некоторые узлы могут
доставлять почту в локальную сеть, но не могут искать хосты в Интернете с
помощью DNS. Для доставки почты в таком случае необходимо перенаправлять всю
не-локальную почту на "умный" хост (или "хорошо
соединенный" хост,
well-connected, то есть хост, который имеет доступ к Интернет, особенно к
DNS - Прим.Пер.). Например, клиенты Demon, интернет-провайдера в Англии,
должны использовать post.demon.co.uk
.
DSpost.demon.co.uk
Если вы сидите на SLIP или PPP - модемном линке, и используете систему dial-on-demand (звонок по запросу), например diald(8), вы вероятно не захотите, чтобы Sendmail моментально доставлял почту, поднимая и опуская линк каждый раз, с феноменальным влиянием на ваши телефонные счета. Чтобы заставить Sendmail доставлять почту только при реальной обработке почтовой очереди, установите способ доставки почты отсроченный, "deferred" :
O DeliveryMode=deferred
(Чтобы изменить периодичность обработки почтовой очереди, измените параметр, с которым запускается Sendmail при загрузке. Смотрите для этого соответствующий раздел статьи. - Прим. Пер.)
Это все изменения, которые вам необходимо сделать. Остальные параметры изменяют поведение Sendmail, но вполне подойдут к вашей машине без модификаций.