Artigo - DNS - Como Funciona o DNS - CL Linux.df.pdf

6

Click here to load reader

description

Uploaded from Google Docs

Transcript of Artigo - DNS - Como Funciona o DNS - CL Linux.df.pdf

Page 1: Artigo - DNS - Como Funciona o DNS - CL Linux.df.pdf

DNS

Por: Anderson Gonçalves

Como funciona o DNS ?

O DNS (Domain Name System), é um sistema de gerenciamento de nomes, hierárquico e distribuído, e opera segundo duas definições, são elas:

Examinar e atualizar o banco de dados;

Reproduzir a informação do banco de dados entre servidores.

Ele existe, porque as aplicações utilizam endereços IP de 32 bits quando vão abrir conexões ou enviar datagramas IP, Entretanto, elas normalmente, identificam os hosts por nomes ao invés de identificar por números. O funcionamento básico está, em pegar o nome que a aplicação forneceu, e devolver o número IP correspondente, mas, isso acontece porque o servidores possuem algoritmos de pesquisas locais e remotas bem como um banco de dados com as informações sobre os domínios no qual eles são responsáveis.

Um domínio nada mais é do que uma sub-árvore do espaço de nomes de domínio. O nome de um domínio é o nome do ramo que está no topo daquele domínio. Cada sub-árvore é considerada parte de um domínio. Assim como um nome de domínio pode estar em diversas sub-árvores, um nome de domínio pode estar em diversos domínios. Por exemplo, minhaorganizacao.com.br faz parte do domínio com.br e também do domínio br.

O DNS é administrado por uma Autoridade de Inscrição de Nome na Internet, responsável por manter domínios de topo de nível que são nomeados através de organizações e por fim, por países. No Brasil a Autoridade sobre a inscrição de um domínio na internet é a FAPESP. Estes nomes de domínio, seguem o Padrão 3166 Internacional. Veja a seguir um exemplo que como a árvore de domínios se forma:

Na figura acima, você deve ter notado as abreviações existentes, elas são reservadas para uso através de organizações, como também, existem no último nível de abreviações antes dos nomes das entidades finais, abreviações contendo de dois a três caracteres que representam os países.

Page 2: Artigo - DNS - Como Funciona o DNS - CL Linux.df.pdf

InstalaçãoPara instalar voçê instalar o seu Servidor DNS são necessários os seguintes pacotes:

• bind • bind-devel • bind-libs • bind-utils • linuxconf-dnsconf

Para insTalar os pacotes, utiliza-se o comando rpm, para cada pacote, na ordem acima. Os pacotes estão no CD 1 do conectiva 8.0, na pasta conectiva/RPMS. Como root execute os comandos abaixo:# mount /mnt/cdrom/

# cd /mnt/cdrom/conectiva/RPMS

# rpm -ivh bind*

# rpm -ivh linuxconf-dns*

Para obtermos informações sobre qualquer comando, utilizamos outro comando, o man [comando]. Para sair do manual, basta digitar o caractere "q".

Configuração do /etc/named.conf

O /etc/named.conf é o arquivo onde serão feitas as principais configurações do servidor DNS, será nesse arquivo que apontaremos as informações do nosso banco de dados. options { directory "/var/named"; listen-on{ 127.0.0.1/32; 200.137.66.221; };

dump-file "/var/named/dump/named_dump.db"; statistics-file "/var/named/dump/named.stats";};

key key_rndc{ algorithm "hmac-md5"; secret "WWq/sUL2s9ticJBOtp1Efw==";};

controls{ inet 127.0.0.1 allow{ localhost; } keys{ key_rndc; };};zone "." { type hint; file "named.ca";};zone "linux.bogus" {

Page 3: Artigo - DNS - Como Funciona o DNS - CL Linux.df.pdf

type master; file "linux.bogus";};zone "66.137.200.IN-ADDR.ARPA" { type master; file "named.local";};zone "0.0.127.IN-ADDR.ARPA" { type master; file "127.0.0";};

