Jak zprovoznit DNSSEC

Zprovoznění DNSSEC na vlastním serveru

Pro zprovoznění DNSSEC je potřeba provést na svém rekurzivním DNS serveru dva kroky:

  • zapnutí DNSSEC validace
  • konfigurace bodu důvěry. To se provede nastavením klíče nebo otisku klíče jenž je vrcholem řetězce důvěry pro všechny ověřované záznamy. Příslušný klíč je možné získat z přímo z DNS, pro ověření jeho pravosti publikuje správce příslušné domény otisky tohoto klíče (DS záznamy) na svých stránkách. Pro doménu .cz a doménu 0.2.4.e164.arpa je tímto bodem důvěry klíč kořenové zóny, jehož pravost je možné ověřit přes webové stránky organizace IANA .

Pro servery BIND a UNBOUND se zapnutí DNSSEC validace přes klíč kořenové domény provede následujícím způsobem (pro doménu e164.arpa je to stejné, jen je třeba použít jiný klíč).

BIND

Zapnutí DNSSEC a DNSSEC validace se provede přidáním dvou konfiguračních řádků do sekce options v named.conf:

options {
  ...
  dnssec-enable yes;
  dnssec-validation auto;
  managed-keys-directory "/var/lib/named/dyn/"; 
  ...
};

Konfigurace bodu důvěry pro kořenovou zónu je možné provést dvěma způsoby. Pokud máte již BIND-9.7 vložte do konfigurace následující text:

managed-keys {
  "." initial-key 257 3 8 "AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3
+/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kv ArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF
0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+e oZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfd
RUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwN R1AkUTV74bU=";
};

Tím zajistíte automatickou aktualizaci klíče v případě, že bude DNSSEC klíč změněn mechanismem popsaným v RFC5011. Při výměně klíče tak nebude nutný žádný zásah do konfigurace DNS serveru.

Pokud máte starší verzi BIND-9.6 vložte do konfigurace následující text:

trusted-keys {
 "." 257 3 8 "AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3
+/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kv ArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF
0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+e oZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfd
RUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwN R1AkUTV74bU=";
};

UNBOUND

Unbound ve standardním nastavení již má zapnutou podporu pro technologii DNSSEC. Pro konfiguraci pevného bodu důvěry můžete použít celkem tři způsoby konfigurace:

trust-anchor-file: <soubor>

Soubor s důvěrodnými klíči ve formátu standardního zónového souboru. V souboru můžou být buď DS nebo DNSKEY záznamy. Pro kořenovou doménu bude mít soubor následující obsah:

.           86400   IN  DNSKEY  257 3 8 AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3
+/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kv ArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF
0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+e oZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfd
RUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwN R1AkUTV74bU=

Další varianta je klíč vložit rovnou do konfiguračního souboru:

trust-anchor: <"Resource Record">

Klíč musí být v uvozovkách a na jednom řádku. Tato konfigurační volba může být uvedena v konfiguračním souboru vícekrát:

trust-anchor: ".             86400  IN  DNSKEY  257 3 8 AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3
+/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kv ArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF
0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+e oZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfd
RUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwN R1AkUTV74bU="

Poslední způsob používá formát souboru, který je kompatibilní s formátem pro DNS server BIND 9.

trusted-keys-file: <soubor>

Soubor bude obsahovat pouze sekci "trusted-keys:" stejně jako kdybyste konfigurovali server BIND:

trusted-keys {
 "." 257 3 8 "AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3
+/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kv ArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF
0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+e oZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfd
RUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwN R1AkUTV74bU=";
};