Перенос BIND с Freebsd на Linux

Встала задача , перенести DNS с Freebsd на Cent OS  и потом обратно , это мера временная и необходима она для того что б обновить Freebsd до 8 ветки , да и вообще внять сервер и почистить его от пыли и проверить HDD  ( так как он уже лет 7мь стоит ) .

И так установку Cent OS описывать не буду , начну сразу с проверки пакета bind — который нам и необходим :

#rpm -qa | grep bind

данного пакета нет .

Для выхода в интернет мне необходимо перевести сервер на другой шлюз по умолчанию (что б не потерять сервер необходимо быть с ним в одной подсети ) :

#route del default gw 172.X.X.X

#route add default gw 10.X.X.X

или можно статику просто добавить #route add -host 61.110.198.174 gw 10.X.X.X  — того хоста или хостов от кудого мы будем тянуть пакет .

Далее ставим сам пакет :

#yum install bind

И далее немного о стратегии переноса . Необходимо сделать следующее , скопировать все файлы зон и конфигов со старого bind и подтюнуть его в новом , тестовый пуск , если ругнется на что нить  — значит надо раздибажить (возможно удалить какую нить опцию и т.д) , корректировка путей и т.д , приступим .

Примечание :


в конфигурационном файле named.conf не забывает ставить :


        allow-transfer {
        none;

Это по умолчанию будет отбратывать обработку запросов на передачу зон от  IP  адресов , которые не указанны явно в описании зоны , к примеру :

transfer-source { 217.28.210.10;};

И не забывает про логирование данного демана :

logging {
channel default_ch {
file «/var/log/named.log» versions 10 size 64m;
severity error;
print-time yes;
print-category yes;
};
channel query_ch {
file «/var/log/query.log» versions 10 size 128m;
severity dynamic;
print-severity yes;
print-time yes;
print-category yes;
};
channel security_ch {
file «/var/log/security.log» versions 10 size 64m;
severity error;
print-time yes;
print-category yes;
};
channel transfer_ch {
file «/var/log/transfer.log» versions 10 size 64m;
severity info;
print-time yes;
print-category yes;
};
channel syslog {
syslog local1;
severity info;
};

category lame-servers { null; };
category default { default_ch; };
category general { default_ch; };
category network { default_ch; };
category queries { query_ch; };
category security { security_ch; };
category xfer-in { transfer_ch; };
category xfer-out { transfer_ch; };
category notify { transfer_ch; };
};

 

И так же необходимо создать все файлы логов от корневой директории named и дать разрешения полюзователю named в эти файлы запись .

 

Обьем кеша лучше ставить в обьеме 512 mb , увеличение этого значения ни как не скажется на увеличении работы демона , а просто сожрет память .

 

Так же есть рекоментация , средняя нагрузка сервера DNS не должна превышать 30 %  — это вам поможет лучше пережить DDOS атаки , вирусы и т.д не приятные вещи .

По большому счету , больших нагрузок для данного демана быть не должно , поэтому для данной задачи можно выделить к примеру и Pentium 3 (и он с лихвой справится с данной задачей) , но при этом необходимо четко разделять по разным железкам  первичный и вторичный DNS . И пожалуй общая рекомендация истользовать 64 разрядные OS на современных 64 разрядных процессорах .

 

И на последок немного о безопасности данного сервиса , если же вы используете данный сервис на уровне провайдера или же большой компании , лучшим способом обезопасить будет использование ACL на маршрутизатора  (лучше это делать на обычных не statefull межсетевых экранах).