Você está na página 1de 10

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

DNS CONFIGURAO Bsica


SUMRIO:
1. Entendendo a configurao do mecanismo Cliente_______________Pgina 02

2. Entendendo a configurao do Servidor________________________Pgina 04

3. EXECUTANDO UMA CONFIGURAO BSICA

3.1. Configurao do Cliente_______________________________Pgina 07

3.2. Configurao do Servidor______________________________Pgina 08

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

1. Entendendo a configurao do mecanismo Cliente:


O mecanismo resolvedor est includo no Pacote dnsutils. (Este pacote, dependendo
da distribuio, pode ter o nome: bind-utils; ou algum outro conforme a distribuio).
Para configurar o mecanismo resolvedor/solucionador, devemos editar o arquivo
resolv.conf localizado no diretrio /etc/. Podemos fazer isso da seguinte maneira (no
ambiente grfico):
sudo gedit /etc/resolv.conf

Deste modo o arquivo ser aberto com o editor de texto gedit.


Ao editar esse arquivo, podemos incluir 3 parmetro, que so:
- search: faz com que o mecanismo de resoluo busque por uma consulta recursiva,
buscando ento os servidores-raiz.
- domain: faz com que o mecanismo de resoluo busque por servidores do domnio
especificado.
- nameserver: especifica em qual servidor de nomes dever ser consultado; em ordem
especificada.
Sendo assim, vamos a um Exemplo: Supondo que sua estao de trabalho possua
uma conexo com a internet, usaremos um DNS pblico (real) para este exemplo
(200.204.0.10), editemos o arquivo de configurao do resolvedor (sudo

gedit

/etc/resolv.conf), incluindo:
nameserver 200.204.0.10
A partir deste momento todo programa da sua estao de trabalho que necessitar de
resoluo

de

endereos,

mecanismo

resolvedor

ir

solicitar

ao

servidor

DNS

200.204.0.10 uma resposta para a pesquisa. Assim, se abrirmos um browser (navegador


web), por exemplo, e digitar na barra de endereos www.teste.com.br. o resolvedor
perguntar ao servidor 200.204.0.10 qual o endereo IP deste FQDN (note que no
exemplo foi adicionado ponto final ao endereo) e aguardar a resposta. Se na resposta
houver o endereo IP ento o browser tentar fazer contato com ele pela porta 80, caso
contrrio, ser exibido no browser uma mensagem de erro de requisio DNS.

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

2. Entendendo a configurao do Servidor:


Para configurarmos um servidor DNS necessitamos de um software capaz de fazer a
resoluo de endereos. H diversos softwares que efetuam esta tarefa como BIND,
DJBDNS, entre outros. Neste exemplo usaremos o BIND que compatvel com os sistemas
operacionais WINDOWS, GNU/LINUX e UNIX. Alm do BIND usaremos o UBUNTU como
sistema operacional base. Considerando que o sistema operacional esteja instalado
corretamente, que h conexo/acesso com a Internet bem como o repositrio (APT) esteja
configurado e atualizado, o primeiro passo instalar o servidor DNS. Neste exemplo
usaremos a verso 9 do BIND:
sudo apt-get install bind9

Aps instalar o servidor e antes de proceguirmos, deve-se entender que a estrutura


do BIND diferenciada entre distribuies RED HAT (e seus derivados) e DEBIAN (e seus
derivados o UBUNTU derivado do DEBIAN). Na estrutura do RED HAT os arquivos de
configurao do servidor ficam no diretrio /var/named tendo apenas o arquivo
named.conf como arquivo de configurao. J no DEBIAN a estrutura fica em /etc/bind
e, alm disso, h trs arquivos para configurao, apesar de podermos usar apenas um,
so eles: named.conf, named.conf.options e named.conf.local. Como na estrutura
RED HAT, h um named.conf na estrutura do DEBIAN, neste arquivo h duas instrues
include que inserem os arquivos named.conf.options e named.conf.local deste modo:
include /etc/bind/named.conf.options;
include /etc/bind/named.conf.local;
Assim, a configurao fica separada da seguinte maneira:
- named.conf : configurao principal do servio.
- named.conf.options : configurao do Servidor DNS BIND.
- named.conf.local : especificao das zonas diretas e zonas reversas.

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

Ao editar o arquivo named.conf encontraremos:


// This is the primary configuration file for the BIND DNS server named.
//
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the
// structure of BIND configuration files in Debian, *BEFORE* you customize
// this configuration file.
//
// If you are just adding zones, please do that in
/etc/bind/named.conf.local
include "/etc/bind/named.conf.options";
// prime the server with knowledge of the root servers
zone "." {
type hint;
file "/etc/bind/db.root";
};
// be authoritative for the localhost forward and reverse zones, and for
// broadcast zones as per RFC 1912
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";
};
include "/etc/bind/named.conf.local";

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

Ao editar o arquivo named.conf.options encontraremos:


options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
//
//
//
//

If your ISP provided one or more IP addresses for stable


nameservers, you probably want to use them as forwarders.
Uncomment the following block, and insert the addresses replacing
the all-0's placeholder.

// forwarders {
//
0.0.0.0;
// };
auth-nxdomain no;
# conform to RFC1035
listen-on-v6 { any; };
};

Ao editar o arquivo named.conf.local encontraremos:


//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";

OBSERVAO: TODAS AS INFORMAES CUJAS LINHAS INICIAM COM //,


