| 76 | rodolico | 1 | See https://dnns.no/dynamic-dns-with-bind-and-nsupdate.html
 | 
        
           |  |  | 2 |   | 
        
           |  |  | 3 | Install the bin directory someplace (ie, /opt/bin) and definitely most
 | 
        
           |  |  | 4 | definitely, set ownership and permissions very, very strict.
 | 
        
           |  |  | 5 |   | 
        
           |  |  | 6 | Now, in ~root/.ssh/authorized_keys, create an entry similar to this:
 | 
        
           |  |  | 7 |   | 
        
           |  |  | 8 | command="/opt/bin/updatedns", ssh-rsa AAAAB3NzaC.... root@servername
 | 
        
           |  |  | 9 |   | 
        
           |  |  | 10 | where everything after the comma+space (you MUST have the space) is a key
 | 
        
           |  |  | 11 | from the machine allowed to do updates. That ssh key must be able to connect
 | 
        
           |  |  | 12 | with no password.
 | 
        
           |  |  | 13 |   | 
        
           |  |  | 14 | bin/keys/ must contain the rndc keys that allow us to talk to the BIND
 | 
        
           |  |  | 15 | server.
 | 
        
           |  |  | 16 |   | 
        
           |  |  | 17 | Following must be in /etc/bind/named.conf.local. Teh slave_server_1 & 2 are
 | 
        
           |  |  | 18 | the IP's of the slaves to be updated when an IP changes. The zone file will
 | 
        
           |  |  | 19 | be kept in /etc/bind/DYN/domain.name.dns (replace with your real domain
 | 
        
           |  |  | 20 | name)
 | 
        
           |  |  | 21 | ======================================================
 | 
        
           |  |  | 22 | include "/etc/bind/keys.conf";
 | 
        
           |  |  | 23 |   | 
        
           |  |  | 24 | zone "dyndd.net" {
 | 
        
           |  |  | 25 |    type master;
 | 
        
           |  |  | 26 |    file "DYN/domain.name.dns";
 | 
        
           |  |  | 27 |    allow-update {
 | 
        
           |  |  | 28 |       key dyndd.net. ;
 | 
        
           |  |  | 29 |    };
 | 
        
           |  |  | 30 |    allow-transfer { slave_server_1; slave_server_2;  };
 | 
        
           |  |  | 31 |    also-notify { slave_server_2;  };
 | 
        
           |  |  | 32 | };
 | 
        
           |  |  | 33 | =======================================================
 | 
        
           |  |  | 34 |   | 
        
           |  |  | 35 | /etc/bind/keys.conf contains
 | 
        
           |  |  | 36 | =======================================================
 | 
        
           |  |  | 37 | key dyndd.net. {
 | 
        
           |  |  | 38 |    algorithm HMAC-MD5;
 | 
        
           |  |  | 39 |    secret "a key that was generated==";
 | 
        
           |  |  | 40 | };
 | 
        
           |  |  | 41 | =======================================================
 | 
        
           |  |  | 42 |   |