43292
Goto Top

BIND9 unter Debian Squeeze, Requests ans Internet forwarden, bzw. unterbinden

Hallo liebe Forummitglieder,

ich bin gerade dabei einen DNS-Server (BIND9 version 9.7.3) unter einem frisch aufgesetzten Debian Squeeze OS (in Xen VM) zu installieren, bzw. ich habe es schon. Jetzt gehts um die Fehlerbeseitigung aus den Angaben der Logfiles. Und zwar stehe ich noch vor diesen Problemen, die ich bisher nicht beheben konnte und auf eure Hilfe hoffe. Mittlerweile habe ich IPv6 systemweit auf diesem Server deaktiviert. Dazu habe ich die Datei /etc/sysctl.d/disable-ipv6.conf angelegt mit dem Inhalt "net.ipv6.conf.all.disable_ipv6=1" und neu gebootet.

Nun zu meinen Fragen, hier Auszug aus der /var/log/daemon.log und syslog
Nov 15 11:05:20 meinservername named[718]: client 127.0.0.1#38897: request has invalid signature: TSIG rndc-key: tsig verify failure (BADKEY)
Nov 15 11:05:20 meinservername dhcpd: Unable to add forward map from PC3.dhcpguest.intranet.meinefirma.de to 192.168.0.122: bad DNS key
Nov 15 11:32:05 meinservername named[718]: validating @0x7fcf9cf46480: aus2.acelb.sj.mozilla.com A: no valid signature found
Nov 15 11:42:36 meinservername named[718]: error (network unreachable) resolving 'dns2.netcologne.de/A/IN': 2003:40:8000::100#53  
Nov 15 11:42:36 meinservername named[718]: error (network unreachable) resolving 'dns.techfak.net/AAAA/IN': 2a01:238:425c:5200:36e7:52bd:fc50:dd23#53  
Nov 15 11:42:36 meinservername named[718]: error (network unreachable) resolving 'dns.techfak.net/AAAA/IN': 2001:638:504:2000::f2#53  

(1) Wieso der rndc-key Fehler, wie könnte ich diesen Fehler beheben?
(2) Was hat es mit dem "mozilla.com no valid signature" found auf sich?

(3) Teilweise stehen auch Website-Adressen dabei, die von Clients an ihren Browsern angegeben wurden. Ich nehme an, dass mein frisch aufgesetzter BIND-Server versucht, über IPv6-Anfragen die im Internet stehenden DNS-Anfragen rekursiv abzufragen. Oder warum können die nicht erreicht werden? Ich hab doch IPv6 ausgeschaltet auf dem Server. Ausserdem habe ich in Wie sage ich dem BIND9-Server dass er nur IPv4 verwenden soll? Ich habe gegoogelt aber nur Hinweise auf ältere BIND-Versionen gefunden mit der Option -4. Wie mache ich das bei meiner BIND9-Version 9.7.3 unter Debian Squeeze?

==> Punkt 3 ist gelöst! Ich habe in der /etc/bin/named.conf.options IPv6 Abhören deaktiviert, und das Wichtigste aber war folgendes --> man trägt bei Debian unter /etc/default/bind9 den Zusatz -4 in die Option ein. Also muss es heissen OPTIONS="-u bind -4" Gott!! Ich fand diese Datei nirgends, weil sie bei Debian anders heißt face-smile

(4) Der DHCP-Client PC3 wird nicht zur DNS-Liste hinzugefügt wie in dem Log zu sehen ist. Wieso aber? Weil ich den Präfix dhcpguest verwendet habe etwa??
(5) Wie kann ich meinem BIND-Server beibringen, dass er nur Namen auflösen soll, die auch für seine Zone gedacht sind, und alles andere was eben nicht in meinem Subnet liegt, soll direkt an den Router an die 192.168.0.1 weitergeleitet werden? Ausserdem soll der DNS-Server natürlich nicht offen sein, und versuchen Schreibzugriffe von fremden Domains hinzuzufügen.

Ich hoffe jemand kann mir mit ein paar guten Tips weiterhelfen und ich hoffe ich habe alle relevanten und wichtigen Daten zum Problem angegeben. Bin für jede Hilfestellung im Voraus sehr dankbar.

/etc/bind/named.conf:
include "/etc/bind/named.conf.options";  
include "/etc/bind/named.conf.local";  
include "/etc/bind/named.conf.default-zones";  

// zusaetzlich von mir hinzugefuegt, damit die DNSSEC-Validierung einwandfrei funktioniert.
// und keine Fehlermeldungen im Log erscheinen. Es wurde wohl bei der Erstellung des Paketes vom Autor vergessen.
include "/etc/bind/bind.keys";  

controls {
        inet 127.0.0.1 allow {localhost; };
};

/etc/bind/named.conf.local:
zone "intranet.meinefirma.de" {  
        type master;
        file "/var/lib/bind/zone.intranet.meinefirma.de";  
        allow-update { localhost; };
};

zone "0.168.192.in-addr.arpa" {  
        type master;
        file "/var/lib/bind/zone.192.168.0";  
        allow-update { localhost; };
};

/etc/bind/named.conf.options: (da habe ich IPv6 Abhören deaktiviert)
        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { none; };
};

In der /etc/bind/db.root habe ich ausserdem alle IPv6-Adresse mit einem Semikolon auskommentiert, damit diese nicht abgefragt werden. Es genügt mir IPv4.

In /var/lib/bind habe ich manuell zwei Zonenfiles angelegt, die heißen "zone.intranet.meinefirma.de" und "zone.192.168.0". Letztere ist für Reverse-Auflösungen. Hier der Auszug

/var/lib/bind/zone.intranet.meinefirma.de:
$ORIGIN .
$TTL 604800     ; 1 week
intranet.meinefirma.de     IN SOA  meinservername.intranet.meinefirma.de. hostmaster.meinservername.intranet.meinefirma.de. (
                                2011012101 ; serial
                                28800      ; refresh (8 hours)
                                7200       ; retry (2 hours)
                                604800     ; expire (1 week)
                                39600      ; minimum (11 hours)
                                )
                        NS      meinservername.intranet.meinefirma.de.
$ORIGIN intranet.meinefirma.de.
router         A      192.168.0.1
blabla2      A      192.168.0.2
blabla3      A      192.168.0.3

/var/lib/bind/zone.192.168.0:
$ORIGIN .
$TTL 604800     ; 1 week
0.168.192.in-addr.arpa   IN SOA meinservername.intranet.meinefirma.de. hostmaster.meinservername.intranet.meinefirma.de. (
                                2011012101 ; serial
                                28800      ; refresh (8 hours)
                                7200       ; retry (2 hours)
                                604800     ; expire (1 week)
                                39600      ; minimum (11 hours)
                                )
                        NS      meinservername.intranet.meinefirma.de.
$ORIGIN 0.168.192.in-addr.arpa.
1                       PTR     router
2                       PTR     blabla2
3                       PTR     blabla3

Die /etc/resolv.conf sieht wie folgt aus. Dabei ist 192.168.0.235 mein primärer DNS-Server, also der Server an welchem auch der DNS-Server BIND9 installiert ist. Der zweite Nameserver steht deshalb drin, weil es der Router fürs Internet ist.
domain intranet.meinefirma.de
search intranet.meinefirma.de
nameserver 192.168.0.235
nameserver 192.168.0.1

Die Kommandos hostname und hostname -f spucken mir beide aus "meinservername.intranet.meinefirma.de", also soweit alles korrekt denke ich, oder?

