Už nějaký ten rok spravuju rekurzivní/autoritativní nameservery v práci. Jaký linuxový správce by neznal BIND, že? Napadlo mne, že si zkusím pohrát s technologií DNSSEC, která mne prozatím úplně minula. Vždyť to nemůže být tak složité - nebo může?
U Wedosu jsou si koupil v akci FUN doménu za necelých 17,- Kč s DPH na 1 rok. Na nějaké otestování a pochopení problematiky to bohatě stačí. Ve virtualizaci jsem si rozjel 2 VPS (Rocky Linux 9) s veřejnými IP adresami, nastavil démona BIND jako autoritativní nameserver (primární + sekundární). Vytvořil jsem si zónový soubor a otestoval dotazování z Internetu a synchronizaci mezi primárem a sekundárem při změnách. Vše fungovalo výborně. Níže definice zóny v named.conf:
zone "example.fun" IN { type master; file "example.fun.zone"; };
A zde výpis zóny samotné (ty IP moc vážně neberte, v praxi to mám v pořádku):
$ORIGIN example.fun. $TTL 3600 @ IN SOA ns1.example.fun. hostmaster.example.fun. ( 2025042302 ; serial 14400 ; refresh after 4 hours 3600 ; retry after 1 hour 604800 ; expire after 1 week 14400 ) ; minimum TTL of 4 hours IN NS ns1.example.fun. IN NS ns2.example.fun. ns1 IN A 8.8.8.8 ns2 IN A 8.8.4.4 @ IN A 1.1.1.1 www IN CNAME example.fun. ...
Jelikož jsem do té doby o technologii DNSSEC mnoho nevěděl, musel jsem si najít nějaké základní informace. Našel jsem velké množství článků na toho téma - třeba na root.cz jich je požehnaně. Ale asi nejvíc se mi líbil slajd DNSSEC na vlastní doméně snadno a rychle.pdf od Ondřeje Caletky, kde je vše hezky krok za krokem vysvětleno. Z něj jsem čerpal informace:
Napřed jsem si vytvořil adresář pro klíče:
# mkdir /etc/named/keys # cd /etc/named/keys
Vygeneroval klíče:
# dnssec-keygen -a ECDSAP256SHA256 -fK example.fun
Nastavil možnost čtení pro démona BIND:
# chmod g+r K*.private # chown root:named -R /etc/named/keys
Upravil definici zóny v named.conf:
zone "example.fun" IN { type master; file "example.fun.zone"; inline-signing yes; auto-dnssec maintain; key-directory "/etc/named/keys"; };
Po reloadu se zóna podepisovala, vytvořily se příslušné datové soubory. Ještě bylo nutné dát vědět registrátorovi domény, že chci používat DNSSEC, proto jsem u něj zavedl DS (Delegation Signer) záznam:
# dnssec-dsfromkey /etc/named/keys/Kexample.fun.+013+12471.key example.fun. IN DS 12471 13 2 DA9E5BC9B7721A18F77..
Nastavení DNSSEC u Wedosu
Za zmínku ještě stojí přechod z NSEC na NSEC3:
# rndc signing -nsec3param 1 0 0 - example.fun
A pro kontrolu jsem to projel přes nástroj ZONEMASTER a DNSSEC debugger. Vše OK. Doporučuju si to ještě pořádně nastudovat než jen slepě kopírovat nějaké příkazy - já si zakoupil knihu Domain Name System: Principy fungování DNS a praktické otázky spojené s jeho používáním (z edice CZ.NIC - autoři Pavel Satrapa a Ondřej Filip) a při chvilkách se nořím do tajů DNS...
Tweetštítky: bezpečnost bind dns dnssec linux šifrování
63x přečteno
Copyright © 2015-2025 SOCL.cz, RSS 2.0
Všechna práva vyhrazena, nebo tak nějak.