
Tengo un servidor DNS que tiene dos vistas, una para usuarios internos y otra para externos (internet por ejemplo). Quiero configurar RPZ para que cuando los usuarios internos soliciten (de todos modos se rechazarán las consultas recursivas externas) un sitio web de muestra, sean redirigidos a otro sitio web (una página de filtro) que muestre que no se permite el acceso a este sitio web. Pero RPZ no funciona, la consulta de bad.com devuelve su dirección real. No puedo descubrir el problema.
opciones.de.conf.con nombre:
options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
forwarders {
8.8.8.8;
};
response-policy {zone "filter" recursive-only no;};
//========================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys. See https://www.isc.org/bind-keys
//========================================================================
# dnssec-validation auto;
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
nombrado.conf.local:
//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";
acl internal {172.17.116/24; 192.168.20/24; 127/8;};
view "internal" {
match-clients {internal;};
recursion yes;
zone "wsi.org" {
type master;
file "/etc/bind/internal.zone";
};
zone "filter" {
type master;
file "/etc/bind/filter.zone";
};
include "/etc/bind/named.conf.default-zones";
};
view "external" {
match-clients {any;};
recursion no;
zone "wsi.org" {
type master;
file "/etc/bind/external.zone";
};
zone "filter" {
type master;
file "/etc/bind/filter2.zone";
};
include "/etc/bind/named.conf.default-zones";
};
zona.filtro:
TTL 604800
@ IN SOA wsi.org. root.wsi.org. (
3 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
bad.com A filter.wsi.org
bad.net A filter.wsi.org
zona filtro2:
TTL 604800
@ IN SOA wsi.org. root.wsi.org. (
3 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
bad.com A filter.wsi.org
bad.net CNAME rpz-passthru
nslookup
muestra la dirección real de bad.net y bad.com siempre.
Estaba experimentando y por eso hay dos zonas.
Respuesta1
primer registro A correcto de:
bad.com A filter.wsi.org
a:
bad.com A 192.168.1.1
o cambiar como a continuación:
bad.com CNAME filter.wsi.org
y pruebe la configuración a continuación:
response-policy {zone "filter";};
Respuesta2
Encontré otro problema: no define el registro ns en el archivo de zona rpz.
@ NS 127.0.0.1.
y utilice herramientas de vinculación para solucionar problemas de su configuración. Para comprobar la sintaxis de configuración:
named-checkconf
y para comprobar la sintaxis del archivo de zona:
named-checkzone filter /etc/bind/filter.zone
y para comprobar que bind se está ejecutando sin errores:
netstat -lntup | grep 53