Чтение онлайн

ЖАНРЫ

Linux: Полное руководство

Аллен Питер В.

Шрифт:

Механизм TSIG очень эффективен при передаче информации о зоне, уведомлений об изменении зоны и рекурсивных сообщений. Согласитесь, проверка подписи надежнее, чем проверка IP-адреса. Злоумышленник может вывести из строя вторичный сервер DNS банальной атакой на отказ, и, пока администратор будет «поднимать» вторичный сервер, он заменит свой IP-адрес адресом вторичного сервера. При использовании TSIG задача злоумышленника значительно усложняется: ведь ему придется «подобрать» 128-битный MD5-ключ, а вероятность такого подбора близка к нулю.

Итак, приступим к настройке. Остановите сервис named.

Сгенерируйте общие ключи для каждой пары узлов. Общие

ключи используются при «общении» первичного и вторичного серверов DNS.

[root@dns] # dnssec-keygen -a hmac-md5 -b 128 -n HOST ns1-ns2 Kns1-ns2.+157+49406

Мы используем алгоритм HMAC-MD5, 128-битное шифрование, ns1-ns2 — это имя ключа. После выполнения этой команды будет создан файл

Kns1-ns2.+176+40946.private
. Откройте его в любом текстовом редакторе. Вы увидите примерно следующее:

Private-key-format: v1.2

Algorithm: 157 (HMAC_MD5)

Key: ms7dfts87Cjhj7FD91k7a3==

Ключ «ms7dfts87Cjhj7FD91k7a3==» и будет тем секретом, который будет передаваться между серверами. Запишите это значение на бумаге (которую потом нужно будет уничтожить) и удалите файлы

Kns1-ns2.+157+49406.key
и
Kns1-ns2.+157+49406.private
.

Добавьте в файлы конфигурации первичного и вторичного серверов DNS директивы, указывающие на использование ключа (листинги 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
.

Поделиться с друзьями: