User Tools

Site Tools


project:dns-axfr-tsig

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
project:dns-axfr-tsig [2016/11/09 20:13] 37.209.107.175project:dns-axfr-tsig [2016/11/16 10:52] (current) 37.209.107.175
Line 37: Line 37:
  
 <code> <code>
- allow-transfer { !{ !10.0.0.1; any; }; key "key-name";};+ allow-transfer { !{ !10.0.0.1; any; }; key "key-name"; };
 </code> </code>
  
 Das ist grob die syntaktisch etwas verbastelte Ansage: Das ist grob die syntaktisch etwas verbastelte Ansage:
-"Sperre (!), was die folgende Bedingung erfüllt: + 
-        NICHT (!) 10.0.0.1 + Sperre (!), was die folgende Bedingung erfüllt: 
- oder  + NICHT (!) 10.0.0.1 
- beliebig (any) + oder  
-+ beliebig (any) 
 +  
 Damit werden alle Requests abgewiesen, die NICHT 10.0.0.1 entsprechen, Damit werden alle Requests abgewiesen, die NICHT 10.0.0.1 entsprechen,
 ohne fuer 10.0.0.1 eine Entscheidung getroffen zu haben. ohne fuer 10.0.0.1 eine Entscheidung getroffen zu haben.
 Anschließend kann der Request bei passendem Key verifiziert werden, Anschließend kann der Request bei passendem Key verifiziert werden,
 womit die gewünschte AND-Verknüpfung erreicht ist. womit die gewünschte AND-Verknüpfung erreicht ist.
 +
 +Für ausschliesslichen TSIG-Betrieb ist das ausreichend.
 +
 +=== Alternative Authorisierung mit TSIG oder IP-Adresse ===
 +
 +Soll parallel ebenfalls mit nur der IP-Adresse des Clients 
 +authorisiert werden koennen, ergeben sich zwei Moeglichkeiten:
 +
 +  * die zur Authorisierung hinreichenden IP-Adressen werden vorgenannt:
 +
 +<code>
 + allow-transfer { 
 + 10.0.1.1; 
 + 2000:1:1::1; 
 + !{ !10.0.0.1; any; }; key "key-name";
 + };
 +</code>
 +
 +  * der Ausdruck fuer den Key wird gekapselt:
 +
 +<code>
 + allow-transfer { 
 + { !{ !10.0.0.1; any; }; key "key-name"; };
 + 10.0.1.1; 
 + 2000:1:1::1; 
 + };
 +</code>
 +
 +=== Authorisierung fuer mehrere IP-Adressen mit dem selben Key ===
 +
 +<code>
 + allow-transfer { 
 + !{ !10.0.0.1; !10.0.0.2; any; }; key "key-name";
 + };
 +</code>
  
 ==== Namen der Schlüssel ==== ==== Namen der Schlüssel ====
Line 74: Line 111:
 Ich habe mich schließlich entschieden für das Schema: Ich habe mich schließlich entschieden für das Schema:
 <code> <code>
- k..<mydnsfqdn>..<remotednsfqdn>+ k..<mydnsfqdn>--<remotednsfqdn>
 </code> </code>
 für einzelne Secondary-DNS bzw. für multiple Secondaries: für einzelne Secondary-DNS bzw. für multiple Secondaries:
Line 80: Line 117:
  k.<mydnsfqdn>--<remotedomain>  k.<mydnsfqdn>--<remotedomain>
 </code> </code>
 +
 +Das Trennstring "<nowiki>--</nowiki>" ergab sich aus der Anforderung, die Domainnamen voneinander zu trennen.
  
 ===== Erzeugen und Ausrollen der TSIG Keys ===== ===== Erzeugen und Ausrollen der TSIG Keys =====
 +
 +** Dies sind Notizen, die ich waehrend der Einrichtung gemacht habe, **
 +** diese sind nicht unbedingt korrekt oder vollstaendig!  **
 +
 +Auf dem Primary DNS:
  
 <code> <code>
-AXFRSERVER="ns.citecs.de+AXFRSERVER="ns.mydoma.in
-AXFRSERVERIPS="212.9.165.46 2001:14b0:203:4000::6e73" +AXFRSERVERIPS="10.0.0.1 fc00::6e73" 
-AXFRCLIENT="LF.net" +AXFRCLIENT="provider.net" 
-AXFRCLIENTIPS="62.50.111.2 62.50.111.2 213.178.170.2"+AXFRCLIENTIPS="10.1.0.1 10.2.0.1 10.3.0.1"
 KEYID="k.$AXFRSERVER--$AXFRCLIENT" KEYID="k.$AXFRSERVER--$AXFRCLIENT"
 echo $KEYID echo $KEYID
Line 113: Line 157:
 }; };
 // only the secondary needs those // only the secondary needs those
-// but so we have one file for both roles+// but so we have one file generated for both roles
 EOF EOF
 for i in $AXFRSERVERIPS ; do for i in $AXFRSERVERIPS ; do
Line 126: Line 170:
  
 vo /etc/bind/named.conf.local vo /etc/bind/named.conf.local
- +include "/etc/bind/k.ns.citecs.de--LF.net";+ +include "/etc/bind/k.ns.mydoma.in--provider.net"; 
 + 
 +vo /etc/bind/named.conf.local 
 + acl zone-xfer-allowed { 
 + +{ !{ 
 + + !10.1.0.1; // from $AXFRCLIENTIPS 
 + + !10.2.0.1; // from $AXFRCLIENTIPS 
 + + !10.3.0.1; // from $AXFRCLIENTIPS 
 + + any; // catchall 
 + +}; key "k.ns.mydoma.in--provider.net"; }; 
 + 
 +# load new config: 
 +rndc reconfig
  
-... to be continued... 
 </code> </code>
 +
 +Auf den Secondary DNS:
 +
 +  * Kopieren der Datei /etc/bind/k.ns.mydoma.in--provider.net vom Primary DNS
 +
 +<code>
 +AXFRSERVER="ns.mydoma.in"
 +AXFRCLIENT="provider.net"
 +KEYID="k.$AXFRSERVER--$AXFRCLIENT"
 +echo $KEYID
 +
 +vo -o /etc/bind/k.ns.mydoma.in--provider.net
 +sed -i 's:^//#::' /etc/bind/k.ns.mydoma.in--provider.net
 +vo -i /etc/bind/k.ns.mydoma.in--provider.net
 +
 +vo /etc/bind/named.conf.local
 + +include "/etc/bind/k.ns.mydoma.in--provider.net";
 +
 +# load new config:
 +rndc reconfig
 +
 +</code>
 +
  
project/dns-axfr-tsig.1478718801.txt.gz · Last modified: 2016/11/09 20:13 by 37.209.107.175