# OU ; SO LINHAS COMENTADAS, OU SEJA, NO TEM EFEITO NA
CONFIGURAO. Entretanto quando h ; no final da linha indica ao servidor
END Of LINE ou final de linha.

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

Vamos a um exemplo prtico. Editaremos apenas o arquivo named.conf.local e


incluiremos uma zona direta:
sudo gedit /etc/bind/named.conf.local
zone teste.com.br {
type master;
file /etc/bind/teste.zone;
};

Agora configuraremos os resgistros desta zona direta:


sudo gedit /etc/bind/teste.zone
$TTL 86400
@

@
nsteste

IN
SOA
2010032001
86400
14400
2019200
86400
)
IN
NS
IN
A

nsteste.teste.com.br.

root.teste.com.br.

nsteste.teste.com.br.
127.0.0.1

Todos esses parmetros sero explicados em aula.

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

3. EXECUTANDO UMA CONFIGURAO BSICA

3.1. Configurao do Cliente:


Primeiro instalaremos o mecanismo resolvedor, entretanto, o mecanismo instalado
juntamente com o sistema operacional, ento, iremos conferir:
sudo apt-get install dnsutils
Segundo, vamos agora configurar o mecanismo da seguinte maneira:
sudo gedit /etc/resolv.conf
nameserver 127.0.0.1
Pronto, neste momento, o mecanismo ir buscar a resoluo de nomes apenas no
HOST local.

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

3.2. Configurao do Servidor:


Primeiro instalaremos o servidor BIND9:
sudo apt-get install bind9
Certifique-se de que o servidor foi instalado antes de proceguir. Verifique se foi
criado o diretrio bind no diretrio /etc e tambm h arquivos da seguinte forma:
sudo ls /etc
Esse comando listar todo o contedo do diretrio /etc. Se preferir pode verificar
da seguinte maneira:
sudo ls /etc/bind
Assim, voc verifica se o diretrio bind existe, caso no exista ser
exibida uma mensagem como: diretrio no encontrado (file or directory not
found). Alm disso, o comando acima listar, caso exista o /etc/bind, o
contedo do diretrio, ento, aparecer pelo menos os arquivos named.conf,
named.conf.options

named.conf.local.

Se

no

encontrar

os

itens

mencionados porque o servidor no foi instalado. Execute o processo de instalao


novamente.
Agora, para configurar o servidor, primeiro iremos apagar o contedo do arquivo
named.conf deixado apenas duas linhas de instruo, da seguinte maneira:
sudo gedit /etc/bind/named.conf
include /etc/bind/named.conf.options;
include /etc/bind/named.conf.local;
Segundo, iremos modificar o arquivo named.conf.options para o seguinte:
sudo gedit /etc/bind/named.conf.options
options {
directory /var/cache/bind;
auth-nxdomain no;
listen-on { 127.0.0.1/32; };
};

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

Terceiro, adicionaremos a zona direta e a zona reversa:


sudo gedit /etc/bind/named.conf.local
zone aula.pro.br {
type master;
file /etc/bind/aula.zone;
};
zone 0.168.192.IN-ADDR.ARPA {
type master;
file /etc/bind/aula.rev;
};

Note acima, que para diferenciar as zonas reversas das zonas diretas usamos a
instruo IN-ADDR.ARPA conforme estabelecido na RFC-1035.
Por ultimo, criaremos os registros da zona direta e da zona reversa:

sudo gedit /etc/bind/aula.zone


$TTL 86400
@

@
ns1

IN
SOA
2010032001
86400
14400
2019200
86400
)
IN
NS
IN
A

ns1.aula.pro.br.

root.aula.pro.br.

root.aula.pro.br.

ns1.aula.pro.br.
192.168.0.1

sudo gedit /etc/bind/aula.rev


$TTL 86400
@

@
1

IN
SOA
2010032001
86400
14400
2019200
86400
)
IN
NS
IN
PTR

ns1.aula.pro.br.

ns1.aula.pro.br.
ns1.aula.pro.br.

OBSERVAO: No arquivo de zona reversa no pode ser usado o registro


A (Address). Este registro s pode ser usado em zona direta. Entretanto o PTR
pode ser usado na zona direta, alm da zona reversa.

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

Servios em Rede para Ambientes Livres / Servidores de Correio

20 de maro de 2010

Reiniciar o servio; Verificar os LOGs; TESTES:

sudo /etc/init.d/bind9 restart


cat /var/log/daemon.log
nslookup ns1.aula.pro.br
nslookup 192.168.0.1

PRINCIPAIS TIPOS DE REGISTROS:


SOA

START Of AUTORITY

Registro de Autoridade sobre um domnio. Informa qual


servidor detm a autoridade sobre um domnio, o
endereo de e-mail e os TTLs.

NS

NAME SERVER

Determina quem (so) o servidor de nomes.

ADDRESS

Determina um IP para um Nome de HOST.

MX

MAIL EXCHANGE

Determina o servidor de correio eletrnico.

CNAME

CANONICAL NAME

Usado para determiner dois ou mais nomes a um


determinado HOST. Um apelido de nome de mquina.

TXT

TEXT

Serve para adicionar informaes sobre o domnio.

SRV

SERVICE

Serve para atribuir/distribuir mais de um endereo para


um determinado servio.

PTR

POINTER

Reverso de endereo; converso de endereos IP para


nomes

de

domnio

(Normalmente

FQDN

Fully

Qualified Domain Name)

Professor Marcelo Akira Yamamoto

akira@akira.pro.br

10

Você também pode gostar