Busca


imprimir pdf

Bind (named) Servidor Dns


rndc


Quando faço um nmap localhost, eis o que vejo:

PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
25/tcp open smtp
53/tcp open domain
80/tcp open http
110/tcp open pop-3
143/tcp open imap
443/tcp open https
953/tcp open rndc
10000/tcp open snet-sensor-mgmt


Este porto rndc é normal ?

Sim. Trata-se de um porto aberto localmente e acessível unicamente via /usr/sbin/rndc. É um software entregue com bind que permite geri-lo, permitindo por exemplo de recarregar as zonas dns (em caso de modificação) :

/usr/sbin/rndc reload

Se obtêm um erro após este comando, é certamente porque a comunicação entre rndc e o servidor bind não é possível (problema de chave).

Neste caso, pode utilizar o comando /usr/sbin/rndc-confgen para obter as linhas a adicionar nos ficheiros de configuração:

/etc/rndc.conf
/etc/named.conf


Para gerar uma chave, pode utilizar o comando seguinte:

/usr/sbin/dnssec-keygen -a HMAC-MD5 -b 512 -n ZONE key

Poderá então recarregar uma zona DNS directamente desde Webmin, pelo ícone "Apply Changes":

Os erros


Se tiver problemas ou erros, deve procurar a origem do problema. Para encontrar a origem, não há nada melhor que ver nos ficheiros de logs. Tem tudo em /var/log/messages.

Método:
Para remover os bugs correctamente, abra 2 consolas ssh na sua maquina. Na primeira consola, lance tail -f, o que lhe permitirá ver os erros em tempo real.

[root@nsXXXX root]# tail -f /var/log/messages | grep named
Oct 3 21:12:26 nsXXXX named[23985]: listening on IPv4 interface lo, 127.0.0.1#53
Oct 3 21:12:26 nsXXXX named[23985]: listening on IPv4 interface eth0, 213.186.XX.XX#53
Oct 3 21:12:26 nsXXXX named[23985]: could not configure root hints from 'named.ca': file not found
Oct 3 21:12:26 nsXXXX named[23985]: loading configuration: file not found
Oct 3 21:12:26 nsXXXX named[23985]: exiting (due to fatal error)
oct 3 21:12:26 nsXXXX named: named startup failed


Na segunda consola, execute os comandos:

[root@nsXXXX root]# /etc/rc.d/init.d/named restart
Paragem de named : [FALHOU]
Arranque de named : [FALHOU]


Sobre o Webmin pode ver isto:
Falha do arranque de BIND: Starting named: [FAILED]

Vou fazer de propósito o restart, porque se o processo ainda estiver a funcionar, será terminado. Aparentemente o stop e o start não queriam funcionar, o que queria dizer que não estavam a ser executados antes, daí não fazerem o restart.

Porquê? A solução está nos logs:

"could not configure root hints from 'named.ca': file not found"

Oct 3 21:12:26 nsXXXX named[23985]: could not configure root hints from 'named.ca': file not found

Aparentemente, o ficheiro named.ca não está aqui (file not found).
Num primeiro tempo, vamos ver o ficheiro de configuração de bind /etc/named.conf

[root@nsXXXX root]# less /etc/named.conf
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
include "/etc/rndc.key";


Está tudo excepto o mais importante: a declaração opções. Vamos então adiciona-las. Devemos editar /etc/named.conf com vi ou pico.

[root@nsXXXX root]# pico /etc/named.conf

e adicionamos ao princípio do ficheiro a declaração das opções com o directório onde se encontram todas as zonas dns :

options {
directory "/var/named";
};


vamos tentar reiniciar ;
[root@nsXXXX root]# /etc/rc.d/init.d/named restart
Paragem de named: [FAILED]
Arranque de named: [OK]


Já está. Ele reiniciou. Vemos os logs para ver se esta tudo ok:

[root@nsXXXX root]# tail -f /var/log/messages | grep named
oct 4 15:01:09 nsXXXX named: Arrêt de named failed
Oct 4 15:01:09 nsXXXX named[29086]: starting BIND 9.2.1 -u named
Oct 4 15:01:09 nsXXXX named[29086]: using 1 CPU
Oct 4 15:01:09 nsXXXX named[29089]: loading configuration from '/etc/named.conf'
Oct 4 15:01:09 nsXXXX named[29089]: no IPv6 interfaces found
Oct 4 15:01:09 nsXXXX named[29089]: listening on IPv4 interface lo, 127.0.0.1#53
Oct 4 15:01:09 nsXXXX named[29089]: listening on IPv4 interface eth0, 213.186.XX.XX#53
oct 4 15:01:10 nsXXXX named: Démarrage de named succeeded
Oct 4 15:01:10 nsXXXX named[29089]: command channel listening on 127.0.0.1#953
Oct 4 15:01:10 nsXXXX named[29089]: zone 0.0.127.in-addr.arpa/IN: loaded serial 1997022700
...
Oct 4 15:01:10 nsXXXX named[29089]: running


