zmej.org.ua - Памятки системного администратора.  zmej.org.ua - Памятки системного администратора.

Главная » FreeBSD

Вход на сайт

  • Запросить новый пароль

Навигация

  • Cisco
    • Cisco access-list
    • Аутентификация на Cisco
    • Обновление Cisco IOS
    • Привязка MAC-адресов к портам на Cisco Catalyst 2960
    • Списки доступа (Access list) ACL Cisco
  • FreeBSD
    • Colorize - подсвечивание ключевых слов
    • Munin — мониторинг сервера на основе FreeBSD
    • Postfix + Postgrey. Небольшой пример того, как можно бороться со спамом.
    • Roudcube. Установка и настройка.
    • VPN между FreeBSD и Windows. Установка mpd4.
    • Блокируем TeamViewer
    • Выполнение mount из-под прав обычного пользователя
    • Добавление базы и пользователя в MySQL
    • Как узнать серийный номер винчестера в FreeBSD
    • Модули Apache22 (Apache22 modules)
    • Мониторинг винтчестеров (HDD/жестких дисков) с помощью SMART (smartmontools)
    • Мониторинг загрузки канала (MRTG)
    • Мониторинг загрузки сетевых интерфейсов в реальном времени
    • Мониторинг нагрузки процессора (SNMP MRTG CPU Monitoring)
    • Настройка DNS сервера named
    • Настройка сервера времени NTP
    • Настройка фаервола (firewall ipfw) на ОС FreeBSD
    • Обновление FreeBSD. Краткий мануал.
    • Обновление портов (CVSup)
    • Обновление портов. Portupgrade.
    • Организация VPN между 3-мя офисами
    • Повышаем безопасность FreeBSD
    • Проблема после обновление SpamAssassin
    • Работа с .htaccess и .htpasswd
    • Скрипты
      • Блокировка перебора SSH (по 22му порту)
      • Создание архива базы - mysqldump
    • Тестирование MySQL
    • Управление дуплексным режимом и скоростью подключения к порту.
    • Установка MySQL сервера
    • Установка связки Apache22+php5+mysql5
    • Шейпер на ipfw
  • Подсказки по редактированию

Настройка DNS сервера named

Zmej —ср, 28/12/2011 - 16:21

 

Представим себе ситуацию, когда Вам необходимо поднять свой собственный ДНС сервер. К примеру, Вам необходимо поднять свой домен, а платить провайдерам Вам влом.
 
Переходим в каталог named
cd /etc/namedb/
Делаем
mv named.conf named.conf-dist
Мы сами будем создавать свой собственный named.conf
/etc/namedb/>vi named.conf
options {
listen-on {
127.0.0.1;
213.125.15.4;
};
allow-query { any; };
recursion no;
version “8.2.4″;
directory “/etc/namedb”;
pid-file “/var/run/named/pid”;
notify yes;
};
 
zone “.” {
type hint;
file “named.root”;
};
 
zone “0.0.127.in-addr.arpa” {
type master;
file “master/localhost.rev”;
notify no;
};
Директива options определяет каталог, в котором хранятся файлы описания зон, директива zone определяет зоны, которые поддерживает сервер.
Зона “.” сервером не поддерживается. Это корневая зона. Поэтому она имеет тип hint, т.е. “подсказка” на то, где описаны серверы корневой зоны.
Зона “0.0.127.in-addr.arpa” имеет тип master, т.к. данный сервер действительно является мастером для этой зоны.
Значение version “8.2.4″; добавляется для того, чтоб злоумышленник не мог определить точную версию нашего ДНС сервер.
Значение recursion no делает запрет на рекурсию.
Значение listen-on говорит на каких ИП отрабатывать запросы.
 
Если мы сделаем следующее
/etc/namedb/>ll /etc/namedb/ | grep named.root
-rw-r–r–  1 root  wheel  2600 Jan 12  2007 named.root
то увидим то такой файл уже существует. Тут проблем не будет. Для создания localhost.rev необходимо выполнить следующее
/etc/namedb/>sh make-localhost
/etc/namedb/>ll master/
total 8
-rw-r–r–  1 root  wheel  451 Nov 15 14:27 localhost-v6.rev
-rw-r–r–  1 root  wheel  451 Nov 15 14:27 localhost.rev
/etc/namedb/>
Вот в принципе и все. Дальше делаем
/etc/namedb/>echo “named_enable=”YES”" >> /etc/rc.conf
/etc/namedb/>cat /etc/rc.conf | grep named
named_enable=YES
/etc/namedb/>/etc/rc.d/named start
Starting named.
/etc/namedb/>tail -f /var/log/messages
Nov 17 12:22:34 host named[14438]: starting BIND 9.3.3 -t /var/named -u bind
Nov 17 12:22:34 host named[14438]: command channel listening on 127.0.0.1#953
Nov 17 12:22:34 host named[14438]: running
^C
/etc/namedb/>ps ax | grep named
14438  ??  Ss     0:00.02 /usr/sbin/named -t /var/named -u bind
14442  p0  R+     0:00.00 grep named
Если у Вы видите подобное – это значит, что у Вас все работает как нужно.
Но, это еще не все. Сервер то мы запустили. А как же домен? Идем дальше.
Мы решили, что нам необходимо завести домен test.org.ua
В named.conf добавляем следующее:
zone “test.org.ua” {
type master;
file “master/test.org.ua”;
allow-transfer {
215.57.121.1;
};
};
где zone “test.org.ua” название нашей зоны, file “master/test.org.ua”; пусть где будет хранится запись о зоне, 215.57.121.1; вторичный ДНС сервер.
 
