DNSSec

From
Revision as of 22:51, 28 September 2011 by Fehr (talk | contribs)
Jump to navigation Jump to search

rfcliste zu dnssec: http://www.dnssec.net/rfc

rfcliste zu dns: http://www.bind9.net/rfc


DNSSEC:

zwei unterschiedliche ansaetze:

  • komplette chain-of-trust von root zu jeweiliger zone
  • "schatten-dns" ueber dlv.isc.org

benutzte tools: bind 9.7.3 dig dnssec-tools validator (debianpaket in stable veraltet, selbst compilieren)


beispiele:

- validierung klappt ueber dlv aber nicht ueber "normal"


drill:

trust key erstellen: dig +dnssec -t DNSKEY dlv.isc.org >> dlv.trusted.key alles rausloeschen ausser: "dlv.isc.org. IN DNSKEY 257 ....." (die zahl zwischen dlv.isc.org und IN muss auch weg) drill -DS dlv.isc.org -k dlv.trusted.key

drill stecker rausziehn reagiert anders als dig


a.xxx.schlittmann.de :lookaside example


pro zone 1 oder mehr keys - darf zur zeit nur RSASHA1 sein: bind 9.7 manual 4.8.1: It is recommended that zone keys use a cryptographic algorithm designated as ”mandatory to implement” by the IETF; currently the only one is RSASHA1. The following command will generate a 768-bit RSASHA1 key for the child.example zone: dnssec-keygen -a RSASHA1 -b 768 -n ZONE child.example.


openssl base64 -e -in dateimitgeheimnis >> dateimitgeheimnisbase64

dnssec-keygen -a HMAC-MD5 -b 128 -n HOST kudamm.chaos.local


http://dnsviz.net/d/heise.de/dnssec/


erste config wieder zurueck gespielt

dig +dnssec -t DNSKEY chaos.local |grep 257 > trusted_chaos

trusted chaos bearbeiten

dann drill -DS mitte.chaos.local -k trusted_chaos

CHASE SUCCESSFUL  :)


dhcpd laeuft, verteilt eine ip .2.101 ... marzahn kabel umgesteckt, per dhclient eht0 die ,2.101 holen lassen, leasetime 60 sek, ip bekommen geht, dnsupdate klappt noch nicht, key und acl muessen noch angepasst werden

eigene zone fuer .2.101: "dyn.chaos.local", reverse muss noch angepasst werden


updatedienst mit key versorgen rndc -s localhost -k /etc/bind/rndc.key reload

falls "forward map from ... FAILED: Has an address record but no DHCID, not mine." in dhcpd.conf hinzufuegen: update-conflict-detection false;


dnssec-keygen -P now -A now+10mi -I now+1h -D now+2h -b 512 -r /dev/urandom -K /etc/bind/chaos.keystrore/ chaos.local #urandom dev ohne randomness (geht schnell bringt aber nicht viel)

dann rndc loadkeys chaos.local (sonst passiert nix)


dig +dnssec -t DNSKEY chaos.local @localhost


neue ip (leaseverlaengerung und dnsaktualisierung) auf mahrzahn - neumarzahn: dhclient -i eth0 (in der dhcpclientconfig muss senthostname gesetzt sein (nur hostname, nicht fqdn)


http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s2-bind-rndc.html http://stats.research.icann.org/dns/tld_report/


(urandom nur zum testen benutzen!)

  • /10 * * * * bind ( dnssec-keygen -P now -A now+2mi -I now+4mi -D now+6mi -b 512 -r /dev/urandom -K /etc/bind/chaos.keystore/ chaos.local & rndc loadkeys chaos.local & rndc sign chaos.local)
  • /1 * * * * root ( dig +dnssec -t DNSKEY chaos.local @localhost >> /tmp/`date +\%s` )
  • /1 * * * * root ( dig +dnssec mitte.chaos.local @localhost >> /tmp/`date +\%s` )