Voorbereiden voor DNSSEC

Hoewel DNSSEC eigenlijk op mijn todo-lijst stond voor over een paar maanden als PowerDNS daadwerkelijk ondersteuning zou krijgen, maar helaas is daar verandering in gekomen door recente ontwikkelingen. Zeker nadat er serieuze problemen zijn ontdekt waardoor vrij snel nameservers die acteren als resolver kunnen worden voorzien van valse data. En hoewel er voorlopig tijdelijke oplossingen zijn is een echte oplossingen eigenlijk alleen DNSSEC.

Aangezien DNSSEC ondersteuning bij PowerDNS en NSD beperkt is blijft voorlopig alleen Bind over als bruikbare optie aangezien het wel crossplatform moet werken. Bind is en blijft de defacto-standaard op bijna elke Unix-platform zoals HP-UX, Solaris, AIX, BSD en vele Linux-distributies. Ook omdat dit de referentie implementatie is van bijna elke RFC gerelateerd aan DNS.

Een eerste probleem dook al op bij de eerste testen, want goede entropy gaat een probleem vormen. De normale pseudogenerator voor deze getallen is blocking totdat er weer voldoende random getallen zijn, maar helaas kan het dus even deuren voordat er onvoorspelbare sleutels zijn. Een alternatief is om de non-blocking pseudogenerator te gebruiken welke vrij snel getallen kan opleveren, maar deze kunnen voorspelbaar zijn door hergebruik van oude getallen. Als dit laatste gebeurt zijn we weer terug af bij waar we begonnen zijn met de huidige DNS-problemen.

Voor deze problemen zal een oplossing moeten worden gezocht welke hoogstwaarschijnlijk in de vorm van hardware zal gaan zijn om aan de vraag van willekeurige getallen te kunnen voldoen. De eerste apparaten die lijken te voldoen zijn ongeveer 100 euro per stuk wat een redelijke prijs is. Nu wordt het uitzoeken of deze worden ondersteunt onder oa Linux en Solaris, maar hopelijk zijn er andere oplossingen zeker nu het kernel cryptographic framework vormt heeft gekregen in Solaris 10.