Sistema Operacional Linux > Servidor DNS (BIND) www.labcisco.com.br ::: shbbrito@labcisco.com.br Prof. Samuel Henrique Bucke Brito
Introdução O DNS é um dos serviços mais importantes na Internet porque é responsável pela tradução dos endereços nominais (nomes) em números (IPs) e vice-versa (reverso). Os nomes são mais fáceis de serem utilizados e memorizados pelas pessoas. 2
Introdução É baseado em uma estrutura de árvore bastante organizada para facilitar o mapeamento e a busca de endereços. Os nomes são separados por pontos para determinar um novo domínio de autoridade (hierarquia). 3
Configuração do Servidor DNS Topologia do Laboratório 4
1. Instalação do Serviço BIND root@ns1:/# apt-get install bind9 A primeira etapa consiste na instalação do pacote bind9 para que o Linux possa ser posteriormente configurado como servidor primário DNS na rede. Essa tarefa é simples e rápida através do APT (Debian). 5
2. Informar a Zona Direta e Zona Reversa do Domínio zone { }; "nome.com.br" type master; file "/etc/bind/nome.com.br.forward"; allow-transfer { 192.168.221.202; }; este servidor é primário (mestre) arquivo de configuração da zona direta informação de servidor secundário zone { }; "221.168.192.in-addr.arpa" type master; file "/etc/bind/nome.com.br.reverse"; allow-transfer { 192.168.221.202; }; arquivo de configuração da zona reversa Os arquivos de configuração ficam armazenados em /etc/bind. No arquivo de configuração /etc/bind/named.conf.local são realizadas as primeiras configurações da zona direta de domínio (forward) e da zona reversa. 6
3. Criar os Arquivos das Zonas Direta e Reversa root@ns1:/# cp /etc/bind/db.local /etc/bind/nome.com.br.forward root@ns1:/# cp /etc/bind/db.127 /etc/bind/nome.com.br.reverse O arquivo /etc/bind/db.local pode servir como modelo de zona direta, enquanto que o arquivo /etc/bind/db.127 pode servir como modelo de zona reversa. Respeitando os caminhos informados na configuração anterior, devem ser criados os arquivos das zonas direta e reversa. É recomendado gerar esses arquivos a partir de outros já existentes para evitar erros de sintaxe. 7
4. Configurar o Arquivo da Zona Direta ;--- /etc/bind/nome.com.br.forward ; BIND - Zona Direta (nome.com.br) ;--- $TTL 604800 @ IN SOA ns1.nome.com.br. root.nome.com.br. ( 2014051801 ; Serial O número serial deve ser incrementado a cada 604800 ; Refresh alteração no arquivo. Uma sugestão é fazer 86400 ; Retry referência à data e versão da alteração, por ex.: 2419200 ; Expire AAAAMMDDVV = 2014051801 604800 ) ; Negative Cache TTL ; @ IN NS ns1.nome.com.br. @ IN NS ns2.nome.com.br. gateway IN A 192.168.221.1 client IN A 192.168.221.37 ns1 IN A 192.168.221.201 ns2 IN A 192.168.221.202 router IN CNAME gateway winxp IN CNAME client 8
5. Configurar o Arquivo da Zona Reversa ;--- /etc/bind/nome.com.br.reverse ; BIND - Zona Reversa (nome.com.br) ;--- $TTL 604800 @ IN SOA ns1.nome.com.br. root.nome.com.br. ( 2014051801 ; Serial O número serial deve ser incrementado a cada 604800 ; Refresh alteração no arquivo. Uma sugestão é fazer 86400 ; Retry referência à data e versão da alteração, por ex.: 2419200 ; Expire AAAAMMDDVV = 2014051801 604800 ) ; Negative Cache TTL ; @ IN NS ns1.nome.com.br. @ IN NS ns2.nome.com.br. 1 IN PTR gateway.nome.com.br. 37 IN PTR client.nome.com.br. 201 IN PTR ns1.nome.com.br. 202 IN PTR ns2.nome.com.br. 9
6. Verificação de Erro nos Arquivos de Configuração root@ns1:/# named-checkconf /etc/bind/named.conf.local root@ns1:/# named-checkzone nome.com.br /etc/bind/nome.com.br.forward root@ns1:/# named-checkzone 221.168.192.in-addr.arpa /etc/bind/nome.com.br.reverse Antes de tentar inicializar o serviço é importante fazer uma verificação de erros de sintaxe nos arquivos de configuração através das ferramentas named-checkconf e named-checkzone. Se algum erro for indicado, verifique novamente os arquivos. 10
7. Inicialização do Serviço DNS root@ns1:/# service bind9 start [ ok ] Starting domain name service...: bind9. Quando um novo serviço é instalado no Debian, ele passa a ser automaticamente inicializado em caso de boot do servidor. A ferramenta update-rc.d pode ser utilizada para remover/adicionar serviços no processo de inicialização automática. Por fim, depois de configurado o servidor, basta iniciar o serviço para validar todas as configurações realizadas anteriormente. A partir de agora todos os clientes da rede já podem utilizar o servidor de nomes interno. 11
8. Atualizar os Servidores DNS (/etc/resolv.conf) search nome.com.br nameserver 127.0.0.1 nameserver 192.168.221.202 O arquivo local /etc/resolv.conf deve ser atualizado com o endereço localhost como próprio servidor de nomes. Estamos nos adiantando ao informar o servidor secundário (192.168.221.201) que será configurado na sequência. 12
9. Ferramentas de Diagnóstico root@host:/# dig gateway.nome.com.br root@host:/# dig x 192.168.221.1 root@host:/# nslookup <hostname IP> root@host:/# host <hostname IP> As ferramentas dig e nslookup podem não estar pré-instaladas, mas podem ser adicionadas no Debian a partir do APT: apt-get install dnsutils Há várias ferramentas de diagnóstico que podem ser utilizadas para verificar se o servidor DNS está operando corretamente. Através do comando dig é possível buscar os registros A e PTR (reverso). 13
Configuração do Servidor DNS (Slave) 1. Instalação do Serviço BIND root@ns2:/# apt-get install bind9 A primeira etapa consiste na instalação do pacote bind9 para que o Linux possa ser posteriormente configurado como servidor secundário DNS na rede. Essa tarefa é simples e rápida através do APT (Debian). 14
Configuração do Servidor DNS (Slave) 2. Informar a Zona Direta e Zona Reversa do Domínio zone { }; "nome.com.br" type slave; file "/etc/bind/nome.com.br.forward"; masters { 192.168.221.201; }; este servidor é secundário (slave) informação de servidor primário (master) zone { }; "221.168.192.in-addr.arpa" type slave; file "/etc/bind/nome.com.br.reverse"; masters { 192.168.221.201; }; O BIND em execução no slave deve ter permissão para escrita dos arquivos replicados do master. O administrador pode criar um diretório específico para os arquivos replicados ou alterar o proprietário do diretório-base através do comando: chown bind.bind /etc/bind No arquivo de configuração /etc/bind/named.conf.local devem ser informadas as zonas direta e reversa, fazendo referência ao master. Pronto, as demais configurações serão sincronizadas a partir do master. 15
Configuração do Servidor DNS (Slave) 3. Atualizar os Servidores DNS (/etc/resolv.conf) search nome.com.br nameserver 127.0.0.1 nameserver 192.168.221.201 O arquivo local /etc/resolv.conf deve ser atualizado com o endereço localhost como próprio servidor de nomes. Reparem que estamos informando o servidor master como secundário, já que ns2 também é um servidor de nomes. 16
www.labcisco.com.br ::: shbbrito@labcisco.com.br