Meine /etc/dhcp/dhcpd.conf sieht wie folgt aus:
server-name                meinservername;
server-identifier           meinservername;
ddns-updates                on;
ddns-update-style           interim;
ddns-domainname             "dhcpguest.intranet.meinefirma.de";  
ddns-rev-domainname         "in-addr.arpa.";  
ignore                      client-updates;
include                     "/etc/bind/rndc.key";  
option domain-name              "intranet.meinefirma.de";  
option subnet-mask              255.255.255.0;
option domain-name-servers      192.168.0.235, 192.168.0.1;
option ntp-servers              192.168.0.235;
option ip-forwarding            off;
default-lease-time              86400;
max-lease-time                  172800;
authoritative;
log-facility local7;

subnet 192.168.0.0 netmask 255.255.255.0 {
    range                       192.168.0.101 192.168.0.199;
    option broadcast-address    192.168.0.255;
    option routers              192.168.0.1;
    allow                       unknown-clients;

  zone intranet.meinefirma.de. {
    primary 127.0.0.1;
    key             "rndc-key";  
  }

  zone 0.168.192.in-addr.arpa. {
    primary 127.0.0.1;
    key             "rndc-key";  
  }
}

Content-Key: 176278

Url: https://administrator.de/contentid/176278

Printed on: April 16, 2024 at 09:04 o'clock

Member: mrtux
mrtux Nov 15, 2011 at 15:17:54 (UTC)
Goto Top
Hi !

Aus dem Stand heraus würde ich sagen, Du hast mind. noch einen weiteren Fehler in deiner Konfig, sonst würde der Key-Fehler nicht kommen. Hast Du denn überhaupt einen eigenen Key für die DHCP-Updates generiert?

Naja, vielleicht stolpert ein Kollege noch drüber, bin total neben der Spur und geh jetzt ins Bett....Erkältung mit Fieber und Kopfschmerzen...Das volle Programm ... Gut Nacht...

mrtux
Mitglied: 43292
43292 Nov 15, 2011 at 16:30:17 (UTC)
Goto Top
Mensch, ab ins Bett mit dir! face-smile gute und vor allem schnelle Genesung wünsche ich. Ja, eigener Key wurde generiert.

EDIT: Habe einige Fehler gefunden und bin gerade am Bearbeiten ...

EDIT2: Gott sei Dank! Habs gefunden und gelöst. Ich hatte Schönheitsfehler in meinen Configs face-smile hauptsache DDNS geht jetzt. Es lag sowohl am keyfile als auch am Syntax. Ich hab jetzt in der dhcpd.conf auch nicht mit "include"-Befehl mein keyfile geladen, sondern gleich mit
"key <keyname> {  
    algorithm HMAC-MD5;
    secret "<keydata>";  
};

Außerdem hatte ich auch Anführungszeichen genutzt, das war definitiv falsch. Falls es jemanden gibt, der ähnliche Probleme hat und auf diesen Thread gestolpert ist, dem kann ich wärmstens dieses Tutorial empfehlen
http://www.ops.ietf.org/dns/dynupd/secure-ddns-howto.html

Ich glaub genug für heute, mein Kopf raucht. Schönen Abend allerseits noch.
Mitglied: 43292
43292 Nov 16, 2011 at 12:51:42 (UTC)
Goto Top
Hallo nochmal,

ich habe den DNS-Server und DHCP-Server soweit im Griff, außer noch folgendem Problem.

in dem Log erscheinen ständig solche Nameserver-Auflösungen:

