Kniga-Online.club
» » » » Денис Колисниченко - Linux: Полное руководство

Денис Колисниченко - Linux: Полное руководство

Читать бесплатно Денис Колисниченко - Linux: Полное руководство. Жанр: Программное обеспечение издательство -, год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

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

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

[[email protected]] # 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.

Прежде чем приступить к настройке sendmail, вам необходимо правильно настроить DNS. Настройка сервера DNS подробно обсуждалась в главе 13. Необязательно настраивать сервер DNS на том же компьютере, где будет работать sendmail: достаточно будет указать DNS-сервера вашей сети в файле /etc/resolv.conf, чтобы система разрешения имен корректно работала. Впрочем, sendmail можно настроить для работы и без использования DNS, но этот вариант я рассматривать не буду.

14.1.1. Базовая настройка sendmail

Основным файлом конфигурации sendmail является sendmail.cf, расположенный в каталоге /etc/mail (в некоторых дистрибутивах — /etc, смотри rpm -ql sendmail). Об этом файле говорят, что он длиннее, чем лимузин у Билла Гейтса, и что его редактирование происходит в режиме «глаза боятся, руки делают». Если вы не верите мне, откройте этот файл, и вы убедитесь в этом. Редактировать данный файл вручную могут только профессионалы-администраторы или разработчики программы sendmail.

К счастью, базовую настройку sendmail можно выполнить при помощи графического конфигуратора netconf. К сожалению, этот конфигуратор (точнее, пакет linuxconf, в который он входит) в современные дистрибутивы включать перестали. Но не все потеряно: его можно скачать с сайта разработчика http://www.solucorp.qc.ca/linuxconf. Многие опытные пользователи Linux критически относятся к возможностям пакета linuxconf и предпочитают прямое редактирование конфигурационных файлов, но для новичка эти утилиты, несомненно, удобнее.

Запустите утилиту netconf из-под суперпользователя (рис. 14.2).

Рис. 14.2. Конфигуратор netconf

Выберите в меню Mail delivery system, затем Configure basic information. В поле Present your system as просто введите свое доменное имя. Затем обязательно отметьте флажок Accept email for ваш_домен (рис. 14.3).

Рис. 14.3. Основная конфигурация sendmail

Если вы этого не сделаете, через ваш сервер можно будет перенаправить сообщения на другой сервер — а это лишний трафик через вас, который вам совсем ни к чему. Когда-то даже существовал такой вид атаки на отказ через электронную почту: письмо от несуществующего пользователя [email protected] другому несуществующему пользователю [email protected] отправлялось через компьютер host.com, который позволял перенаправлять сообщения (не включив режим Accept email for host.com). Обратно шло сообщение о том, что адресат не существует, но и оно не могло быть доставлено по той же причине... возникала косвенная рекурсия, и сервер host.com падал.

В качестве протокола отправки сообщений (Mail gateway protocol) установите smtp. Этой информации уже вполне достаточно, чтобы ваш sendmail функционировал.

Теперь сделайте так, чтобы sendmail принимал почту только с разрешенных адресов. Для этого даже не нужно настраивать сам sendmail — достаточно только подправить файлы /etc/hosts.allow и /etc/hosts.deny. Например, для запрещения доступа всем узлам, кроме компьютеров вашей сети, в файл /etc/hosts.allow добавьте строку

192.168.1.

Здесь имеется в виду, что сеть имеет адрес 192.168.1.0 и маску 255.255.255.0. Точка в конце образца требует сравнивать с образцом первые группы цифр адреса узла. Подробнее о формате файлов hosts.allow и hosts.deny вы можете прочитать, введя команду man hosts.allow.

Теперь настала очередь POP3. После установки пакета imap у вас практически все настроено, т.е. я хочу сказать, что уже можно проверять конфигурацию. Перезапустите супердемон inetd (xinetd) и введите следующее:

Перейти на страницу:

Денис Колисниченко читать все книги автора по порядку

Денис Колисниченко - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


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

Отзывы читателей о книге Linux: Полное руководство, автор: Денис Колисниченко. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*