Bind RPZ keine Wirkung mit Ansichten

Bind RPZ keine Wirkung mit Ansichten

Ich habe einen DNS-Server mit zwei Ansichten, eine für interne Benutzer und eine für externe (z. B. Internet). Ich möchte RPZ so konfigurieren, dass interne Benutzer, wenn sie eine Beispielwebsite anfordern (externe rekursive Abfragen werden ohnehin abgelehnt), auf eine andere Website (eine Filterseite) umgeleitet werden, auf der angezeigt wird, dass der Zugriff auf diese Website nicht zulässig ist. Aber RPZ funktioniert nicht, die Abfrage für bad.com gibt die tatsächliche Adresse zurück. Ich kann das Problem nicht herausfinden.

benannte.conf.Optionen:

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; };
};

benannt.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";
};

filter.zone:

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

Filter2-Zone:

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

nslookupzeigt immer die tatsächliche Adresse von bad.net und bad.com an.

Ich habe experimentiert und deshalb gibt es zwei Zonen.

Antwort1

erster korrekter A-Eintrag von:

bad.com A   filter.wsi.org 

Zu:

bad.com A   192.168.1.1

oder ändern Sie es wie folgt:

bad.com CNAME   filter.wsi.org

und testen Sie die Konfiguration mit Folgendem:

response-policy {zone "filter";};

Antwort2

Ich habe ein weiteres Problem festgestellt: Sie finden den NS-Eintrag nicht in der RPZ-Zonendatei.

@   NS    127.0.0.1.

und verwenden Sie Bind-Tools zur Fehlerbehebung Ihrer Konfiguration. So überprüfen Sie die Konfigurationssyntax:

named-checkconf

und zum Überprüfen der Zonendateisyntax:

named-checkzone filter /etc/bind/filter.zone

und um zu überprüfen, ob Bind ohne Fehler läuft:

netstat -lntup | grep 53

verwandte Informationen