Como faço para restringir o nome de domínio para atualizações reversas de DNS com bind e nsupdate?

1

Eu configurei o Bind para permitir que os hosts atualizem apenas suas próprias entradas de DNS, mas estou tendo problemas com a parte DNS reversa disso. Minha configuração é a seguinte:

named.conf

options {
    listen-on port 53 { 127.0.0.1; 10.9.10.10; };
    directory       "/var/named";
    dump-file       "/var/named/data/cache_dump.db";
    statistics-file "/var/named/data/named_stats.txt";
    memstatistics-file "/var/named/data/named_mem_stats.txt";
    allow-query     { localhost; 10.0.0.0/8; };
    recursion yes;
    allow-recursion { 10.0.0.0/8; };

    dnssec-enable yes;
    dnssec-validation no;
    dnssec-lookaside auto;

    /* Path to ISC DLV key */
    bindkeys-file "/etc/named.iscdlv.key";

    managed-keys-directory "/var/named/dynamic";
};

logging {
    channel default_debug {
            file "data/named.run";
            severity dynamic;
    };
};

zone "." IN {
    type hint;
    file "named.ca";
};

include "mydomain.com.keys";
zone "mydomain.com" IN {
    type master;
    file "dynamic/forward.mydomain.com.zone";
    update-policy {
            grant *.mydomain.com self *.mydomain.com A TXT;
    };
};

zone "9.10.in-addr.arpa" IN {
    type master;
    file "dynamic/reverse.mydomain.com.zone";
    update-policy {
            grant * tcp-self * PTR;
    };
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

mydomain.com.keys

key myserver1.mydomain.com. {
    algorithm HMAC-SHA512;
    secret "blahblahblah";
};
key myserver2.mydomain.com. {
    algorithm HMAC-SHA512;
    secret "blahblahblah";
};

O que está funcionando bem

A configuração mydomain.com zone impede que os servidores atualizem as entradas de DNS que não pertencem a eles:

[root@myserver1 ~]# nsupdate -v -k Kmyserver1.mydomain.com.+165+55228.key
> server dns1.mydomain.com
> zone mydomain.com
> update add myserver2.mydomain.com 86400 A 10.9.10.50
> show
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; ZONE SECTION:
;mydomain.com.                        IN      SOA

;; UPDATE SECTION:
myserver2.mydomain.com. 86400   IN      A       10.9.10.50

> send
update failed: REFUSED

Essa imposição é obtida por meio da chave especificada no comando nsupdate . O Nsupdate retira o segredo do arquivo Kmyserver1.mydomain.com.+165+55228.key e o envia para o Bind. O Bind localiza o segredo correspondente em mydomain.com.keys e valida o nome da chave em relação ao nome do domínio que você está tentando atualizar.

O que não está funcionando bem

Mas as configurações para a zona inversa ( 9.10.in-addr.arpa ) não parecem restringir as atualizações com base no nome da chave que foi usada para fazer a atualização reversa do DNS.

[root@myserver1 ~]# nsupdate -v -k Kmyserver1.mydomain.com.+165+55228.key
> server dns1.mydomain.com
> zone 9.10.in-addr.arpa
> update add 50.10.9.10.in-addr.arpa 86400 IN PTR myserver2.mydomain.com
> show
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags:; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; ZONE SECTION:
;9.10.in-addr.arpa.             IN      SOA

;; UPDATE SECTION:
50.10.9.10.in-addr.arpa. 86400 IN     PTR     myserver2.mydomain.com.

> send
> ^C
[root@myserver1 ~]# nslookup 10.9.10.50
Server:         10.9.10.10
Address:        10.9.10.10#53

50.10.9.10.in-addr.arpa       name = myserver1.mydomain.com.
50.10.9.10.in-addr.arpa       name = myserver2.mydomain.com.

Além disso, tentei configurar a política de atualização da zona reversa para permitir apenas atualizações de endereços específicos (em vez de * ), mas isso não teve efeito sobre o problema.

O que estou tentando fazer

Gostaria de configurar a política de atualização para a 9.10.in-addr.arpa zone para que o exemplo acima seja recusado. Eu só quero servidores para poder atualizar DNS reverso para seu próprio endereço IP e nome de domínio. Eu vasculhei vários sites e não consigo encontrar nenhuma informação sobre como, ou se é possível, configurar a política de atualização para conseguir isso.

A versão do Bind que estou executando é BIND 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6

    
por Syon 12.01.2015 / 17:49

0 respostas