bind não funcionaria, a menos que a consulta de permissão seja "qualquer"

13

Eu tenho isso no /etc/named.conf, comentei os valores padrão e defini os meus sob ele. Meu domínio não carregaria no navegador, a menos que eu defina a consulta de permissão como "qualquer". Isso está correto, o que devo editar? Se é localhostou o 127.0.0.1; 10.0.1.0/24;domínio não carregaria. Eu tentei o 127 .. porque mencionou aqui: http://wiki.mandriva.com/en/Testing:Bind

A versão de ligação é 9.7.0-P2-RedHat-9.7.0-5.P2.el6_0.1 OS é o CentOS 6.0.

options {
        // listen-on port 53 { 127.0.0.1; };
        listen-on port 53 { any; };
        //listen-on-v6 port 53 { ::1; };
        listen-on-v6 port 53 { any; };
        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; };
        allow-query     { any; };

        recursion yes;

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

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

Respostas:

13

Quando você escuta 127.0.0.1 ou localhost ou :: 1 e / ou permite a consulta apenas a partir de localhost, o bind responderá apenas às consultas originadas no mesmo computador que executa o bind. (Definiu-se dessa maneira em "teste", provavelmente porque eles provavelmente apenas pretendiam testar se a ligação funciona sem abri-la para fora por motivos de segurança.)

É normal definir esses itens como "any" para que possam ser acessados ​​de fora.

Sandman4
fonte
Alguns artigos online mencionaram que ele pode ser exposto a ataques do DOS, se "houver". Se eu entendi corretamente.
Adriantnt
1
Bem, mesmo se isso é verdade, sem "qualquer" não vai funcionar;)
Sandman4
1
Btw, qual é o seu propósito de servidor? É autoritário apenas para alguns da sua zona? Quem deve poder acessar seu servidor?
Sandman4
É um site de hospedagem de imagens, hospedará vários domínios no mesmo IP. O domínio está no godaddy, onde defini dois "hosts" ns1.domain ns2.domain e associei esses NS ao IP do meu servidor.
Adriantnt
1
Ok, por isso deve ser acessível a partir do exterior. Portanto, deve ser "qualquer". E é melhor você definir "recursão não" se tiver medo de ataques. Mas godaddy não fornece servidores de nomes para você?
Sandman4
3

Se o seu servidor DNS for um servidor de armazenamento em cache local, defina

allow-query { <your subnet>; }; 

em opções. E, em cada zona:

allow-query { any; };

Se você não o estiver usando como servidor de armazenamento em cache, defina-o em options como none;

allow-query { none; };

Basicamente, você não deseja que seu servidor responda a domínios nos quais você não é autoritário.

rsd
fonte
-3

Tenha cuidado - isso não é verdade:

Se você não o estiver usando como servidor de armazenamento em cache, defina-o em options como none;

allow-query { none; };

Esse servidor não responde a nenhum pacote, mesmo para domínios para os quais é autoritário.

Dalibor Straka
fonte