Поиск по сайту:

Как установить и настроить «DNS-сервер только для кэширования» с «несвязанным» в RHEL/CentOS 7


Кэширование серверов имен с использованием «Unbound» (программное обеспечение для проверки, рекурсивного и кэширования DNS-серверов), еще в RHEL/CentOS 6.x (где x — номер версии) мы использовали bind программное обеспечение для настройки DNS-серверов.

В этой статье мы собираемся использовать «несвязанное» программное обеспечение для кэширования для установки и настройки DNS-сервера в системах RHEL/CentOS 7.

Серверы кэша DNS используются для разрешения любого получаемого DNS-запроса. Если сервер кэширует запрос и в будущем те же запросы, запрошенные любыми клиентами, запрос будет доставлен из «несвязанного» кэша DNS, это можно сделать за миллисекунды, чем при первом разрешении.

Кэширование будет действовать только как агент для разрешения запроса клиента от любого из серверов пересылки. Использование сервера кэширования сократит время загрузки веб-страниц, сохранив базу данных кэша на несвязанном сервере.

Настройка моего сервера и клиента

В демонстрационных целях я буду использовать две системы. Первая система будет действовать как Главный (Основной) DNS сервер, а вторая система будет действовать как локальный DNS-клиент . .

Главный DNS-сервер
Operating System   :    CentOS Linux release 7.0.1406 (Core)
IP Address	   :	192.168.0.50
Host-name	   :	ns.tecmintlocal.com
Клиентская машина
Operating System   :	CentOS 6
IP Address	   :	192.168.0.100
Host-name	   :	client.tecmintlocal.com

Шаг 1. Проверьте имя хоста и IP-адрес системы.

1. Перед настройкой кэширующего DNS-сервера убедитесь, что вы добавили правильное имя хоста и настроили правильный статический IP-адрес для своей системы, если не задали статический IP-адрес системы.

2. После установки правильного имени хоста и статического IP-адреса вы можете проверить их с помощью следующих команд.

hostnamectl
ip addr show | grep inet

Шаг 2. Установка и настройка Unbound

3. Перед установкой несвязанного пакета мы должны обновить нашу систему до последней версии, после этого мы сможем установить несвязанный пакет.

yum update -y
yum install unbound -y

4. После установки пакета сделайте копию несвязанного файла конфигурации, прежде чем вносить какие-либо изменения в исходный файл.

cp /etc/unbound/unbound.conf /etc/unbound/unbound.conf.original

5. Затем воспользуйтесь любым текстовым редактором, чтобы открыть и отредактировать файл конфигурации unbound.conf.

vim /etc/unbound/unbound.conf

Открыв файл для редактирования, внесите следующие изменения:

Интерфейсы

Найдите Интерфейс и включите интерфейс, который мы собираемся использовать. Если на нашем сервере имеется несколько интерфейсов, нам необходимо включить интерфейс 0.0.0.0.

Здесь IP-адрес нашего сервера был 192.168.0.50. Итак, я собираюсь использовать несвязанный интерфейс в этом интерфейсе.

Interface 192.168.0.50
Включить поддержку IPv4 и протоколов

Найдите следующую строку и укажите «Да».

do-ip4: yes
do-udp: yes
do-tcp: yes
Включить ведение журнала

Чтобы включить журнал, добавьте переменную, как показано ниже, она будет регистрировать все несвязанные действия.

logfile: /var/log/unbound
Скрыть личность и версию

Включите следующий параметр, чтобы скрыть запросы id.server и hostname.bind.

hide-identity: yes

Включите следующий параметр, чтобы скрыть запросы version.server и version.bind.

hide-version: yes
Контроль доступа

Затем найдите контроль доступа, чтобы разрешить. Это необходимо для того, чтобы указать, каким клиентам разрешено запрашивать этот несвязанный сервер.

Здесь я использовал 0.0.0.0, что означает, что любой отправляет запрос на этот сервер. Если нам нужно отклонить запросы для некоторого диапазона сетей, мы можем определить, какая сеть должна быть отклонена от несвязанных запросов.

access-control: 0.0.0.0/0 allow

Примечание. Вместо разрешения мы можем заменить его на allow_snoop. Это включит некоторые дополнительные параметры, такие как dig и он поддерживает как рекурсивный, так и нерекурсивный.

Домен небезопасен

Затем найдите небезопасный домен. Если наш домен работает с ключами безопасности DNS, нам необходимо определить наш сервер, доступный для небезопасного домена. Здесь наш домен будет считаться небезопасным.

domain-insecure: "tecmintlocal.com
Передовые зоны

Затем измените переадресаторы для нашего запрошенного запроса, который не выполнен этим сервером, который он перенаправит в корневой домен (. ), и разрешите запрос.

forward-zone:
        name: "."
        forward-addr: 8.8.8.8
        forward-addr: 8.8.4.4