Создаем зону test.org.ua
/etc/namedb/>vi master/test.org.ua
; Zone file for test.org.ua
$TTL 14400
@       IN      SOA      test.org.ua. webmaster.test.org.ua. (
2007101501       ; serial, todays date+todays
3600           ; refresh, seconds
300            ; retry, seconds
1209600         ; expire, seconds
43200 )         ; minimum, seconds
 
IN      NS      ns1.test.org.ua.
IN      NS      ns.secondary.net.ua.
MX      10      ns1.test.org.ua.
IN      A       213.125.15.4
 
ns1     IN      A       213.125.15.4
www     IN      A       213.125.15.5
pop3    IN      A       213.125.15.4
smtp    IN      A       213.125.15.4
mail    IN      A       213.125.15.4
ftp     IN      A       213.125.15.6
Вот собственно все и готово.
Подробно объяснять не буду что и как тут задано, есть Интернет, есть гугл.
В принципе все готово. За исключением одного.
 
Делаем следующее:
/etc/namedb/>/usr/sbin/rndc-confgen
# Start of rndc.conf
key “rndc-key” {
algorithm hmac-md5;
secret “PSgoANtaZ9nhGiiJMdHkNw==”;
};
 
options {
default-key “rndc-key”;
default-server 127.0.0.1;
default-port 953;
};
# End of rndc.conf
 
# Use with the following in named.conf, adjusting the allow list as needed:
# key “rndc-key” {
#       algorithm hmac-md5;
#       secret “PSgoANtaZ9nhGiiJMdHkNw==”;
# };
#
# controls {
#       inet 127.0.0.1 port 953
#               allow { 127.0.0.1; } keys { “rndc-key”; };
# };
# End of named.conf
Создаем файл /etc/named/rndc.conf куда добавляем следующее
/etc/namedb/>vi /etc/namedb/rndc.conf
key “rndc-key” {
algorithm hmac-md5;
secret “PSgoANtaZ9nhGiiJMdHkNw==”;
};
 
options {
default-key “rndc-key”;
default-server 127.0.0.1;
default-port 953;
};
А в /etc/namedb/named.conf добавляем оставшееся, и получаем полный конфиг вашего сервера:
/etc/namedb/>vi /etc/namedb/named.conf
key “rndc-key” {
algorithm hmac-md5;
secret “PSgoANtaZ9nhGiiJMdHkNw==”;
};
 
options {
default-key “rndc-key”;
default-server 127.0.0.1;
default-port 953;
};
 
options {
listen-on {
127.0.0.1;
213.125.15.4;
};
allow-query { any; };
recursion no;
version “8.2.4″;
directory “/etc/namedb”;
pid-file “/var/run/named/pid”;
notify yes;
};
 
zone “.” {
type hint;
file “named.root”;
};
 
zone “0.0.127.in-addr.arpa” {
type master;
file “master/localhost.rev”;
notify no;
};
 
zone “test.org.ua” {
type master;
file “master/test.org.ua”;
allow-transfer {
215.57.121.1;
};
};
Проверяем:
/etc/namedb/>rndc reload
server reload successful
/etc/namedb/>rndc status
number of zones: 2
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 0/1000
tcp clients: 0/100
server is up and running
/etc/namedb/>sockstat | grep named
bind     named      14438 3  dgram  -> /var/run/logpriv
bind     named      14438 20 udp4   213.125.15.4:53     *:*
bind     named      14438 21 tcp4   213.125.15.4:53     *:*
bind     named      14438 22 udp4   127.0.0.1:53          *:*
bind     named      14438 23 tcp4   127.0.0.1:53          *:*
bind     named      14438 24 udp4   *:63739               *:*
bind     named      14438 25 udp6   *:63740               *:*
bind     named      14438 26 tcp4   127.0.0.1:953         *:*
Утилита rnc нам необходима для работы в сервером ДНС: перезагрузка, статус, ошибки и т.д. Вот собственно и все.
 
З.Ы. Если нужны логи:
logging {
channel “log_default” {
file “/var/log/named.log” versions 10 size 10m;
severity info;
print-time yes;
print-severity yes;
print-category yes;
};
channel “log_security” {
file “/var/log/named-security.log” versions 5 size 10m;
severity info;
print-time yes;
print-severity yes;
print-category yes;
};
channel “null” {
null;
};
category “default” { “log_default”; };
category “security” { “log_security”; };
category “unmatched” { “null”; };
};
В последний версия сервера произошли небольшие изменения касательно make-localhost. Сейчас файлы уже готовы, и находятся в директории  
18:02 user@ns [/etc/namedb]#ll master/
total 14
-rw-r--r--  1 root  wheel  231 Feb 24  2008 empty.db
-rw-r--r--  1 root  wheel  253 Feb 24  2008 localhost-forward.db
-rw-r--r--  1 root  wheel  321 Feb 24  2008 localhost-reverse.db
Если возникла следующая ошибка:
Nov  3 11:50:23 ns named[18465]: command channel listening on 127.0.0.1#953
Nov  3 11:50:23 ns named[18465]: command channel listening on ::1#953
Nov  3 11:50:23 ns named[18465]: the working directory is not writable
необходимо сделать следующее: отредактировать файл /etc/mtree/BIND.chroot.dist, изменить
/set type=dir uname=root gname=wheel mode=0755
на
/set type=dir uname=bind gname=wheel mode=0755
и перестартовать named
  • FreeBSD
  • Войдите чтобы оставить комментарии

Новые пользователи

  • Zmej

Последние комментарии

Комментарии отсутствуют.

Сейчас на сайте

Пользователей онлайн: 0.

Создано на Drupal

Downloaded from top drupal themes | Hostgator coupon