Appunti su Bind 9

Update delle zone mediante nsupdate

Configurazione

Per gestire le zone del proprio dns locale mediante nsupdate, la soluzione semplice e` consentire l'update da localhost senza protezione. Occorre configurare Bind per le zone che accettano updates da locale, mettendo dentro ad ogni zona che deve accettare updates una riga cosi`:

 allow-update { localhost; };

Per gestire le zone da remoto, garantendo una sicurezza adeguata, occorre generare delle chiavi da usare con nsupdate lato client e dentro Bind lato server.

dnssec-keygen -a HMAC-MD5 -b 128 -n zone <nome della chiave>
chmod 0600 K<nome della chiave>*

Questa operazione produce due files di nome K<nome della chiave><rusco>.*. Quello che finisce in "private" e` la chiave privata, quello che finisce in "key" e` la pubblica. E` importante che siano chmod 600 altrimenti non va.

key <nome della chiave> {
          algorithm HMAC-MD5;
          secret <la stringa presa dalla chiave pubblica>;
};

allow-update { key <nome della chiave>; };

E` possibile anche mescolare le cose, cosi`:

allow-update { key <nome della chiave>; localhost; };


Uso di nsupdate

Per aggiungere un host (risoluzione diretta), si puo` fare cosi`:

> server localhost  (oppure il nome del server remoto a cui ci si collega)
> update add hostname.domain.tld. <ttl> A <indirizzo ip> (esempio: update add asterix.kurgan.org. 36000 A 62.123.154.75)
> send

Se non si ricevono errori, l'host e` aggiunto.

Per cancellare un host (risoluzione diretta):

> server localhost  (oppure il nome del server remoto a cui ci si collega)
> update delete hostname.domain.tld. A  (esempio: update delete asterix.kurgan.org. A)
> send