OBS: No BIND que vem no CL8, por padrão só ouve localhost. Use um editor de texto para abrir o /etc/named.conf e altera a linha: listen-on {127.0.0.1/32;}; para: listen-on {127.0.0.1/32; [IP do seu servidor]};.Ou comente a mesma para ele ouvir em todas as interfaces.

Use o arquivo exemplo acima como base.

Configuração do Servidor Primário

No Unix um servidor de nomes é um programa chamado named. É uma parte do pacote do bind o qual é coordenado por Paul Vixie para o Consórcio de Software para a Internet. O Named é incluído na maioria das distribuições do Linux e normalmente é instalado como /usr/sbin/named.

Para configurar o servidor DNS, abra o Linuxconf e pressione a seqüência de botões Configuração -> Rede -> Tarefas do Servidor -> DNS - servidor de nomes de domínio. A partir do menu principal, você pode configurar todo o servidor de nomes de sua empresa. Pressione a opção Configurar domínios para configurar as opções básicas do DNS.

Configuração inicial do DNS

Nesta tela você deve informar os dados referentes:

Domínio: este é o nome do domínio; no caso, o domínio que está sendo criado neste exemplo é chamado de linux.bogus.

Servidor principal: este é o nome da máquina onde o servidor de nomes estará sendo executado. Adicione o Nome da sua maquina + Dominio linux.bogus.. Note que o ponto no final depois do dominío é necessário.

Email do administrador: este é o endereço de correio eletrônico do administrador de sistema. Em caso de problemas, este administrador poderá ser avisado. Note que se usa um ponto (".") no lugar de arroba ("@") neste campo.

Servidores de nome (NS): em uma configuração simples, basta o nome do servidor principal, mas nesse campo vamos adicionar ns1.linux.bogus.. Além disso, você poderá informar aqui quais serão os servidores secundários de seu domínio.

Servidores de correio (MX): aqui você pode definir o servidor que encaminha as mensagens de correio eletrônico do seu domínio para a Internet. Coloque nesse campo mail.linux.bogus.

Configuração de Mapas Reversos

Page 4: Artigo - DNS - Como Funciona o DNS - CL Linux.df.pdf

O DNS REVERSO faz o contrario, transforma IP -> nome_Dominio. Toda a empresa WEB tem um registro de domínio ex: www.algumacoisa.com.br, mas nem todas tem o registro reverso cadastrado, ou seja, não posso com uma simples consulta no nosso DNS perguntar quem é 123.123.123.123 por exemplo, ele deveria nos responder www.algumacoisa.com.br. Isso inibe muito o trafego do SPAM tendo em vista que os SPAMERS usam na maioria dos casos uma conexão discada para enviar o SPAM ou evitam registrar os servidores, pois o anonimato é de fundamental importância na maioria dos casos. Pois se você sabe que o SPAM teve sua origem de uma empresa chamada fulana.detal.com.br, você pode entrar em contato com ele e aplicar as devidas restrições. O DNS reverso também ajuda muito em casos de incidentes, ou seja, tentativas de acesso indevido, scans nas portas dos servidores WEB, pois fica fácil reconhecer a origem do incidente.

A configuração do mapeamento reverso permite a conversão de endereços IP para nomes, facilitando as buscas para o servidor DNS. Para configurar o mapeamento reverso, dirija-se à opção Configurar-> Configurar mapas de IPs reversos.

As opções são basicamente as mesmas para as telas da Configuração de domínios, exceto pelas opções Número da Rede e Intervalo da sub-rede x-y. É através destes campos que o DNS saberá fazer a conversão. Preemcha o campo Número da Rede com endereco ip do servidor sem a ultima parte. Por exemplo, se o ip so servidor é 200.137.66.221, então o campo Número de Rede é 200.137.66

Cadastramento de Estações

Após criado o dominío linux.bogus, será criado um arquivo em /var/named/linux.bogus com os dados referentes ao dominío da seguinte forma: $TTL 43200@ IN SOA pitfall.linuxbogus. root.linux.bogus. ( 2003091105 ; serial 1H ; refresh 15 ; retry 14D ; expire 12H ; default_ttl )@ IN MX 5 mail.linux.bogus.@ IN NS ns1.linux.bogus.

