Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Dnssec 2015
1. DNSSEC I NORGE
En slags presentasjon...
Dato: 2015-02-26
Forfatter: Eivind Olsen <eivind@aminor.no>
This work is licensed under a
Creative Commons Attribution 4.0 International License.
2. OM FORFATTEREN
● Alder: gammel nok
● Jobb: Right Consulting
● Interesser: IT. Og øl. Ikke nødvendigvis i den
rekkefølgen
● Svakheter: Mange. Kan ikke lage slides
● Disclaimer: Har tidligere vært ansatt i noen av
firmaene som omtales
3. DNSSEC?
● Hva er DNSSEC?
– Nevnt i mitt tidligere foredrag i 2011, men...
– Kryptografisk sikring av at DNS-data er autentiske
(«anti-spoofing»).
– Skjuler ikke innholdet i DNS-trafikken, pakkesniffing vil
fortsatt fortelle hvilket snusk du surfer til.
– Påkrevd for DANE (DNS-based Authentication of
Named Entities)
● SSL/TLS-sertifikat som ikke trenger komme fra Thawte & Co
4. DNSSEC: 2 SIDER
● Signering av innhold i DNS
– Skjer på autorative navnetjenere
● (ja, jeg vet dette er noe forenklet)
● Validering (av at DNSSEC-signert innhold ikke
er tuklet med)
– Skjer på rekursive navnetjenere
● (kan kjøre lokalt på hvert endepunkt/server)
5. DNSSEC: SIGNERING
● Rot-sonen ble signert 2010-07-15
● ...så gikk det noen år...
● .no ble 2014-12-09 åpnet for at «alle» kan
aktivere DNSSEC-signering på sine .no
domener
– (forenkler litt, ser bort fra ISC sin DLV-tjeneste, som
har blitt mindre og mindre relevant)
6. DNSSEC SIGNERING: VEKST
● Flere
DNSSEC-
domener enn
totalen i
desember
2015!
● (Lies, damn
lies, and
statistics...)
7. DNSSEC: VALIDERING
● Utføres på rekursive navnetjenere, og det finnes mange.
– ISP / nettleverandør
– Åpne resolvere (Google Public DNS, OpenDNS osv.)
– Kontornett / hjemmenett med egen navnetjener
– CPE o.l.
– Lokalt på din egen PC, server
– Osv...
● Litt for mange på listen over, men la oss se nærmere på
noen av disse...
8. DNSSEC VALIDERING: ISPer
● Noen utfører validering:
– Get
– Altibox / Lyse
– Google Public DNS
● Andre gjør det ikke:
– Telenor Online / Canal Digital / Telenor Mobil
– NextGenTel
– BKK Bredbånd
– Powertech
– OpenDNS
● Disclaimer: kontrollert siste uken, med alle mulige forbehold om feil
9. HVORDAN KOMME I GANG
● Ikke veldig vanskelig (i utgangspunktet...)
● http://users.isc.org/~jreed/dnssec-
guide/dnssec-guide.html
● Kan få en overraskelse når du oppdager at
nettverksfolkene dine tror DNS kun er UDP-
pakker på maks 512 bytes
10. KOMME I GANG: VALIDERING
● Om du bruker BIND 9 kommer du langt med å
legge til 1 linje i named.conf, i options-blokken:
dnssec-validation auto;
11. KOMME I GANG: SIGNERING
● Opprett nøkler:
mkdir -p /etc/bind/keys/example.com
cd /etc/bind/keys/example.com
dnssec-keygen -a RSASHA256 -b 1024 example.com
dnssec-keygen -a RSASHA256 -b 2048 -f KSK example.com
● Fortell BIND at du vil ha inline-signing, automatisk, i named.conf:
zone «example.com» IN {
type master;
file «db/example.com.db»;
key-directory «keys/example.com»;
inline-signing yes;
auto-dnssec maintain;
};
12. MEN... CHAIN OF TRUST?
● Hent ut hashen av KSK'en din:
dnssec-dsfromkey -a SHA-256 Kexample.com.+008+06817.key
example.com. IN DS 6817 8 2 2A5F1DF55D5E64C osv...
● Last opp denne hashen til din registrar slik at du kan få inn DS record
i .no sonen
– Hvordan? Varierer fra registrar til registrar
– Ikke alle norske registrarer støtter DNSSEC enda
● https://www.norid.no/domeneregistrering/registrarliste.php Lar
deg finne hvilke som tilbyr DNSSEC, pr nå er det 26 av 349.
13. LITT AV HVERT
● Du kan ønske å sette begrenset levetid på nøklene
– ...men du må da også huske å fornye disse i tide!
● Beskytt KSK'en din
– ...men den må være tilgjengelig når du skal rulle inn en
ny ZSK
● Domener som feiler DNSSEC-validering vil
generere SERVFAIL-returkode
– Vet helpdesk o.l. om dette, eller vil de automatisk
anbefale å bruke en annen navnetjener?
14. DNSSEC, DANE
● DANE frigjør oss fra CA-basert sertifikat-regime
– Kostnad
● Symantec (tidl. Verisign) pusher «Secure Site Pro with EV» for $1499 pr år.
– Sikkerhet
● Certificate store i en vanlig nettleser eller sentralt i et OS har gjerne godt over
100 sertifikat. Stoler du på alle disse?
– DigiNotar?
– Comodo?
– ...og hva med Superfish?
– DANE:
● Du lager sertifikat
● Andre kan stole på det fordi: publiser hash i DNS, bruk DNSSEC
15. RULLE UT DANE
● Finn hashen av sertifikatet:
openssl x509 -noout -fingerprint -sha256 <
server.crt | tr -d :
SHA256 Fingerprint=294874DA37814 osv...
● Legg inn TLSA record i DNS
_443._tcp.www.example.com. 3600 IN TLSA 3
0 1 294874DA37814 osv...
16. TLSA RECORD?
_443._tcp.www.example.com. 3600 IN TLSA 3 0 1 294874DA37814
osv...
● _443._tcp = dette gjelder for HTTPS (443/TCP)
●
www.example.com = hostnavnet
●
«3 0 1» er litt vesentlig
– Første feltet = usage (3 = DANE-EE, Domain Issued Certificate)
– Andre feltet = selector (0 = Cert: Use full certificate)
– Tredje feltet = matching-type (1 = SHA-256 hash)
●
https://www.huque.com/bin/gen_tlsa
17. DANE ER KONGE! (DRONNING?)
● Ulemper med DANE
– Ikke mange som bruker det (enda), men noen
hederlige unntak er det
● Postfix
● Firefox, Safari, Opera, Chrome, Internet Explorer (foreløpig
må disse ha en plugin)
– For å kunne stole på DANE: DNSSEC-validering
● Ikke nok utbredt enda, men det kommer...
– Mulig å gjøre feil (men det gjelder vel det meste som
involverer sertifikat?)...