dns no linux

6
Projeto SOR DNS no LINUX Alunos: Tárcio Luna

Upload: alexandre-mendes-da-silva

Post on 16-Dec-2015

220 views

Category:

Documents


5 download

DESCRIPTION

hgh

TRANSCRIPT

  • Projeto SOR

    DNS no LINUX

    Alunos: Trcio Luna

  • Servidor DNS no Linux

    Primeiro uma breve explicao sobre o que este servio. DNS, Domain Name System Sistema de Nomes de Dominio de fundamental importncia em uma rede, pois sem ele vrios servios no funcionam, como o email, a internet, etc. Ele responsvel por informar o nome ou nmero IP dos hosts do domnio. O DNS um sistema hierrquico em rvore invertida. Tem como origem o ponto (.), e a partir da, os domnios e, abaixo destes, os subdomnios. O nome completo de um host FQDN = Full Qualified Domain Name composto de duas partes: a primeira parte identifica o host dentro do domnio e a segunda parte identifica o domnio. Em www.dnslinux.com.br, www o nome do host, e dnslinux.com.br o domnio.

    Iremos utilizar BIND para a configurao do servidor e cliente DNS. A instalao muito simples, bastando instalar os pacotes bind e bind-utils, que contm o servidor e os clientes, tambm chamados de resolvedores. sempre bom utilizar a verso mais recente do BIND, pois o bind contm alguns bugs que esto sempre sendo reparados em novas verses. Neste exemplo utilizaremos a verso 9.2.3. Para instalarmos o BIND mais facilmente e evitar problemas com dependncias vamos o utilizar o APT, com os seguintes comandos;

    # apt-get install bind#apt-get install bind-utils

    Compreendendo a estrutura

    No diretrio /etc, iremos visualizar o arquivo de configurao do bind, o named.conf. Neste diretrio existem ainda outros arquivos importantes de configurao de rede que j vem por padro na instalao do Linux como o host.conf, hosts e o resolv.conf , que so fundamentais para o funcionamento correto do servio de DNS.

    O primeiro arquivo a ser configurado o hosts.conf

    #vi /etc/host.conf

    Aqui onde especificamos a ordem de consulta da mquina, por exemplo, se vai ser primeiro no hosts, e depois no DNS, vamos manter a configurao deste arquivo de forma a ter a primeira consulta no Bind:

    order bind,hostsmulti on

    Feito isso, vamos agora editar o arquivo hosts:

    #vi /etc/hosts

    Neste arquivo onde especificamos o nome da mquina e o domnio. Aqui devemos, obrigatoriamente ter pelo menos o localhost e nosso prprio IP (estaremos usando o IP 192.168.0.254 para o nosso servidor DNS)

  • ou seja, se nossa mquina tiver o nome dns, e seu domnio for dnslinux.com.br, sero acrescentadas as seguintes entradas no arquivo hosts:

    127.0.0.1 localhost.localhosdomain localhost 192.168.0.254 www.dnslinux.com.br www

    Em seguida devemos editar o arquivo resolv.conf

    #vi /etc/resolv.conf

    Aqui iremos configurar qual ser o domnio e o IP do servidor de DNS que iremos utilizar para navegar na internet, ou seja, se estamos configurando um servidor DNS, utilizaremos nosso prprio servidor para navegar na internet, faremos as seguintes configuraes neste arquivo:

    search dnslinux.com.brnameserver 192.168.0.254

    Criando Zonas

    Depois de instalarmos, e configuramos a estrutura de arquivos, vamos agora criar as zonas de domnio. Iremos criar um arquivo no diretrio /var/named com o nome de name.hosts por exemplo.

    #vi /var/named/named.hosts

    Zonas de domnio sero os arquivos responsveis por dizer ao servidor de DNS qual servidor ir responder pelo servio web, qual servidor ir responder pelo servio de e-mail e assim por diante, ou seja, para qual IP deve apontar um determinado domnio e seus respectivos apelidos.

    Abaixo temos um exemplo de arquivo de zona:

    @ IN SOA dns.dnslinux.com.br. root.dnslinux.com.br. (

    1 86400 3600 1296000 86400 )

    IN NS dns.dnslinux.com.br.cliente IN A 192.168.0.10localhost IN A 127.0.0.1

    Cada linha um registro. O registro tem sintaxe diferente para cada tipo. O tipo SOA (start of authority) obrigatrio e, necessariamente, o primeiro registro . Ele descreve a

  • zona , sua origem (dns.dnslinux.com.br), quem responsvel por seu contedo )(root.dnslinux.com.br). As diversas opes entre parnteses so:

    *serial: um nmero que identifica a verso de atualizao das informaes.

    *refresh: o perdo do ciclo de atualizao. A cada ciclo , os servidores secundrios comparam seu nmero serial com o do servidor primrio, e se forem diferentes, ele executa uma transferncia de zona.

    *retry: define o tempo que o servidor secundrio ir esperar para nova tentativa se o primrio no responder.

    *expiry: tempo mximo que um servidor secundrio continua respondendo por uma zon quando no consegue comunicao com o primrio.

    *minimum: tempo mnimo de vida que a zona tem.

    Este arquivo responsvel pela zona dnslinux.com.br.

    No caso do dns.dnslinux.com.br , como se chamar o nosso servidor de DNS, e servir pra ele fazer uma busca nele mesmo.

    Configurando o arquivo da zona reversa

    Este arquivo vai definir a resoluo reversa.

    vi /var/named/named.rev

    Nele iremos inserir as seguintes informaes:

    @ IN SOA dns.dnslinux.com.br. root.dnslinux.com.br. (

    1 86400 3600 1296000 86400 )

    IN NS dns.dnslinux.com.br.1 IN PTR dns.dnslinux.com.br.

    Agora vamos editar o arquivo named.conf

    Depois de criarmos o arquivo de zona, devemos editar o arquivo named.conf no diretrio /etc , este arquivo ir conter as configuraes do IP em que dever ser aberta a porta 53 , que a porta padro do servio do BIND e a configurao dos IPs de DNS externo pelo qual seu servidor de DNS dever realizar a busca caso ele no encontre uma determinada zona em seu prprio servio.

    #vi named.conf

  • Nele iremos fazer as seguintes alteraes:

    options { directory "/var/named"; listen-on { 127.0.0.1; 192.168.0.254; }; forwarders { 200.164.232.10; 200.164.232.249;};

    ** O listen-on far com que o bind escute o IP da placa de rede local e o da interface de loopback.

    ** O forwarders far com que o bind realize consulta nos DNSs do nosso provedor, neste caso utilizaremos os DNSs da Hotlink para realizar consulta externa.

    Agora iremos adicionar a entrada da zona do domnio, que ser criado no fim do arquivo:

    };zone "dnslinux.com.br" { type master; file "named.hosts";};

    **O file "named.hosts o arquivo de zona que vimos anteriormente, onde esto contidas as informaes de IP e aliases. Agora salvamos o arquivo named.conf com as informaes acima indicadas.

    Startando o Bind

    Caso todas as configuraes tenham sido realizadas corretamente, bastar agora subir o servio do Bind definitivamente, isso indica que voc ir abrir a porta 53 de seu servidor para que o servio de DNS esteja ativo em sua rede. No shell de comando digitaremos o seguinte comando:

    #/etc/rc.d/init.d/named start --> Este comando ir iniciar o servio do Bind em seu servidor.#/etc/rc.d/init.d/named stop --> Este comando ir parar o servio do Bind em seu servidor.

    Para verificarmos se o servio subiu corretamente podemos executar o seguinte comando:

    #netstat -an | more Com este comando devemos ter a segunte resposta:

    udp 0 0 192.168.0.254:53 0.0.0.0:* OUAudp 0 0 127.0.0.1:53 0.0.0.0:* OUA

  • Isso indica que o servio DNS encontra-se rodando corretamente em seu servidor, com a porta 53 aberta em seu IP da primeira placa de rede eth0 e em seu loopbak IO . Feito isso basta testar se o domnio que criamos em nosso DNS est respondendo corretamente atravs de um PING:

    # ping www.dnslinux.com.br

    PING dns.dnslinux.com.br (192.168.0.254): 56 data bytes64 bytes from 192.168.0.254 : icmp_seq=0 ttl=118 time=29.3 ms64 bytes from 192.168.0.254 : icmp_seq=1 ttl=118 time=32.3 ms

    Com isso terminamos a configurao do nosso servidor DNS.