quarta-feira, 30 de janeiro de 2013
Configurando o Servidor DNS
Configurando o Servidor DNS
Ouvimos com frequência que o sistema de DNS é maior base de dados do mundo. Realmente é, mas existe uma diferença fundamental entre o DNS e um sistema de banco de dados tradicional, como por exemplo, um servidor MYSQL usado por um servidor WEB, que é o fato do DNS ser uma base de dados distribuída.
No topo da cadeia dos domínios temos os root servers, que são 14 servidores espalhados pelo mundo cuja função é responder a todas as requisições de resolução de domínio.
Ao contrário do que muita gente pensa um nome de domínio é lido da direita para esquerda. Temos os domínios primários ( Top level domains, ou TLD), como o .com, .net, .info, .cc, .biz, etc..., e, em seguida , os domínios secundários ( country code TLD, ou ccTLD ), que recebem o prefixo de cada país, como .com.br, .net.br, nesse caso o “com” é um subdomínio do domínio “br”.
Embora seja totalmente imperceptível, todo nome de domínio termina com um ponto, que representa o domínio raiz. Quando um dos root servers recebe um pedido de resolução de domínio, ele encaminha a requisição aos servidores da entidade responsável pelo TLD do qual ele faz parte. Eles, por sua vez, encaminham a requisição ao servidor DNS responsável pelo domínio, que finalmente envia a resposta ao cliente.
Ao acessar o endereço “google.com.br”, o cliente começaria enviando a requisição ao servidor DNS informado na configuração da rede ( o DNS do provedor ). A não ser que tenha a informação em cache, o servidor consulta um dos root servers, perguntando: “quem é o servidor responsável pelo domínio google.com.br?”.
O root server responde que não sabe, mas verifica qual o servidor responsável pelos domínios “.br”, e orienta o cliente a refazer a pergunta, dessa vez a um servidor da entidade correspondente. Esse processo pode envolver mais um ou dois servidores, mas, eventualmente, o cliente chega ao servidor DNS do responsável pelo site que finalmente fornece o IP do servidor ao cliente.
74.125.234.120 <-------- www <-------- google <-------- com <--------- br <------------- .
( endereço IP ) (subdomínio) (Servidor (subdomínio) ccTLD Raiz
DNS (resgistro.br) (root servers)
responsável pelo site)
Configurando o Bind
O servidor DNS mais usado do Linux é o Bind, que aprenderemos a configurar a seguir, você pode optar por instalá-lo no mesmo servidor onde o Apache estar, mas do ponto de vista da segurança não é uma boa ideia, pois o ideal é que sejam utilizados servidores separados ou usar chroot, onde o próprio Bind é executado em um ambiente separado, sem ter acesso aos demais arquivos do sistema.
Instalação
Para instalar o Bind, você primeiramente deve procurar pelos pacotes “bind” ou “bind9” no gerenciador de sua distribuição. Nas distribuições derivadas do Debian a versão recomendada é o “Bind9”.
# apt-get install bind9
No CentOS
# yum install bind
O principal arquivo de configuração do Bind fiva em: “/etc/bind/named.conf”, por padrão ele já vem configurado com servidor de cache. Dentro do arquivo de configuração você encontra entradas como essas:
zone “.” {
type hint;
file “/etc/bind/db.root”;
};
zone “localhost” {
type master;
file “/etc/bind/db.local”;
};
zone “127.in-addr.arpa” {
type master;
file “/etc/bind/db.127”;
};
zone “0.in-addr.arpa” {
type master;
file “/etc/bind/db.0”
};
zone “255.in-addr.arpa” {
type master;
file “/etc/bind/db.255”;
};
Como pode-se observar cada uma das seções indica a localização de um arquivo, onde vai a configuração referente a ela. Por exemplo:
Na primeira seção (zone) é indicado o arquivo “/etc/bind/db.root”, que contém os endereços dos 14 root servers, que o bind irá contatar na hora de fazer a resolução dos domínios.
Se tratando CentOS 5 há uma exceção onde, os arquivos de configuração do Bind não são instalados junto com o pacote, então é necessário que você faça a configuração manualmente, como em:
# cp -r /usr/share/doc/bind-9.?.?/sample/etc/* /etc
# cp -r usr/share/doc/bind-9.?.?/sample/var/named/* /var/named/
Para concluir, o serviço referente ao Bind pode se chamar “bind” ou “named”, dependendo da distribuição.
Para restartar o serviço pelos derivados do Debian:
# /etc/ini.d/bind9 restart
ou
# /etc/init.d/bind restart
Para restartar o serviço pelos derivados do RedHat:
service named restart
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário