Cache dns — различия между версиями
Материал из pNp Wiki
Andy (обсуждение | вклад) (→Настройка) |
Andy (обсуждение | вклад) (→Настройка) |
||
Строка 94: | Строка 94: | ||
include "/etc/named.root.key"; | include "/etc/named.root.key"; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | После окончания редактирования файла, следует проверить синтиксис конфигурационного файла, | ||
+ | на ошибки утилитой named-checkconf |
Версия 14:40, 12 декабря 2017
Содержание
Развертывание кэширующего сервера DNS
В RHEL7.X стала возможным установка и использование двух рекурсивных
кэширующих серверов на выбор - либо bind
, либо unbound
.
Предварительные требования
- Виртуальная машина с двумя сетевыми интерфейсами
- Установленные пакеты:
bash-completion
,bind
,bind-utils
Bind
Установка
На виртуальной машине vm-01
установим пакет:
[root@vm-01 ~]# yum install -y bind
Далее, следует включить сервис в автозагрузку:
[root@vm-01 ~]# systemctl enable named.service
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.
[root@vm-01 ~]#
Настройка
Конфигурационный файл по-умолчанию, практически готов к использованию. Сервер будет работать, как рекурсивный, однако
следует запретить запросы из всех сетей, кроме нужной 192.168.1.0/24
, плюс указать серверы, которые будут
являтся вышестоящими источниками для нашего рекурсивного сервера.
[root@vm-01 ~]# cat /etc/named.conf
//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// See the BIND Administrator's Reference Manual (ARM) for details about the
// configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html
acl net { 192.168.1.0/24; };
options {
listen-on port 53 { 127.0.0.1; net; };
//listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; net; };
allow-query-on { 192.168.1.1/24; };
/*
- If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
- If you are building a RECURSIVE (caching) DNS server, you need to enable
recursion.
- If your recursive DNS server has a public IP address, you MUST enable access
control to limit queries to your legitimate users. Failing to do so will
cause your server to become part of large scale DNS amplification
attacks. Implementing BCP38 within your network would greatly
reduce such attack surface
*/
recursion yes;
allow-recursion { 127.0.0.1; net; };
allow-recursion-on { 192.168.1.1/24; };
forwarders { 8.8.8.8; 8.8.4.4; };
forward only;
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
После окончания редактирования файла, следует проверить синтиксис конфигурационного файла, на ошибки утилитой named-checkconf