на использование ключа (листинги 13.8 и 13.9).
Листинг 13.8. Фрагмент файла named.conf первичного сервера DNS
key ns1-ns2 {
algorithm hmac-md5;
secret 'ms7dfts87Cjhj7FD91k7a3==';
};
# прописываем вторичный сервер DNS — 192.168.1.2:
server 192.168.1.2 {
keys { ns1-ns2; };
};
options {
# разрешаем передачу зоны вторичному серверу DNS
allow-transfer { 192.168.1.2; };
};
Листинг 13.9. Фрагмент файла named.conf вторичного сервера DNS
key ns1-ns2 {
algorithm hmac-md5;
secret 'ms7dfts87Cjhj7FD91k7a3==';
};
# прописываем первичный сервер DNS — 192.168.1.1:
server 192.168.1.1 {
keys { ns1-ns2; };
};
options {
# никому не передаем зону
allow-transfer { none };
};
Можно также настроить передачу зоны «по ключу». Для этого директива allow-transfer в файле конфигурации первичного сервера DNS должна выглядеть так:
allow-transfer { key ns1-ns2; };
Осталось только «спрятать» файлы конфигурации обоих серверов DNS от посторонних глаз — ведь они содержат ключи в открытом виде.
chmod 600 named.conf
Запустите сервис named. Теперь о его безопасности будет заботиться TSIG.
Глава 14
Почтовый сервер
Неискушенные пользователи обычно принимают за систему электронной почты ту программу, с помощью которой они читают и пишут сообщения (mail, pine, Netscape Messenger, MS Outlook Express). На самом деле эта система состоит из нескольких компонентов (рис. 14.1):
♦ пользовательские агенты — те самые mail, pine и т.п., реализующие интерфейс к системе пересылки почты;
♦ транспортный агент (MTA, Mail Transfer Agent), пересылающий сообщения с одного компьютера на другой;
♦ агент доставки, сортирующий почту и помещающий ее в ящики пользователей или другое хранилище сообщений;
♦ агент доступа, скачивающий доставленную почту из хранилища по протоколу POP или IMAP, и агент подачи, доставляющий письма от пользователей на сервер исходящих сообщений по протоколу SMTP. В качестве агента подачи может работать транспортный агент.
Рис. 14.1. Структура почтовой системы
При установке почтового сервера в сети организации или в любой другой компьютерной сети необходимо настраивать именно транспортный агент. Основными транспортными агентами пересылки почты на сегодняшний день являются sendmail, postfix и qmail. Кроме основной функции — пересылки сообщений электронной почты — каждый их них имеет собственные эксклюзивные возможности.
Старейшим транспортным агентом, фактическим стандартом, работавшим еще в самых ранних версиях UNIX, является sendmail. Разработчики qmail обратили особое внимание на обеспечение безопасности: до 1998 года реализация функций защиты в sendmail до такой степени оставляла желать лучшего, что в конференциях вообще не рекомендовалось ее использовать. Программа postfix считается проще других в настройке.
Я решительно предпочитаю sendmail, которая в настоящее время обеспечивает должный уровень безопасности и настраивается достаточно легко. В этой главе я объясню, как настроить sendmail для организации небольшого почтового сервера с использованием протокола SMTP. В качестве агента доставки я рассмотрю procmail, а в качестве агента доступа, работающего по протоколу POP3, — программу fetchmail. Для заинтересовавшихся я разместил на сайте http://dkws.narod.ru руководство по настройке qmail.
Вкратце напомню о протоколах SMTP и POP, которые будем конфигурировать:
♦ SMTP (Simple Mail Transfer Protocol) — сервис в сетях TCP/IP для передачи почтовых сообщений. Обычно для SMTP используется порт 25 (см. файл /etc/services).
♦ POP (Post Office Protocol) — используется для получения почты с сервера. Порт по умолчанию — 110 (для протокола POP3).
14.1. Установка и настройка sendmail
Программа sendmail устанавливается из пакета sendmail, входящего в состав Red Hat-совместимых дистрибутивов. Я использую пакет sendmail-8.11.0. Последнюю версию sendmail можно скачать по адресу www.sendmail.org.
Прежде чем приступить к настройке sendmail, вам необходимо правильно настроить DNS. Настройка сервера DNS подробно обсуждалась в главе 13. Необязательно настраивать сервер DNS на том же компьютере, где будет работать sendmail: достаточно будет указать DNS-сервера вашей сети в файле /etc/resolv.conf, чтобы система разрешения имен корректно работала. Впрочем, sendmail можно настроить для работы и без использования DNS, но этот вариант я рассматривать не буду.