Наконец, сохраните и закройте файл конфигурации, используя wq!.

6. После выполнения вышеуказанной конфигурации проверьте файл unbound.conf на наличие ошибок с помощью следующей команды.

unbound-checkconf /etc/unbound/unbound.conf

7. После того, как проверка файла прошла без ошибок, вы можете безопасно перезапустить «несвязанную» службу и включить ее при запуске системы.

systemctl start unbound.service
sudo systemctl enable unbound.service

Шаг 3. Проверьте кэш DNS локально

8. Теперь пришло время проверить наш DNS-кэш, выполнив «детализацию» (запрос) одного домена «india.com». Сначала результаты команды «drill» для домена «india.com» займут несколько миллисекунд, затем выполните вторую детализацию и запишите время запроса. требуется для обоих упражнений.

drill india.com @192.168.0.50

Вы видели в приведенном выше выводе, что для разрешения первого запроса потребовалось почти 262 мс, а для разрешения второго запроса потребовалось 0 мс для домена (india.com).

Это означает, что первый запрос кэшируется в нашем DNS-кеше, поэтому, когда мы второй раз запускаем «детализацию» запроса, обслуживаемого из нашего локального DNS-кэша, таким образом мы можем улучшить скорость загрузки веб-сайтов.

Шаг 4. Очистка Iptables и добавление правил Firewalld

9. Мы не можем использовать оба iptables и firewalld одновременно на одном компьютере. Если мы это сделаем, оба будут конфликтовать друг с другом, таким образом удаление правил ipables будет хорошей идеей. Чтобы удалить или очистить iptables, используйте следующую команду.

iptables -F

10. После окончательного удаления правил iptables теперь навсегда добавьте службу DNS в список firewalld.

firewall-cmd --add-service=dns
firewall-cmd --add-service=dns --permanent

11. После добавления правил службы DNS перечислите правила и подтвердите.

firewall-cmd --list-all

Шаг 5. Управление несвязкой и устранение неполадок

12. Чтобы получить текущий статус сервера, используйте следующую команду.

unbound-control status

Сброс DNS-кэша

13. Если вы хотите сохранить дамп информации о кэше DNS в текстовом файле, вы можете перенаправить его в какой-либо файл, используя команду ниже, для использования в будущем.

 # unbound-control dump_cache > /tmp/DNS_cache.txt

14. Чтобы восстановить или импортировать кеш из файла дампа, вы можете использовать следующую команду.

unbound-control dump_cache < /tmp/DNS_cache.txt

Очистка DNS-записей

15. Чтобы проверить, был ли конкретный адрес разрешен нашими серверами пересылки на сервере несвязанного кэша, используйте команду ниже.

unbound-control lookup google.com

16. Иногда, если наш кэш-сервер DNS не отвечает на наш запрос, мы тем временем можем использовать очистку кеша для удаления такой информации, как A, AAA. , NS, SO, CNAME, MX, PTR и т. д. .. записи из кэша DNS. Мы можем удалить всю информацию, используя flush_zone. Это приведет к удалению всей информации.

unbound-control flush linux-console.net
unbound-control flush_zone tecmintlocal.com

17. Чтобы проверить, какие пересылки в данный момент используются для разрешения.

unbound-control list_forwards

Шаг 6. Настройка DNS на стороне клиента

18. Здесь я использовал сервер CentOS 6 в качестве клиентского компьютера, IP-адрес этого компьютера — 192.168.0.100, и я собираюсь использовать мой несвязанный IP-адрес DNS-сервера (т. е. Основной DNS) в конфигурации его интерфейса.

Войдите в клиентский компьютер и установите для IP-адрес основного DNS-сервера IP-адрес нашего несвязанного сервера.

Запустите команду настройки и выберите конфигурацию сети в сетевом менеджере TUI.

Затем выберите конфигурацию DNS, вставьте IP-адрес несвязанного DNS-сервера в качестве Основного DNS, но здесь я использовал как Основной, так и Вторичный потому что у меня нет другого DNS-сервера.

Primary DNS	: 192.168.0.50
Secondary DNS	: 192.168.0.50

Нажмите ОК –> Сохранить и выйти –> Выйти.

19. После добавления основного и вторичного IP-адресов DNS пришло время перезагрузить сеть, используя следующую команду.

/etc/init.d/network restart

20. Теперь пришло время получить доступ к любому веб-сайту с клиентского компьютера и проверить наличие кеша на несвязанном DNS-сервере.

elinks aol.com
dig aol.com

Заключение

Ранее мы использовали для настройки кэш-сервера DNS с использованием пакета привязки в системах RHEL и CentOS. Теперь мы увидели, как настроить DNS-кэш-сервер с использованием несвязанного пакета. Надеюсь, это разрешит ваш запрос быстрее, чем пакет привязки.