Configurando Um Servidor Dns Com Atualização Automática Via Dhcp.pdf

  • Uploaded by: Samuel Caetano Merlim
  • 0
  • 0
  • December 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Configurando Um Servidor Dns Com Atualização Automática Via Dhcp.pdf as PDF for free.

More details

  • Words: 1,225
  • Pages: 6
Configurando um servidor DNS com atualiza¸c˜ao autom´atica via DHCP Jo˜ao Medeiros ([email protected])

1

Introdu¸ c˜ ao

Neste tutorial iremos descrever a configura¸ca˜o de um servidor DNS para uma rede local com atualiza¸ca˜o autom´ atica via DHCP utilizando o Ubuntu Server 8.04. Acreditamos que o procedimento ´e idˆentico para a vers˜ao 8.10. A configura¸ca˜o ´e relativamente simples, mas existem muitos detalhes que dever ser seguidos `a risca. O tutorial foi baseado em diversas fontes, vejas as referˆencias [1]-[4] Nos comandos para edi¸ca˜o de arquivos a seguir, estamos usando o vim. Se desejar, utilize algum outro editor como o nano por exemplo.

2

Configura¸ c˜ ao do DNS

2.1

Instala¸c˜ ao do Bind

Instale o BIND9, que ´e o servidor DNS no linux. root@server:~# apt-get install bind9 Observe que ele deve ter criado o arquivo /etc/bind/rndc.key contendo a chave necess´aria para a atualiza¸ca˜o dinˆ amica do DNS pelo servi¸co DHCP. Ela ser´a usada mais adiante.

2.2

Configura¸c˜ ao da chave de autentica¸c˜ ao

Nas distribui¸co˜es baseadas no Debian, o arquivo a ser editado ´e o /etc/bind/named.conf. root@server:~# vim /etc/bind/named.conf Acrescente o conte´ udo a seguir logo abaixo da linha include ”/etc/bind/named.conf.options”; include "/etc/bind/rndc.key"; controls { inet 127.0.0.1 allow { localhost; } keys { rndc-key; }; }; Observe que o arquivo ”/etc/bind/rndc.key” deve ter sido criado durante a instala¸ca˜o do bind9. Se ele n˜ ao existir, execute o comando rndc-confgen -a.

2.3

Configura¸c˜ ao das zonas

Edite agora o arquivo /etc/bind/named.conf.local root@server:~# vim /etc/bind/named.conf.local e acrescente o conte´ udo

1

#Zona direta zone "lab4.fatern" { type master; file "/var/lib/bind/lab4.fatern.db"; allow-transfer { 192.168.3.1; }; allow-update { key "rndc-key"; }; notify yes; }; # Zona reversa. Substitua 0.68.9 com seu endereco de rede # usando a notacao inversa zone "3.168.192.in-addr.arpa" { type master; file "/var/lib/bind/rev.3.168.192.in-addr.arpa"; allow-update { key "rndc-key"; }; notify yes; }; No caso do Ubuntu Server existem duas partes cruciais aqui: o termo ”allow-update” que informa ao Bind que a zona pode ser atualizada pelo DHCP e a localiza¸ca˜o dos arquivos de zonas. O AppArmour espera que os arquivos de zonas fiquem localizados no diret´ orio ”/var/lib/bind”, se vocˆe coloc´ a-los no /etc/bind (que ´e onde normalmente algumas pessoas colocam) ter´ a problemas relacionados a permiss˜oes.

2.4

Configura¸c˜ ao dos arquivos de zonas

Falta ainda acrescentar os arquivos de zonas propriamente ditos. Crie o arquivo da zona direta com o comando root@server:~# vi /var/lib/bind/lab4.fatern.db e acrescente o conte´ udo abaixo: $TTL 86400 lab4.fatern. IN SOA 2009031601 3H 15M 1W 1D ) lab4.fatern. IN NS server. server A 192.168.3.1

server.lab4.fatern. server.lab4.fatern. (

Crie o arquivo da zona inversa root@server:~# vim /var/lib/bind/rev.3.168.192.in-addr.arpa E acrescente as linhas abaixo $TTL 86400 3.168.192.in-addr.arpa. IN SOA server.lab4.fatern. server.lab4.fatern. ( 2009031601 3H 15M 1W 1D ) 3.168.192.in-addr.arpa. IN NS 192.168.3.1. 1 PTR server.lab4.fatern.

2.5

Configura¸c˜ ao do log do DNS

A configura¸ca˜o do DNS tem muitos detalhes, o que torna o procedimento pass´ıvel de erros. Assim, ´e interessante ativarmos o log do pr´oprio DNS para nos auxiliar na detec¸ca˜o de eventuais problemas durante a configura¸ca˜o. 2

Para ativarmos o ”logging” do DNS, edite o arquivo /etc/bind/named.conf root@server:~# vim /etc/bind/named.conf E acrescente o conte´ udo abaixo, logo ap´os a se¸ca˜o controls adicionada anteriormente. logging { channel update_debug { file "/var/log/named/update-debug.log" versions 3 size 10m; severity debug 3; print-category yes; print-severity yes; print-time yes; }; channel security_info { file "/var/log/named/named-auth.info" versions 3 size 10m; severity info; print-category yes; print-severity yes; print-time yes; }; //descomente a linha abaixo para resolu¸ c~ ao de problemas category update { update_debug; }; category security { security_info; }; category lame-servers { null; }; }; Crie o diret´ orio de logs para o named e altere as permiss˜oes de maneira que o bind possa escrever l´a root@server:/var/log# mkdir /var/log/named root@server:/var/log/named# chown bind /var/log/named/

3

Configura¸ c˜ ao do DHCP

Vamos alterar o DHCP de modo que ele efetue as atualiza¸co˜es no servidor DNS a medida que fornecer IPs para m´aquinas clientes. root@server:~# vim /etc/dhcp3/dhcpd.conf Altere o arquivo de maneira a ficar como est´ a abaixo. A se¸ca˜o referente a chave rndc-key foi copiada do arquivo /etc/bind/rndc.key. Uma outra op¸ca˜o seria colocarmos a op¸ca˜o include ”/etc/bind/rndc.key”, mas ter´ıamos que alterar as pemiss˜ oes de leitura do arquivo para 644.

3

key "rndc-key" { algorithm hmac-md5; secret "2nUrLAzEfUmqIhNNNdFnJA=="; };

zone lab4.fatern. { primary 192.168.3.1; key rndc-key; } zone 3.168.192.in-addr.arpa. { primary 192.168.3.1; key rndc-key; }

option domain-name "lab4.fatern"; option domain-name-servers server.lab4.fatern; # Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7; ddns-update-style interim; ddns-domainname "lab4.fatern."; use-host-decl-names on; allow client-updates; default-lease-time 600; max-lease-time 7200; authoritative; subnet 192.168.3.0 netmask 255.255.255.0 { ddns-updates on; range 192.168.3.20 192.168.3.100; option routers 192.168.3.1; option domain-name-servers 192.168.3.1; option broadcast-address 192.168.3.255; }

4

Configura¸ c˜ ao do /etc/resolv.conf no servidor

Altere o arquivo /etc/resolv.conf root@server:~# vim /etc/resolv.conf Deixe-o com o conte´ udo search lab4.fatern nameserver 192.168.3.1 Normalmente o cliente dhcp do Ubuntu sobreescreve o /etc/resolv.conf. Podemos evitar que ele seja sobre-escrito durante o boot de v´arias maneiras, veja a referˆencia [5]. O procedimento que adotamos foi o seguinte: crie o arquivo /etc/dhcp3/dhclient-enter-hooks.d root@server:~# vim /etc/dhcp3/dhclient-enter-hooks.d/dhclient-script Insira o seguinte texto nele

4

make_resolv_conf() { : } A fun¸ca˜o make resolv conf ´e chamada pelo cliente DHCP e n˜ ao far´a nada.

5

Teste e resolu¸c˜ ao de problemas

Reinicie o servidor DNS e DHCP root@server:~# /etc/init.d/bind9 restart root@server:~# /etc/init.d/dhcp3-server restart Abra um terminal separado e verifique os arquivos de logs com os comandos root@server:/var/log# tail /var/log/syslog root@server:/var/log# tail /var/log/named/named-auth.info root@server:/var/log# tail /var/log/named/update-debug.log Se quiser, acrescente a op¸ca˜o -f para ver as atualiza¸co˜es nos arquivos de maneira autom´ atica. Inicie uma m´aquina cliente (Veja que a placa de rede dela deve estar no modo rede interna no VirtualBox) e observe se o DNS foi atualizado. Liste o conte´ udo do diret´ orio do arquivo de zonas root@server:/var/lib/bind# ls -ltr /var/lib/bind/ total 16 -rw-r--r-- 1 bind bind 1324 2009-03-14 17:49 rev.3.168.192.in-addr.arpa.jnl -rw-r--r-- 1 bind bind 1585 2009-03-14 17:49 lab4.fatern.db.jnl -rw-r--r-- 1 bind bind 433 2009-03-14 18:00 rev.3.168.192.in-addr.arpa -rw-r--r-- 1 bind bind 519 2009-03-14 18:00 lab4.fatern.db Observe que foram criados arquivos com extens˜ao .jnl. Os arquivos originais tamb´em foram alterados: root@server:/var/lib/bind# cat /var/lib/bind/lab4.fatern.db $ORIGIN . $TTL 86400 ; 1 day lab4.fatern IN SOA server.lab4.fatern. server.lab4.fatern. ( 2009031612 ; serial 10800 ; refresh (3 hours) 900 ; retry (15 minutes) 604800 ; expire (1 week) 86400 ; minimum (1 day) ) NS server. $ORIGIN lab4.fatern. $TTL 300 ; 5 minutes fatern-desktop A 192.168.3.100 TXT "00bf0b062b0d647f73b7b6d018f865b66a" $TTL 86400 ; 1 day server A 192.168.3.1 $TTL 300 ; 5 minutes xp32 A 192.168.3.99 TXT "31b3bac0a214cd4b37e1737007d0bc7cf3" As nossas configura¸co˜es originais permanecem, mas surgiram outras criadas pela atualiza¸ca˜o dinˆamica.

5

5.1

Altera¸c˜ ao manual em Zonas dinˆ amicas

Como vimos na se¸ca˜o anterior, os arquivos originais das zonas s˜ao atualizados dinˆamicamente. Se, por algum motivo, for necess´ario alterar manualmente algum arquivo de zonas podemos usar o comando rndc freeze para ”congelar” a zona. root@server:~# rndc freeze lab4.fatern Para ”descongelar” a zona ap´os as altera¸co˜es manuais, utilize o comando root@server:~# rndc thaw lab4.fatern

6

Conclus˜ oes

A configura¸ca˜o do DNS com atualiza¸ca˜o autom´ atica ´e relativamente simples. Por´em, s˜ao necess´arios alguns cuidados especiais devido a quantidade de detalhes necess´arios para a configura¸ca˜o.

Referˆ encias [1] NEMETH, Evi. Linux Administration Handbook. 2. Ed. Editora: Prentice Hall, 2007 [2] http://www.void.gr/kargig/blog/2006/12/21/dynamic-hostname-updates-with-dhcpd-bind, acessado em 14/03/2009. [3] http://blogger.ziesemer.com/2008/10/linux-lan-dchp-dynamic-dns.html, 14/03/2009.

acessado

[4] http://www.vivaolinux.com.br/artigo/Configurando-DHCP-com-DNS-(Bind9)-na-rede-localDebian-Linux, acessado em 14/03/2009. [5] http://www.cyberciti.biz/faq/dhclient-etcresolvconf-hooks, acessado em 14/03/2009.

6

em

Related Documents

Servidor Dns
December 2019 26
Servidor Dns
June 2020 17
Windows 2003 Servidor Dns
November 2019 15

More Documents from ""

Redes De Acesso Hfc.pdf
December 2019 11
December 2019 9
June 2020 10
Apendice A
June 2020 12
June 2020 10