Nov 16 13:38:12 meinserver named[9312]: success resolving 'geons2.kaspersky-labs.com/A' (in 'kaspersky-labs.com'?) after disabling EDNS  
Nov 16 13:38:12 meinserver named[9312]: success resolving 'geons4.kaspersky-labs.com/A' (in 'kaspersky-labs.com'?) after disabling EDNS  
Nov 16 13:38:12 meinserver named[9312]: success resolving 'geons1.kaspersky-labs.com/A' (in 'kaspersky-labs.com'?) after disabling EDNS  
Nov 16 13:38:12 meinserver named[9312]: success resolving 'geons6.kaspersky-labs.com/A' (in 'kaspersky-labs.com'?) after disabling EDNS  
Nov 16 13:38:12 meinserver named[9312]: success resolving 'geons5.kaspersky-labs.com/A' (in 'kaspersky-labs.com'?) after disabling EDNS  
Nov 16 13:38:13 meinserver named[9312]: success resolving 'geons3.kaspersky-labs.com/A' (in 'kaspersky-labs.com'?) after disabling EDNS  
Nov 16 13:40:37 meinserver named[9312]: success resolving 'ns-925.amazon.com/A' (in 'amazon.com'?) after disabling EDNS  
Nov 16 13:40:37 meinserver named[9312]: success resolving 'ns-947.amazon.com/A' (in 'amazon.com'?) after disabling EDNS  
Nov 16 13:40:37 meinserver named[9312]: success resolving 'ns-935.amazon.com/A' (in 'amazon.com'?) after disabling EDNS  
Nov 16 13:40:37 meinserver named[9312]: success resolving 'ns-916.amazon.com/A' (in 'amazon.com'?) after disabling EDNS  
Nov 16 13:40:37 meinserver named[9312]: success resolving 'ns-944.amazon.com/A' (in 'amazon.com'?) after disabling EDNS  
Nov 16 13:40:37 meinserver named[9312]: success resolving 'ns-927.amazon.com/A' (in 'amazon.com'?) after disabling EDNS  
Nov 16 13:40:37 meinserver named[9312]: success resolving 'ns-941.amazon.com/A' (in 'amazon.com'?) after reducing the advertised EDNS UDP packet size to 512 octets  
Nov 16 13:40:37 meinserver named[9312]: success resolving 'ns-934.amazon.com/A' (in 'amazon.com'?) after reducing the advertised EDNS UDP packet size to 512 octets  
Nov 16 13:45:58 meinserver named[9312]: success resolving 'dns.lyptt.fj.cn/A' (in 'lyptt.fj.cn'?) after disabling EDNS  
Nov 16 13:45:58 meinserver named[9312]: success resolving 'ns2.fjmaster.com/A' (in 'fjmaster.com'?) after disabling EDNS  
Nov 16 13:45:59 meinserver named[9312]: success resolving 'ns1.fjmaster.com/A' (in 'fjmaster.com'?) after disabling EDNS  

Laut Google-Recherche wird ja EDNS von BIND standardmässig verwendet. Hier scheint wohl mein Router Probleme zu machen, da er nicht UDP-Packets größer als 512 durchlässt. Daraufhin verringert mein DNS-Server dies. Ich könnte ja die EDNS-Funktion in meiner BIND-Konfiguration ausschalten, aber das wäre ja nicht Sinn der Sache, oder doch? Wieso versuch eigentlich mein DNS-Server andere Name-Server zu kontaktieren? Eigentlich will ich es so haben, dass mein lokaler DNS-Server nur für lokale Adresse auflösen soll, sprich für mein Subnet. Alles andere soll unverzüglich an meinen Router gesendet werden, so dass sich mein BIND gar nicht damit abgeben und rumrechnen muss. Wie sag ich also meinem BIND, dass er das tun soll?

Bin für jede Hilfestellung dankbar.
Mitglied: 43292
43292 Dec 09, 2011 at 09:33:25 (UTC)
Goto Top
Problem gelöst. Mann Mann Mann, die Teilnahme hier im Forum ist ja echt enorm. Scheinen ja nicht viele Admins unterwegs zu sein, oder zumindest weniger wie in anderen Foren, die wirklich Hilfe leisten und Lösungsansätze bieten können. Ich für meinen Teil verabschiede mich wieder hier von der Community und wünsche allen weiterhin frohes Posten (und aufs Antworten warten face-smile )

Viele Grüße, frohe Festtage und allen einen guten Rutsch ins kommende Jahr.

Tschüss,
Michael.