Файл: Алексей Старовойтов СанктПетербург бхвпетербург 2006 удк 681 06 ббк 32. 973. 202 С77.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 04.12.2023
Просмотров: 194
Скачиваний: 3
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Ãëàâà 11. Ñëóæáû DNS è DHCP
235
адреса DNS-серверов;
адреса WINS-серверов;
адреса шлюзов.
Существует множество других параметров, которые настраиваются при по- мощи DNS, однако они используются крайне редко, так что о них говорить не имеет смысла.
Работа протокола DHCP выглядит следующим образом (рис. 11.7).
Ðèñ. 11.7. Ñòàäèè ïðîöåññà âûäåëåíèÿ IP-àäðåñà
DHCP-клиент посылает широковещательный запрос DCHPISCOVER, кото- рый принимают все DHCP-серверы.
Все DHCP-серверы посылают ответ DHCPOFFER клиенту, запросившему сервис DHCP.
Клиент рассматривает DHCPOFFER в порядке их поступления.
Ненужные клиент отклоняет посылкой DHCPDECLINE.
Принятие клиент подтверждает посылкой DHCPREQUEST (одному из сер- веров).
Тот сервер, услуги которого приняты, посылает DHCPPACK.
Информация принимается и обрабатывается клиентом.
11.7. Ôàéë íàñòðîåê dhcpd
è èõ ïàðàìåòðû
Файл конфигураций DHCP /etc/dhcpd.conf состоит из нескольких разделов.
Каждый из его разделов отвечает за свою область. Параметры в глобальной секции справедливы для всех разделов.
Если вы изменяли файл конфигурации, то для того, чтобы система считала его, и изменения вступили в силу, необходимо перезапустить сервер.
236
×àñòü III. Linux-ñåðâåð ñâîèìè ðóêàìè
После начала работы DHCP-сервер начинает выделять IP-адреса клиентам.
Выделенные адреса записываются в файл /var/dhcpd/dhcp.leases (в принци- пе, он может располагаться и в другом месте).
Запись в файл dhcp.leases идет до тех пор, пока его размер не достигнет ука- занной величины. Тогда делается копия файла dhcp.leases и создается новый файл dhcp.leases, но уже без устаревшей информации.
В принципе, DHCP-сервер достаточно прост в настройке. Здесь мы приво- дим только основные параметры, позволяющие настроить несложную кон- фигурацию. Если у вас возникла более сложная ситуация, и данных этой книги не достаточно, обращайтесь к страницам справочного руководства.
Используйте для этого команду man.
Ãëîáàëüíûå ïàðàìåòðû
Эти параметры относятся ко всем секциям файла dhcp.conf (листинг 11.6).
Большинство параметров начинается со слова option
Ëèñòèíã 11.6. Ôàéë /etc/dhcpd.conf (ôðàãìåíò)
; Идентификация сервера server-identifier dhcp.samba;
; Имя домена, обратите внимание, точки в конце нет option domain-name samba;
; имя сервиса option domain-name-servers dhcp.samba;
; Маска подсети option sub-netmask 255.255.255.0;
; Широковещательный адрес option boardcast-address 192.168.0.255;
; Шлюз по умолчанию option routers 192.168.0.12;
; Адрес сервера netBios указывает на то, что обслуживаются клиенты,
; имеющие ОС windows option netbios-name-servers 192.168.0.5
; Время лизинга адреса по умолчанию, в секундах (10 lytq) default-lease-time 864000;
; Максимальное время лизинга адреса, в секундах (30 дней — 1 месяц) max-lease-time 2592000;
Ãëàâà 11. Ñëóæáû DNS è DHCP
237
Если опции содержат несколько параметров, то они перечисляются в по- рядке важности. Строка всегда заканчивается знаком точки с запятой. Про- белы и символы табуляции игнорируются демоном при чтении файла. Сде- лано это для красоты оформления и удобства последующего чтения файла конфигурации.
Îïöèÿ subnet
Опция subnet присутствует в любом конфигурационном файле dhcp.conf и представляет собой описание подсети (листинг 11.7). Эта опция указывает демону, какая подсеть обслуживается, также здесь задается пул адресов, из которого сервер может выдавать IP-адреса в аренду. Если задать опции, описанные в глобальных параметрах, то локальные параметры их перекро- ют. Это очень удобно, поскольку можно задавать параметры, отличные от глобальных для какой-то отдельной секции.
Ëèñòèíã 11.7 Ôàéë /etc/dhcpd.conf (ôðàãìåíò)
Subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.6 192.168.0.145; range 192.168.0.150 192.168.0.199;
}
Îïöèÿ shared network
Опция shared network позволяет сгруппировать две или несколько подсетей с целью совместного использования (листинг 11.8) и используется для раз- биения больших сетей на подсети. В нашем случае эту опцию вряд ли при- дется использовать. Для каждой из подсетей можно задавать отдельно пара- метры, например: маршрутизатор по умолчанию, время лизинга или любой другой.
Ëèñòèíã 11.8. Ôàéë /etc/dhcpd.conf (ôðàãìåíò) shared-network OOO-fortuna-sm {
Subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.6 192.168.0.145; range 192.168.0.150 192.168.0.199;
}
}
238
×àñòü III. Linux-ñåðâåð ñâîèìè ðóêàìè
11.8. Óñòàíîâêà DHCP-ñåðâåðà.
Ñâÿçü DNS è DHCP
Перед установкой DHCP-сервера важно понять следующее. Пока адреса статичны (задаются администратором при настройке сети, каждой машине свой IP-адрес), то все нормально, важно только поддерживать файлы зон
DNS в актуальном состоянии. Но как только распределение IP-адресов пе- рекладывается на плечи DHCP-сервера, то, скорее всего, IP-адрес компью- тера будет меняться, поскольку время лизинга IP-адреса ограничено. Это приведет к несоответствию реальных адресов и тех, что закреплены за узла- ми в базе данных DNS.
Выхода из ситуации два. Первый состоит в том, чтобы конкретной машине выделялся конкретный IP-адрес. Делается это на основе МАC-адреса сете- вой карты. Второй состоит в том, чтобы DHCP сервер вносил изменения в базу данных DNS.
Недостаток первого способа в том, что для каждого подключения необхо- димо в конфигурационном файле DCHP-сервера вести отдельную запись, причем эта запись будет меняться при замене сетевой карты.
Недостаток второго состоит в относительной сложности (для начинающего пользователя) установки и настройки DCHP-сервера.
Возможно, именно эти обстоятельства, а также то, что объективных причин для использования DHCP-сервера в небольших сетях мало, привели к тому, что DHCP-сервер по умолчанию не устанавливается.
Мы рассмотрим оба способа настройки DHCP-сервера. Начнем с того спо- соба, по которому компьютеру выделятся жестко заданные IP-адреса. В со- став ASPLinux Server входит DHCP-сервер второй версии, который по умолчанию не поддерживает обмена данных с DNS. На этапе установки мы не установили DHCP-сервер. Поэтому нам его предстоит установить. Возь- мите файл dhcp-2.0pl5-8.i386.rpm со второго диска ASPLinux, скопируйте его во временный каталог и дайте команду: rpm –i dhcp-2.0pl5-8.i386.rpm
Все, пакет установлен. Теперь создаем простенький файл конфигурации.
Выделение жестко заданных IP-адресов достигается использованием опции host в разделе subnet. В этом случае изменение IP-адресов, выделяемых узлу, осуществляется уже в файлах настроек DNS. Соответственно, для каждого узла необходимо иметь отдельную запись в файлах конфигурации DNS
(листинг 11.9).
Ëèñòèíã 11.9. Ôàéë /etc/dhcpd.conf äëÿ äîìåíà samba option domain-name-servers 192.168.0.5; # Адрес DNS-сервера option domain-name "samba"; #Имя домена
Ãëàâà 11. Ñëóæáû DNS è DHCP
239 shared-network OOO-fortuna-sm {
Subnet 192.168.0.0 netmask 255.255.255.0
{ range 192.168.0.6 192.168.0.145; range 192.168.0.150 192.168.0.199; host kb1 { hardware ethernet 04:ee:17:98:f5:87; fixed-address kb1.samba;
}
# и так далее, для каждой машины в сети
# МАC-адрес сетевой карты можно взять из
# документации на карту или проанализировав log
# DHCP-сервера.
}
}
Начиная с версии 3.0, в пакете DHCP реализовано обновление для DNS- сервера. Итак, вам потребуется скачать свежую версию DHCP-сервера по адресу http://www.isc.org/products/DHCP/. Объем дистрибутива составляет порядка 1 Мбайт. После того как скачали, ее нужно установить. Для этого выполняются следующие действия:
1. Создадим специальный каталог, куда скопируем архив.
2. Распакуем архив, для чего, войдя в каталог, выполним: tar xvfz dhcp-3.0pll.tar.gz
3. Перейдем во вновь созданный программой распаковки каталог.
4. Выполним ./configure.
5. Далее собираем пакет командой make.
6. Инсталлируем пакет командой make install.
Если команду make система не распознала, значит, вам необходимо установить пакет gcc-2.96-113asp.i386.rpm. Устанавливаем уже знакомым нам методом: rpm –i gcc-2.96-113asp.i386.rpm.
Обновлять DNS-сервер нет необходимости, так как он достаточно свежей версии. Теперь собственно к настройке связи DNS и DHCP-сервера. Пер- вым делом создаем секретный ключ для того, чтобы серверы доверяли друг другу. Для DNS-сервера 9-й версии делаем это командой: dnssec-keygen -a HMAC-MD5 -b 128 -n # USER DHCP_UPDATER
После того как вы выполните эту команду, в текущем каталоге появится файл, он и будет содержать этот секретный ключ.
Затем в глобальные параметры dhcpd.conf добавляем: ddns-update-style interim;
240
×àñòü III. Linux-ñåðâåð ñâîèìè ðóêàìè key DHCP_UPDATER {
Algorithm: 157 (HMAC_MD5);
Key: s4e6lkdZx70vKpAUPHs1Zg== }
В файл named.conf добавляем: key DHCP_UPDATER {
Algorithm: 157 (HMAC_MD5);
Key: s4e6lkdZx70vKpAUPHs1Zg==};
Возможен и другой вариант, просто добавляем в dhcpd.conf: ddns-update-style ad-hoc;
Выбор одного из трех вариантов за вами. Но на первых порах лучше отка- заться от использования DHCP-сервера. Когда придет опыт, тогда и на- строите.
11.9. Çàïóñê ñëóæá DNS è DHCP
В главе 10 мы обсуждали, как настроить автоматический запуск сервисов на примере Samba. Здесь ситуация в точности такая же. Мы можем настроить автоматический запуск сервисов путем непосредственного редактирования файлов в каталоге /etc/rc.d/rc3.d либо через Webmin (вкладка Bootup and
Shotdown).
Начнем с DNS-сервера. Переименовываем /etc/rc.d/rc3.d/K45named в
/etc/rc.d/rc3.d/S55named. Заголовок файла /etc/rc.d/init.d/named заменяем:
#!/bin/bash
#
# named This shell script takes care of starting and stopping
# named (BIND DNS server).
#
# chkconfig: 3 55 45
Теперь DHCP-сервер: переименовываем /etc/rc.d/rc3.d/K35dhcpd в
/etc/rc.d/rc3.d/S65dhcpd. Заголовок файла /etc/rc.d/init.d/dhcpd заменяем:
#!/bin/sh
#
# dhcpd This shell script takes care of starting and stopping
# dhcpd.
#
# chkconfig: 3 65 35
# description: dhcpd provide access to Dynamic Host Control Protocol
На вкладке System щелкнем по Bootup and Shootdown и по имени соответст- вующего процесса: для DNS-сервера это — named; для DHCP-сервера это — dhcpd. Отвечаем Start at boot time? — Yes и сохраняем Save.
Ãëàâà 11. Ñëóæáû DNS è DHCP
241
На рис. 11.8 показана операция для DHCP, для DNS она аналогична.
Ðèñ. 11.8. Íàñòðîéêà çàïóñêà dhcpd
11.10. Íàñòðîéêà
êëèåíòñêîé ÷àñòè Windows 98
Итак, в предыдущих разделах мы рассмотрели настройку серверов DHCP и
DNS, теперь настало время настроить клиентскую часть операционных систем.
1. Начнем с настройки службы DNS (рис. 11.9).
2. На рабочем столе правой кнопкой мыши щелкнем по значку сетевого окружения.
3. Выбираем пункт Свойства.
4. В открывшемся окне вбираем связку TCP/IP — Сетевая карта.
5. Щелкаем по кнопке Свойства.
6. В открывшемся окне выбираем включить DNS.
7. Если хотите настроить работу компьютера с DHCP-сервером, то на вкладке IP-адрес выберите Получить IP-адрес автоматически.
8. Вводим имя локального компьютера, его домен и адрес DNS. Жмем ОК.
9. Перезагружаем машину, чтобы изменения вошли в силу.
242
×àñòü III. Linux-ñåðâåð ñâîèìè ðóêàìè
Ðèñ. 11.9. Íàñòðîéêà DNS äëÿ Windows 98 11.11. Íàñòðîéêà êëèåíòñêîé ÷àñòè
Windows 2000
Настройка в Windows 2000 ничуть не сложнее.
1. Последовательно выбираем: Пуск | Настройка | Сеть и удаленный доступ к сети.
2. На значке Подключение по локальной сети нажимаем правую кнопку мыши и выбираем пункт Свойства.
В окне Подключение по локальной сети — Свойства выбираем строку Про- токол TCP/IP.
Нажимаем кнопу Свойства.
В открывшемся окне свойств протокола TCP/IP выставляем адрес предпо- читаемого DNS-сервера (рис. 11.10).
Ãëàâà 11. Ñëóæáû DNS è DHCP
243
Ðèñ. 11.10. Íàñòðîéêà DNS â Windows 2000
Ãëàâà 12
Çàïóñê Apache è Webmin
12.1. Ïî÷åìó Apache
Стремительное развитие Интернета привело к тому, что сегодня деятель- ность любого предприятия немыслима без использования технологий гло- бальной сети. Одна из самых известных и широко используемых техноло- гий — это служба WWW (World Wide Web — всемирная паутина). В основе ее работы лежит протокол HTTP (Hyper Text Transfer Protocol — протокол передачи гипертекста). Это протокол семейства TCP/IP. Протокол передачи гипертекста позволяет передавать связанные между собой документы слож- ной структуры. В состав документа могут входить изображения, анимация, звуковые фрагменты и др.
HTTP — это клиент-серверный протокол. Нажав кнопкой мыши в том или ином месте экрана, вы посылаете запросы удаленным серверам, которые отвечают, пересылая информацию. Согласно стандарту, протокол HTTP
"слушает" порт 80. На стороне пользователя запрос формирует браузер, спе- циальная программа, предназначенная для взаимодействия с web-серверами и преобразования информации к должному виду. Наиболее популярным
HTTP-сервером для пользователей Linux является, конечно, сервер Apache
(около 50 % от общего числа HTTP-серверов). Он входит в состав большин- ства дистрибутивов Linux. Характерной особенностью сервера является простота его установки и настройки, а также хорошие показатели произво- дительности и устойчивости (последнее во многом зависит от администра- тора). Полезным является и то, что при определенной настройке Apache способен создавать динамические страницы, то есть страницы, которые формируются на лету, в зависимости от запросов пользователя.
Apache относится к свободно распространяемому программному обеспече- нию, и при необходимости свежую версию можно скачать по адресу
Ãëàâà 12. Çàïóñê Apache è Webmin
245 www.apache.org (сайт некоммерческой организации Apache Software Founda- tion, целью которой является поддержка и обновление Apache).
Возвращаясь к тематике нашей книги, Apache используется в качестве Web- сервера, который можно организовать в локальной сети, чтобы своевремен- но выкладывать на общее обозрение документы, печатные формы, приказы и т. д. При помощи Apache также возможна организация корпоративной базы данных со стандартизованным интерфейсом доступа, причем этот под- ход становится достаточно популярным.
12.2. Îñíîâû êîíôèãóðèðîâàíèÿ Apache
Конфигурирование для Apache представляет собой редактирование файлов в каталоге /etc/httpd/conf/ или /usr/local/apache/conf. Файлов конфигурации несколько. В табл. 12.1 мы приведем их в последовательности обработки
Web-сервером.
Òàáëèöà 12.1. Íàçíà÷åíèå êîíôèãóðàöèîííûõ ôàéëîâ Apache
Íàèìåíîâàíèå Êîììåíòàðèé httpd.conf
Îñíîâíîé ôàéë êîíôèãóðàöèè Web-ñåðâåðà srm.conf
Ñîõðàíåí äëÿ ñîâìåñòèìîñòè ñ ïðåäûäóùèìè âåðñèÿìè, èñ-
ïîëüçîâàòü íå ðåêîìåíäóåòñÿ. Ðàíåå çäåñü ðàçìåùàëèñü
äèðåêòèâû îáðàáîòêè çàïðîñîâ è äåðåâî äîêóìåíòîâ Apache access.conf
Ðàíåå çäåñü õðàíèëèñü ñâåäåíèÿ î ïðàâàõ ïîëüçîâàòåëåé íà
äîñòóï ê êàòàëîãó, èñïîëüçîâàòü íå ðåêîìåíäóåòñÿ mime.types
Îïðåäåëÿåò mime äëÿ ðàçëè÷íûõ òèïîâ ôàéëîâ
Изменение конфигурационных файлов может быть осуществлено либо пу- тем непосредственного редактирования файлов, либо при помощи утилиты упрощенного администрирования Webmin.
12.3. Áàçîâûå ïàðàìåòðû,
èñïîëüçóåìûå
ïðè íàñòðîéêå Apache
Директивы Apache представлены в табл. 12.2.
246
×àñòü III. Linux-ñåðâåð ñâîèìè ðóêàìè
Òàáëèöà 12.2. Íàçíà÷åíèå äèðåêòèâ Apache
Íàèìåíîâàíèå Êîììåíòàðèé
ServerRoot
Íà÷àëüíûé êàòàëîã ñåðâåðà, çäåñü ðàñïîëîæåí ôàéë äåìîíà httpd
BindAddress
IP-àäðåñ ñåðâåðà, ïðèíèìàåò ñëåäóþùèå çíà÷åíèÿ:
* — îòâå÷àòü íà âñå àäðåñà;
123.123.123.123 — îòâå÷àòü òîëüêî íà ýòîò àäðåñ; name.domen — îòâå÷àòü íà IP-àäðåñ èìåíè
Port
Ïî óìîë÷àíèþ 80. Ïîñêîëüêó ýòî ñòàíäàðòíîå çíà÷åíèå, òî
åãî ëó÷øå íå èçìåíÿòü. Íå ñòîèò äóìàòü, ÷òî íåñòàíäàðòíûé
íîìåð ìîæåò ñëóæèòü çàùèòîé îò âçëîìà. Ñêàíåðû ïîðòîâ
äîñòàòî÷íî áûñòðî íàõîäÿò âñå îòêðûòûå ïîðòû
ServerName
Çàäàåò èìÿ ñåðâåðà, äîëæíî ñîâïàäàòü ñ äîìåííûì èìåíåì
êîìïüþòåðà, ïîñêîëüêó èñïîëüçóåòñÿ â îáìåíå äàííûìè ìå-
æäó êëèåíòîì è ñåðâåðîì
ServerAdmin
Ýëåêòðîííûé àäðåñ àäìèíèñòðàòîðà ñåðâåðà, âûäàâàåìûé
ïîëüçîâàòåëÿì
User, Group
Îïðåäåëÿþò ïîëüçîâàòåëÿ è ãðóïïó, îò èìåíè êîòîðîé áóäåò
ðàáîòàòü ñåðâåð. Ïðè íàñòðîéêå èëè îòëàäêå ñåðâåðà öåëå-
ñîîáðàçíåå çàïóñêàòü åãî ñ ïðèâèëåãèÿìè root, ïîñëå îòëàä-
êè ñåðâåðó íàçíà÷àåòñÿ ïîëüçîâàòåëü è ãðóïïà ñ îãðàíè÷åí-
íûìè ïðàâàìè. Ëó÷øå äëÿ ýòèõ öåëåé ñîçäàâàòü îòäåëüíîãî
ïîëüçîâàòåëÿ èëè ãðóïïó
Maxclients
Îïðåäåëÿåò ìàêñèìàëüíîå ÷èñëî êëèåíòîâ, ïîäêëþ÷åííûõ ê
ñåðâåðó. Íåîáõîäèìî ïîìíèòü, ÷òî îäèí ñåàíñ, îòêðûòûé
ïîëüçîâàòåëåì íà HTTP-ñåðâåðå, îòíèìàåò ó íåãî ïîðÿäêà
20 Ìáàéò îïåðàòèâíîé ïàìÿòè. Äëÿ ñåðâåðîâ èñïîëüçîâàíèå
ïàðàìåòðà îáÿçàòåëüíî
KeepActive
Ïîääåðæêà ïîñòîÿííîãî ñîåäèíåíèÿ ñ êëèåíòîì. Ïîçâîëÿåò
ñîêðàòèòü òðàôèê çà ñ÷åò ýêîíîìèè íà îòêðûòèè è çàêðûòèè
ñîåäèíåíèÿ, îäíàêî ñíèæàåò áåçîïàñíîñòü ñåðâåðà
ServerAdmin
Àäðåñ ýëåêòðîííîé ïî÷òû àäìèíèñòðàòîðà ñåðâåðà. Íàïðè-
ìåð, apache@mail.samba
DocumentRoot
Ïóòü ê ãëàâíîìó äåðåâó êàòàëîãîâ ñåðâåðà, îòêðûòîìó äëÿ
ïîëüçîâàòåëåé ñåðâåðà. Ïðè îòêðûòèè ïîëüçîâàòåëÿì äîñòó-
ïà ê ôàéëàì íàäî áûòü âíèìàòåëüíûì è ïðîâåðèòü, ÷òîáû â
îòêðûòûõ êàòàëîãàõ íå áûëî êîíôèäåíöèàëüíîé èíôîðìàöèè
è ññûëîê íà äðóãèå çàêðûòûå êàòàëîãè