Progressief in techniek, conservatief in beveiliging

Hoewel de gemeente 's-Hertogenbosch zijn hoofddomein nog niet ondertekend heeft, zijn bijvoorbeeld DKIM, SPF en DMARC wel al geïmplementeerd. Hetzelfde geldt voor de validatie van DNSSEC . Als de huidige verbouwing is afgerond zal de DNSSEC-infrastructuur verder worden geconfigureerd. DKIM kan eigenlijk niet zonder DNSSEC-ondertekening.

Hoewel de gemeente 's-Hertogenbosch zijn hoofddomein nog niet ondertekend heeft, zijn veel andere beveiligingstechnologieën wel al geïmplementeerd. Zo is de mail beveiligd met DKIM, SPF en DMARC, waarmee het voor kwaadwillenden veel lastiger is om het sender-adres te vervalsen.

Vernieuwing

Wij waren in Nederland de eerste gemeente die deze drie standaarden invoerden, vertelt R&D specialist Paddy Verberne. Hij was ooit werkzaam bij de Militaire Inlichtingendienst (MID, tegenwoordig MIVD), en hecht daardoor veel meer belang aan informatiebeveiliging dan de gemiddelde gemeentelijke IT-specialist. DKIM kan eigenlijk niet zonder DNSSEC-ondertekening. Maar we zijn op dit moment ons netwerk aan het ombouwen. We hadden altijd een zelf opgebouwd layer-3 [routing] netwerk gebaseerd op Cisco. Na de laatste aanbesteding een aantal jaar geleden zijn we overgestapt naar Avaya/Nortel en werd het een layer-3 VPN. Inmiddels wordt dat omgebouwd naar SPB, de opvolger van MPLS. Zo hebben we een F5 load balancer aangeschaft en zijn we onze DMZ aan het herconfigureren. Daarbij worden ook veranderingen aan de DNS -informatie doorgevoerd, dus die twee projecten willen we niet tegelijk doen.

De ondertekening zelf zou een fluitje van een cent moeten zijn. We gebruiken hier Infoblox appliances, dus dat is een kwestie van aanvinken. Probleem is dat het draaien van een resolver en een autoritatieve server op dezelfde machine niet mag. Bovendien lukt het niet om de appliance zijn ondertekende zone files naar twee externe Linux/Bind-servers te laten sturen voor publicatie. Vandaar dat we nu noodgedwongen twee kleine appliances gaan kopen. De hele set-up is al gemaakt; we hoeven alleen nog te betalen. Maar daar wachten we even mee totdat de aanpassingen aan het netwerk zijn doorgevoerd. Infoblox maakt het niet altijd even makkelijk om met andere systemen te combineren, maar de meeste problemen worden veroorzaakt door de complexiteit van ons netwerk. Het terugdringen daarvan is dan ook een belangrijke reden voor de huidige vernieuwingsslag.

Validatie

Voor de validatie van DNSSEC is Verberne inmiddels uitgeweken naar een cluster van twee resolvers gebaseerd op Unbound. We hebben nog ook even naar PowerDNS gekeken — die biedt een aparte resolver — maar uiteindelijk toch voor Unbound gekozen. Die werkt goed en je hebt er geen omkijken naar. We hebben daarvoor twee Linux-systemen achter de load balancer gezet. Die draaien de test-distributie van Debian (jessie), omdat we de software van de stable release te veel verouderd vonden. Ik ben een warm voorstander van één service per systeem, vanwege de veiligheid en omdat je bij problemen makkelijk een reboot kunt geven. Ter controle hebben we een statisch record ingebouwd, dat elke seconde vanuit de load balancer gepolled wordt.

Van validatieproblemen heeft Verberne helemaal geen last. We valideren nu ruim twee maanden, en in die tijd hebben we nog geen enkele melding gehad. We hebben hier zo'n duizend gebruikers, goed voor meer dan 600 duizend queries per dag. Het totaal aantal fouten op DNS is minder dan één promille. Wel hebben we de resolving voor IPv6 uit moeten zetten. Er blijken zo veel IPv6-adressen nog wel in de DNS te staan maar niet meer beschikbaar te zijn, dat dat behoorlijk wat telefoontjes opleverde. Als ons netwerk weer helemaal op orde is, gaan we hier opnieuw naar kijken. Uiteindelijk moeten al onze clients zelf gaan valideren.

Tijdsynchronisatie

Belangrijk aandachtspunt bij de invoering van DNSSEC is de synchronisatie van de systeemtijden. Waar het traditionele DNS-systeem alleen met relatieve timing werkt (TTL's), hebben de digitale handtekeningen (RRSIG records) en sleutelparen immers een absolute geldigheidsduur. Dat betekent dat alle systemen in de DNS-infrastructuur van een NTP-client moeten worden voorzien.

Hoewel de Infoblox appliances zelf ook NTP ondersteunen, wordt daar in 's-Hertogenbosch geen gebruik van gemaakt. Wij hebben twee eigen Stratum-1 satellietsystemen geplaatst, vertelt Verberne. Dat kost een paarduizend euro, maar voor ons is dat een goede lange-termijn-investering in de veiligheid. Bovendien hebben we die twee NTP-servers vooralsnog ook publiek beschikbaar gemaakt.

Randvoorwaarden

Uitgangspunt voor alles wat we hier doen zijn steeds de betrouwbaarheid, beschikbaarheid en veiligheid van onze infrastructuur, aldus Verberne. Daar wordt ik ook op afgerekend. Op basis daarvan scheppen we de randvoorwaarden voor de applicaties. Die zijn vastgelegd in een technisch architectuur-document dat voor we voor elke aanschaf naar de leverancier sturen.

Onze prioriteiten en investeringen bepalen we op basis van risico's: de kans dat iets gebeurt vermenigvuldigd met de ernst daarvan. Gelukkig kan ik met mijn technische argumenten goed terecht bij onze security officer. Zo zijn we onlangs overgestapt op PKI Overheidscertificaten van 4096 bits. Die dingen hebben tenslotte een geldigheidsduur van drie jaar.

Als onderdeel van de vernieuwing hebben we ook een IDS/IPS-systeem in de kern van ons netwerk geplaatst. Die wordt nu afgeconfigureerd. Op elke server draaien we een firewall en een virusscanner. En op elk van de meer dan duizend VDI-werkplekken draait McAfee Move.

Gedwongen winkelnering

Als R&D specialist heeft Verberne geen tijd om zelf oplossingen te bouwen of te onderhouden. Ik ben vooral bezig om uit te zoeken welke technologieën in onze gemeente toepasbaar en gewenst zijn. Daarvoor zoek ik veel uit en zet ook veel op. Voor mij is het belangrijk om het protocol door te hebben. Open source software is dan heel geschikt om zo'n nieuwe technologie te begrijpen en in de vingers te krijgen. Maar uiteindelijk moet het in productie, en dus ook praktisch zijn. Dan wordt dus een nieuwe afweging gemaakt op basis van Total Cost of Ownership (TCO). Daar gaat het om de lange termijn en de veiligheid van onze informatie. Burgers zijn verplicht bij ons "te winkelen", dus moeten ze er op kunnen vertrouwen dat hun gegevens niet op straat komen te liggen.