Para se cadastrar uma máquina no Dominío linux.bogus, basta adicionar uma linha no final desse arquivo com o padrão [nome da maquina] IN A [IP]

Exemplo: ns1 IN A 200.137.66.203

OBS: Para se editar o arquivo podemos usar o kwrite (modo gráfico), ou vi (modo texto). Utilizamos o kwrite da seguinte maneira: kwrite /var/named/linux.bogus &

Page 5: Artigo - DNS - Como Funciona o DNS - CL Linux.df.pdf

Outra maneira de se cadastrar uma máquina em um dominío DNS é a partir do menu inicial da configuração do servidor DNS do linuxconf, vá para Configuração -> Rede -> Tarefas do Servidor -> DNS - servidor de nomes de domínio->Adicionar/Editar -> Adicionar/Editar Informações e surgirá uma tela com o dominío linux.bogus. Basta dar 2 cliques sobre o dominío, e vai aparecer uma tela com a listagem das maquinas inseridas no seu dominío. Basta clicar em Adicionar, e completar o [nome da máquina] e o [IP].

Cadastre tanto o seu servidor como seu cliente no domínio. Adicione em /var/named/linux.bogus as linhas: [nome do servidor] IN A [ip do servidor][nome do cliente] IN A [ip do cliente]

Configurando Resolver

O cliente do BIND , é denominado Resolver , cuja a função é estruturar solicitações de hostnames e envia–las até um servidor DNS. O servidor do BIND , é denominado Named , um processo distinto , cuja a função é responder as solicitações enviadas pelo Resolver. Aqui tem um exemplo de um arquivo de configuração do Resolver: /etc/resolv.conf

A linha `search' especifica que o domínio deve ser pesquisado para qualquer nome de máquina com a qual se queira conectar. A linha `nameserver' especifica o endereço do servidor de nomes. Neste caso, a própria máquina, uma vez que é nela que o programa named é executado. Caso se queira indicar vários servidores de nomes, deve-se criar uma linha `nameserver' para cada um deles. (Nota: O programa named nunca lê este arquivo, e sim o resolvedor que utilizar o named).

Abra o seu arquivo /etc/resolv.conf com um editor de texto qualquer( Por ex: krite /etc/resolv.conf & ), e o deixe no seguinte padrão: search linux.bogusnameserver [IP do servidor DNS]

OBS: Faça isso tanto no servidor quanto no cliente

Inicializando named

Para finalizar basta inicializar o named service named start

Execute o ntsysv e marque o serviço [*]named

Testando

Page 6: Artigo - DNS - Como Funciona o DNS - CL Linux.df.pdf

Utilizem o nslookup para testar o Servidor DNS. # nslookup -sil>server [O ip do servidor DNS]> pitfallServer: 200.137.66.221Address: 200.137.66.221#53

Non-authoritative answer:Name: pitfall.genesis.inf.ufes.brAddress: 200.137.66.221> set type=mx> linux.bogusServer: 200.137.66.221Address: 200.137.66.221#53

linux.bogus mail exchanger = 5 mail.linux.bogus.> set type=ns> linux.bogusServer: 200.137.66.221Address: 200.137.66.221#53

linux.bogus nameserver = ns1.linux.bogus.> set type=any> linux.bogusServer: 200.137.66.221Address: 200.137.66.221#53

linux.bogus origin = pitfall.linux.bogus mail addr = root.linux.bogus serial = 2003091802 refresh = 3600 retry = 15 expire = 1209600 minimum = 43200linux.bogus mail exchanger = 5 mail.linux.bogus.linux.bogus nameserver = ns1.linux.bogus.>exit

Se o ocorreu como foi feito acima, seu Servidor DNS esta funcionando. Outro teste é fazer ping nas maquinas (Ex: ping pitfall.lnux.bogus) configuradas no servidor DNS.

Referencias Manual DNS do site da Conectiva

DNS-HOWTO.pt_BR

Ferramenta nslookup