Как заблокировать домен с помощью RPZ на сервере Bind DNS на CentOS

Система доменных имен или DNS — это служба, которая разрешает имя узла для конкретного IP-адреса.

Response Policy Zones(DNS RPZ) используются для защиты от вредоносных глобальных идентификаторов, таких как имена хостов, имена доменов, IP-адреса и серверных имен.

Response Policy Zones(DNS RPZ) предотвращают доступ к определенным интернет-доменам и перенаправление на другие места.

Блокирование домена на DNS-сервере — это перенаправление всех запросов для определенного домена на loopback или любой неверный IP-адрес с помощью RPZ.

В этом руководстве описывается процедура настройки блокировки домена с использованием RPZ в DNS-сервере Bind на CentOS.

Процедура настройки

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

 # yum install bind* -y Loaded plugins: fastestmirror, refresh-packagekit, security Setting up Install Process Loading mirror speeds from cached hostfile * base: ftp.iitm.ac.in * extras: mirror.ehost.vn * updates: ftp.iitm.ac.in Resolving Dependencies --> Running transaction check ---> Package bind.x86_64 32:9.8.2-0.62.rc1.el6_9.4 will be installed ---> Package bind-chroot.x86_64 32:9.8.2-0.62.rc1.el6_9.4 will be installed ---> Package bind-devel.x86_64 32:9.8.2-0.62.rc1.el6_9.4 will be installed ---> Package bind-dyndb-ldap.x86_64 0:2.3-8.el6 will be installed . . . Installed: bind.x86_64 32:9.8.2-0.62.rc1.el6_9.4 bind-chroot.x86_64 32:9.8.2-0.62.rc1.el6_9.4 bind-devel.x86_64 32:9.8.2-0.62.rc1.el6_9.4 bind-dyndb-ldap.x86_64 0:2.3-8.el6 bind-sdb.x86_64 32:9.8.2-0.62.rc1.el6_9.4 Dependency Installed: postgresql-libs.x86_64 0:8.4.20-7.el6 Updated: bind-libs.x86_64 32:9.8.2-0.62.rc1.el6_9.4 bind-utils.x86_64 32:9.8.2-0.62.rc1.el6_9.4 Complete! 

Отредактируйте файл конфигурации named.conf с помощью редактора vim и введите следующее содержимое в файл. Сохраните и выйдите из файла.

 # vim /etc/named.conf options { listen-on port 53 { 127.0.0.1; 192.168.7.222; }; 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; }; recursion yes; dnssec-enable yes; dnssec-validation yes; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; }; 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"; 

Добавьте свой IP-адрес, как показано в приведенной выше конфигурации, и запустите и включите службу named, выполнив следующий набор команд:

 # service named start Generating /etc/rndc.key: [ OK ] Starting named: [ OK ] # chkconfig named on 

Отредактируйте IP-адрес разрешающего DNS-сервера в файле конфигурации сети с помощью редактора vim и внесите следующие изменения. Сохраните и выйдите из файла.

 # vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet UUID=36a6e616-74e3-4df5-ad16-ca3b691bc2d8 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none HWADDR=00:0C:29:F2:17:C6 IPADDR=192.168.7.222 PREFIX=24 GATEWAY=192.168.7.1 DNS1=8.8.8.8 DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" 

Теперь перезапустите network service

 # service network restart Shutting down interface eth0: Device state: 3 (disconnected) [ OK ] Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface eth0: Active connection state: activated Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/2 [ OK ] 


Чтобы заблокировать домен с помощью метода DNS RPZ, откройте конфигурацию named.conf и создайте зону, как показано ниже.

 # vim /etc/named.conf response-policy { zone "ns1.example.com"; }; zone "ns1.example.com" IN { type master; file "rpz.db"; }; 

Затем создайте файл зоны forward, как мы упоминали в конфигурации named.conf с именем rpz.db, и введите следующие данные в файл. Сохраните и выйдите из файла.

 # vim /var/named/rpz.db $TTL 1D @ IN SOA ns1.example.com. root.example.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum @ IN NS ns1.example.com. @ IN A 192.168.7.222 youtube.com IN CNAME @ www.youtube.com IN CNAME @

Перезапустите службу named

# service named restart
Stopping named: [ OK ]
Starting named: [ OK ]

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

  # nslookup youtube.com
Server: 192.168.7.222
Address: 192.168.7.222#53

Non-authoritative answer:
youtube.com canonical name = ns1.example.com.
Name: ns1.example.com
Address: 192.168.7.222

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

Домен останется заблокированным в соответствии с конфигурацией.



Отправить комментарий

0 Комментарии