Aparentemente, está tudo bem. Também vemos que o servidor dns começou a transferência das zonas para o servidor dns secundário sdns1.ovh.net.

Oct 4 15:01:11 nsXXXX named[29089]: client 212.27.32.132#42227: transfer of 'domain.com/IN': AXFR started
Oct 4 15:01:11 nsXXXX named[29089]: client 212.27.32.132#42228: transfer of 'example.net/IN': AXFR started


Verificamos que o servidor dns responde as solicitações dns com os comandos dig.

[root@nsXXXX root]# dig ovh.pt

; <<>> DiG 9.2.1 <<>> ovh.pt
; global options
printcmd

;; Got answer:
; ->>HEADER<<- opcode
QUERY, status: NOERROR, id: 15984

; flags
qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:
;ovh.pt. IN A
;; ANSWER SECTION:
ovh.pt. 86400 IN A 213.186.33.34
;; AUTHORITY SECTION:
ovh.pt. 86400 IN NS dns.ovh.net.
ovh.pt. 86400 IN NS sdns1.ovh.net.
; Query time
367 msec

; SERVER
213.186.XX.XX#53(213.186.XX.XX)

; WHEN
Sat Oct 4 15:03:58 2003

; MSG SIZE rcvd
83



Tivemos a resposta e ela vem do SERVER : 213.186.XX.XX#53(213.186.XX.XX) então da máquina está tudo correcto.

"could not configure root hints from 'named.ca': permission denied"

Visivelmente, as autorizações não estão correctas. Damos uma vista de olhos em /etc/named.conf para ver em que directório se encontram os ficheiros.

...
zona "dominio.com" {
type master;
file "/etc/dominio.com.hosts";
};


Mesmo problema, falta opções e o ficheiro foi criado em /etc/. Vamos então adicionar opções em /etc/named.conf e deslocar o ficheiro /var/named :

[root@nsXXXX root]# pico /etc/named.conf

Adicionamos opções

options {
directory "/var/named";
};


Modificamos o directório da zona domínio.com para /var/named.

zona "domínio.com" {
type master;
file "domínio.com.hosts";
};


Notou que não pomos o caminho todo, estas informações já estão presentes nas opções. Vamos copiar o ficheiro em /var/named :

[root@nsXXXX root]# cp /etc/valheur.com.hosts /var/named

e tentamos reiniciar o bind

[root@nsXXXX root]# /etc/rc.d/init.d/named restart
Arrêt de named: [ECHOUE]
Démarrage de named: [OK]


Aparentemente, esta bem. Verificamos os logs :

oct 4 15:26:25 nsXXXX named: Paragem de named failed
Oct 4 15:26:25 nsXXXX named[3763]: starting BIND 9.2.1 -u named
Oct 4 15:26:25 nsXXXX named[3763]: using 1 CPU
Oct 4 15:26:25 nsXXXX named[3766]: loading configuration from '/etc/named.conf'
Oct 4 15:26:25 nsXXXX named[3766]: no IPv6 interfaces found
Oct 4 15:26:25 nsXXXX named[3766]: listening on IPv4 interface lo, 127.0.0.1#53
Oct 4 15:26:25 nsXXXX named[3766]: listening on IPv4 interface eth0, 213.186.XX.XX#53
oct 4 15:26:25 nsXXXX named: Démarrage de named succeeded
Oct 4 15:26:25 nsXXXX named[3766]: command channel listening on 127.0.0.1#953
Oct 4 15:26:25 nsXXXX named[3766]: zone 0.0.127.in-addr.arpa/IN: loaded serial 1997022700
Oct 4 15:26:25 nsXXXX named[3766]: zone domaine.com/IN: loaded serial 1065250970
Oct 4 15:26:25 nsXXXX named[3766]: zone localhost/IN: loaded serial 42
Oct 4 15:26:25 nsXXXX named[3766]: running
Oct 4 15:26:25 nsXXXX named[3766]: zone domaine.com/IN: sending notifies (serial 1065250970)
Oct 4 15:26:26 nsXXXX named[3766]: client 212.27.32.132#42247: transfer of 'domaine.com/IN': AXFR-style IXFR started


Um pequeno dig para ver se está tudo bem :

[root@nsXXXX root]# dig ovh.pt

; <<>> DiG 9.2.1 <<>> ovh.pt
; global options
printcmd

;; Got answer:
; ->>HEADER<<- opcode
QUERY, status: NOERROR, id: 63306

; flags
qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:
;ovh.pt. IN A
;; ANSWER SECTION:
ovh.pt. 86400 IN A 213.186.33.34
;; AUTHORITY SECTION:
ovh.pt. 86400 IN NS dns.ovh.net.
ovh.pt. 86400 IN NS sdns1.ovh.net.
; Query time
286 msec

; SERVER
213.186.XX.XX#53(213.186.XX.XX)

; WHEN
Sat Oct 4 15:27:18 2003

; MSG SIZE rcvd
83