Asi už ani nemá smysl psát, že mi AI s něčím pomohla, protože její asistence je koloritem současného světa softwarového vývoje. Roští má spoustu míst, které by si zasloužily desítky hodin vývoje, ale zároveň nemá moc ekonomický smysl se do toho pouštět. AI tohle mění a tento týden to je podpora pro DNSSEC.
Na Roští.cz sice neregistrujeme domény, ale hostujeme DNS zóny. O ty se stará služba s generickým názvem dnsapi, na kterou se nesáhlo cca od roky 2020, kdy se její business logika odtrhla od administrace a začala éra makroservisní architektury.
To byl na jednu stranu dobrý krok, na druhou měl jednu dětskou bolest - vazba mezi účtem a zónou byla v administraci. Architektonicky to není dobré řešení. Místo toho, aby administrace volala jen API dnsapi, řešila na své straně komu vlastně zóna patří.
Tenhle problém je tam na více místech a tak když už se v tom hrabu, tak jsem si řekl, že to překopu. S tímhle ale nastává další problém. Pokud zóny nemají model v Djangu, tak Django pro ně negeneruje administraci. To se v dnešní době ukázalo jako menší problém než před pěti lety:

No a když byla administrace, tak proč nezkusit implementovat i DNSSEC.

Podpora v Bindu je dnes perfektní. DNSSEC se zapne v konfiguračním souboru u konkrétní zóny a Bind se postará o zbytek.

Funguje to tak, že Bind vygeneruje klíč a začne podepisovat odpovědi pro resolvery. U registrátora je pak potřeba přidat DS záznam s klíčem, který naváže řetězec důvěry s root servery.
Máme k tomu i stránku v naší dokumentaci.
Teď už zbývá jen přesunout Bind do kontejnerů a zmigrovat data, což máme naplánováno na noc ze středy na čtvrtek.