Download - Servidor DNS- BIND
SERVIDOR DNS
1
etcresolv.confhost.conf
bindnamed.confnamed.conf.optionsnamed.conf.localnamed.conf.default-zonesdb.root (root servers)db.local (zona localhost)db.127 (zona localhost reverso)db.0 (reverso da rede)db.255 (reverso do broadcast)rndc.key (chave para acesso local)rndc.conf (chave para acesso remoto)db.iftm.net (nossa zona)db.iftm.net.reverse (nossa zona reversa)
var
cache
bindnamed_dump.db
Logsyslog
Instalação/desinstalação•Servidor: bind9 (instala ambos)•Cliente: bind9utils
Comandos•host ip_ou_hostServidor
•nslookup –type=ns br. a.root-servers.net•nslookup –type=ns com.br. c.dns.br•nslookup –type=ns uol.com.br. c.dns.br•nslookup –type=a uol.com.br. eliot.uol.com.br
•rndc –s ip_servidor dumpdb•rndc –s ip_servidor flush•rndc•rndc-confgen –a•rndc-confgen
•dig [opcoes]@servidor nome tipo•opcoes: -x; +[no]short; +[no]trace
2
DNS – Domain Name System
Sistema de Nomes de Domínios
◦ Traduzir nomes em endereços IP’s (e
vice-versa).
◦ Exemplos
www.uol.com.br 200.147.67.142
200.147.67.142 www.uol.com.br
Este último conhecido como reverso.
3
Exemplo prático DNS
Comandos linux:
◦ host www.uol.com.br
◦ host 200.147.67.142
4
BIND
BIND (Berkeley Internet Name
Domain)
◦ Implementação de código fonte aberto do
protocolo DNS
◦ Em uso em cerca de 75% dos servidores
de nomes na Internet.
5
Instalação / Desintalação Servidor◦ apt-get install bind9◦ apt-get purge bind9
6
Instalação / Desintalação Cliente (administrador)◦ apt-get install bind9utils Consulta especializada ao DNS para uso do
administrador. Cliente (usuário)◦ Não precisa instalar ◦ Já vem instalado pelo sistema
operacional◦ Basta configurar o DNS primário e
secundário.
7
DNS - HIERARQUIA DE CONSULTA
8
Hierarquia de consulta DNS DNS - sistema hierárquico em árvore invertida.
FQDN - Full Qualified Domain Name (Nome deDomínio Totalmente Qualificado)◦ Exemplo: eliot.uol.com.br.
Origem o ponto (“.”), depois domínios esubdomínios.◦ . br com uol eliot
9
Hierarquia de consulta DNS
TLD (Top Level Domains)10
Hierarquia DNS
11
Busca do domínio pela árvore invertida
12
Busca do domínio pela árvore invertida
13
Busca do domínio pela árvore invertida
14
Busca do domínio pela árvore invertida
15
Busca DNS – esquema de busca real
Forma de busca realEsquema de busca simplificado para
demonstração da hierarquia (como nos slides anteriores)
16
Registro de recursos
Registro Tipo Função
Servidor de Nomes (NameServer)
NS Identifica um servidor denomes autorizado
Endereço (Address)
A – IPv4AAAA – IPv6
Converte nome de hospedeiro –host – para endereço IP
Primeiro contato com alguns tipos de registros.
17
Root servers /etc/bind◦ named.conf.default-zones db.root
18
Exemplificando busca real do DNS
Comando: dig +trace www.uol.com.br
Comando: nslookup◦ nslookup -type=ns uol.com.br. a.root-servers.net
◦ nslookup -type=ns uol.com.br. c.dns.br
◦ nslookup -type=ns uol.com.br. c.dns.br
◦ nslookup -type=a uol.com.br. eliot.uol.com.br
19
dig +trace www.uol.com.braluno@iftm:~$ dig +trace www.uol.com.br; <<>> DiG 9.8.1-P1 <<>> +trace www.uol.com.br;; global options: +cmd. 513538 IN NS j.root-servers.net.. 513538 IN NS a.root-servers.net.. .... 513538 IN NS c.root-servers.net.;; Received 228 bytes from 127.0.0.1#53(127.0.0.1) in 3049 ms
br. 172800 IN NS b.dns.br.br. ...br. 172800 IN NS e.dns.br.;; Received 312 bytes from 192.58.128.30#53(192.58.128.30) in 229 ms
uol.com.br. 86400 IN NS borges.uol.com.br.uol.com.br. 86400 IN NS eliot.uol.com.br.uol.com.br. 86400 IN NS charles.uol.com.br.;; Received 143 bytes from 200.192.233.10#53(200.192.233.10) in 253 ms
www.uol.com.br. 300 IN CNAME homeuol.ipv6uol.com.br.;; Received 62 bytes from 200.147.255.105#53(200.147.255.105) in 55 ms
aluno@iftm:~$
20
nslookup Modo interativo◦ Help ou ? não implementado◦ man nslookup
Modo não interativo◦ man nslookup
21
DNS – CACHE DE CONSULTA
22
Cache de consulta Armazena as consultas realizadas pelo
período estipulado pelo fornecedor
TTL (Time-To-Live)
Evita sobrecarregar servidores superiores diminuindo o tráfego até eles.
23
Sistema cache de consulta
24
Cache de consulta
Resposta de algum servidor sem autoridade sobre o domínio, logo de algum cache.
Forçamos a busca no servidor com autoridade sobre o domínio.
25
registro.br
26
CLIENTE DNS
27
Métodos de resolução de nomes Métodos:◦ /etc/hosts◦ DNS
Definição da ordem de consulta◦ /etc/host.conf order hosts, bind
28
Biblioteca resolver
29
Resolv /etc/resolv.conf◦ Configuração: nameserver 192.168.0.10 nameserver 192.168.0.11◦ Permite até 3 endereços DNS◦ O segundo somente será utilizado se o
primeiro falhar e assim sucessivamente
30
ZONA E DOMÍNIO
31
Zona e Domínio Domínio
◦ Um nome de domínio se refere a umúnico ponto no espaço de nomes.
Zonas
◦ Uma zona de autoridade refere-se aolocal no qual estão armazenados osdados sobre as máquinas do domínio.
32
Domínio x zona
Analogia com diretórios33
Domínio x zona Domínios e zonas de autoridade não
são sempre sinônimos.
34
TIPOS DE SERVIDORES DNS
35
Tipos de servidores DNS
Somente cache• Sem
encaminhamento• Com
encaminhamento
Servidor primário (master)
Servidor secundário
(slave)
36
Tipos de Servidores DNS -Diferenças básicas
• Não tem autoridade sobre domínio (zona)
Somente cache
• É autoridade sobre um domínio (zona)
Servidor primário
• Somente utilizado quando servidor primário falhar (espelho do primário)
Servidor secundário
37
Tipos de servidores DNS em relação à zona
38
Servidores primário e secundário
39
Servidores somente cache Somente cache sem encaminhamento
◦ Não tem autoridade sobre domínio
◦ Possui cache
◦ Não repassa consulta para outro servidor, busca no root servers
Somente cache com encaminhamento
◦ Não tem autoridade sobre domínio
◦ Possui cache
◦ Repassa consulta para outro servidor (provedor)
◦ Caso provedor estiver indisponível, busca no root servers
40
SERVIDOR SOMENTE CACHE SEM ENCAMINHAMENTO
41
Servidor somente cache sem encaminhamento Funcionamento:◦ Busca endereço somente no root servers◦ Armazena endereços no cache rndc dumpdb descarrega cache no arquivo rndc flush limpa cache da memória
Diretiva de permissão de acesso◦ /etc/bind/named.conf.options allow-query { 127.0.0.1; 192.168.0.0/24; };
42
RNDC
43
Rndc Utilitário de controle remoto para
servidor de nomes (controla certos aspectos – zonas).
Tipos de acessos por chaves simétricas:◦ Somente local Rndc-confgen -a -u bind -a gera a chave automaticamente -u especifica usuário dono como bind /etc/bind/rndc.key
◦ Local e remoto Rndc-confgenseguir instruções /etc/bind/named.conf /etc/bind/rndc.conf
44
/etc/bind/rndc.conf# Start of rndc.confkey "rndc-key" {
algorithm hmac-md5;secret "irHJgBhENea1UBD9dLhvUw==";
};
options {default-key "rndc-key";default-server 192.168.0.141;default-port 953;
};# End of rndc.conf
45
/etc/bind/named.confinclude "/etc/bind/named.conf.options";include "/etc/bind/named.conf.local";include "/etc/bind/named.conf.default-zones";
# Use with the following in named.conf, adjusting the allow list as needed:
key "rndc-key" {algorithm hmac-md5;secret "irHJgBhENea1UBD9dLhvUw==";
};
controls {inet 192.168.0.141 port 953
allow { 127.0.0.1; 192.168.0.141; } keys { "rndc-key"; };};# End of named.conf
46
SERVIDOR SOMENTE CACHE COM ENCAMINHAMENTO
47
Servidor somente cache com encaminhamento Funcionamento:◦ Servidor local armazena cache das
consultas◦ Sem cache busca no DNS do provedor
indicado◦ Provedor sem cache provedor busca
no root servers◦ Provedor indisponível servidor local
busca no root servers.
48
/etc/bind/named.conf.optionsoptions {
directory "/var/cache/bind";
// cache com encaminhamentoforward first;forwarders { 200.225.197.34; 200.225.197.37; };
auth-nxdomain no; # conform to RFC1035listen-on-v6 { any; };
};
49
ARQUIVO DE LOG
50
Arquivo de log
/var/log/syslog
51
SERVIDOR PRIMÁRIO
52
Servidor primário Funcionamento:◦ Servidor local armazena cache das
consultas◦ Encaminhamento ao DNS do provedor
opcional◦ Tem autoridade sobre um domínio
(Criação de zonas)
53
Configurações de zonas
• Master – dados originais, respostas autorizadas
• Slave – cópia dos dados originais
• Hint – informa os servidores raízes
Tipos de
zonas
54
ZONA MASTER/etc/bind/named.conf.local
// Do any local configuration here
// Consider adding the 1918 zones here, if they are not used in your
// organization//include "/etc/bind/zones.rfc1918";
zone "iftm.net.br" {type master;file "/etc/bind/db.iftm.net.br";
};Falta criar o arquivo da
zona primária.
55
Arquivo zona primária -estrutura$TTL 86400@ IN SOA gustavo.iftm.net.br. root.iftm.net.br. (
110800360060480086400 )
; servidores de nomes@ IN NS gustavo.iftm.net.br.
; servidores de e-mail@ IN MX 10 mail.iftm.net.br.
;enderecos dos servidoresmail IN A 192.168.0.100gustavo IN A 192.168.0.177
;estacoes de trabalhocomputador01 IN A 192.168.0.201computador02 IN A 192.168.0.202
;apelidoswww IN CNAME gustavo
1. Diretivas ($)2. Registro de recurso SOA3. Outros registros 56
Registro de recursosRegistro Tipo Função
Início de Autoridade (Start Of Authority)
SOAMarca o começo dos dados de zona e define parâmetros globais
Servidor de Nomes (NameServer) NS Identifica um servidor de
nomes autorizado
Endereço (Address) A Converte nome de hospedeiro – host – para endereço IP
Ponteiro (Pointer) PTRConverte endereço IP para um nome de hospedeiro – host (DNS reverso)
Servidor de e-mail (MailExchanger) MX Identifica o servidor de e-mail
para este domínio
Nome canônico CNAME Define apelido para um nome
57
Estrutura do SOA (Start Of Authority)
@ IN SOA gustavo.iftm.net.br. root.iftm.net.br. (
1 ; Número serial10800 ; Atualiza em 3 horas3600 ; Em caso de falha, nova
; tentativa em 1 hora604800; Caso não consiga atualização,
; expira em 7 dias86400) ; Tempo de vida para cache
; negativo para outros ; servidores = 1 dia
58
/etc/bind/db.iftm.net.br$TTL 86400@ IN SOA gustavo.iftm.net.br. root.iftm.net.br. (
1 ; Número serial10800 ; Atualiza em 3 horas 3600 ; Em caso de falha, nova tentativa em 1 hora604800 ; Caso não consiga atualização, expira em 7 dias86400 ) ; Tempo de vida para cache negativo outros servidores = 1 dia
; servidores de nomes@ IN NS gustavo.iftm.net.br.
; servidores de e-mail@ IN MX 10 mail.iftm.net.br.
;enderecos dos servidoresmail IN A 192.168.0.100gustavo IN A 192.168.0.177
;estacoes de trabalhocomputador01 IN A 192.168.0.201computador02 IN A 192.168.0.202
;apelidoswww IN CNAME gustavo
59
Testando as configurações# dig +short @192.168.0.141 iftm.net.br soagustavo.iftm.net.br. root.iftm.net.br. 1 10800 3600 604800 86400
# dig +short @192.168.0.141 iftm.net.br nsgustavo.iftm.net.br.
# dig +short @192.168.0.141 iftm.net.br mx10 mail.iftm.net.br.
# dig +short @192.168.0.141 mail.iftm.net.br a192.168.0.100
60
Testando as configurações# dig +short @192.168.0.141 gustavo.iftm.net.br a192.168.0.177
# dig +short @192.168.0.141 computador01.iftm.net.br a192.168.0.201
# dig +short @192.168.0.141 computador02.iftm.net.br a192.168.0.202
# dig +short @192.168.0.141 www.iftm.net.br agustavo.iftm.net.br.192.168.0.177
61
Zona reversa
www.brasil.gov.br. 192.168.200.5050.200.168.192.in-addr.arpa
62
ZONA REVERSA/etc/bind/named.conf.local
// Incluir a partir do servidor primariozone "iftm.net.br" {
type master;file "/etc/bind/db.iftm.net.br";
};
// Incluir a partir do servidor primariozone "0.168.192.in-addr.arpa" {
type master;file "/etc/bind/db.iftm.net.br.reverse";
};Falta criar o arquivo da
zona reversa.
63
/etc/bind/db.iftm.net.br.reverse$TTL 86400@ IN SOA gustavo.iftm.net.br. root.iftm.net.br. (
1 ; Número serial10800 ; Atualiza em 3 horas3600 ; Em caso de falha, nova tentativa em 1 hora604800 ; Caso não consiga atualização, expira em 7 dias86400 ) ; Tempo vida para cache negativo outros servidores = 1 dia
;; servidores de nomes@ IN NS gustavo.iftm.net.br.
;reverso dos servidores100 IN PTR mail.iftm.net.br.177 IN PTR gustavo.iftm.net.br.
;reverso das estacoes de trabalho201 IN PTR computador01.iftm.net.br.202 IN PTR computador02.iftm.net.br.
64
Testando as configurações# dig +short @192.168.0.141 -x 192.168.0.100mail.iftm.net.br.
# dig +short @192.168.0.141 -x 192.168.0.177gustavo.iftm.net.br.
# dig +short @192.168.0.141 -x 192.168.0.201computador01.iftm.net.br.
# dig +short @192.168.0.141 -x 192.168.0.202computador02.iftm.net.br.
65
Exercício prático Simule com o comando nslookup o
acesso passo a passo do servidor raiz ao servidor dns do ig.com.br.
Com o comado nslookup faça uma resolução de nomes com autoridade e sem autoridade do endereço www.ig.com.br.
66
Exercício prático Crie um servidor DNS somente cache
sem encaminhamento (basta instalar o Bind e configurar o endereço DNS).
Permita somente a rede local acessar o servidor DNS.
Acrescente ao servidor DNS somente cache o encaminhamento aos servidores DNS da CTBC (200.225.197.34 e 200.225.197.37)
67
Exercício prático Configure um servidor primário para a
zona de autoridade “iftm.net.br”.◦ Siga o modelo dos slides para criar as
zonas direta e reversa.◦ Adapte os endereços para os endereços
do laboratório◦ Após configurado: Faça os teste com o comando dig Tente pingar numa máquina de um colega
indicando o nome em vez do IP.
68
Exercício complementar Altere o nome da zona de autoridade
para “empresa.com.br”.◦ Após configurado: Faça os teste com o comando dig Tente pingar numa máquina de um colega
indicando o nome em vez do IP.
69
Exercício complementar Faça a resolução do nome do site
www.terra.com.br usando o navegador WEB.◦ Verifique os dados do cache do bind◦ Limpe o cache do bind◦ Verifique os dados do cache do bind
Configure o Rndc-confgen para permitir o acesso local e remoto.
70
Referências Bibliográficas Administração de redes linux I.
Conectiva 2009.
LIMA, J. P. Administração de Redes Linux. Terra. São Paulo, 2003.
Linux Network Servers - 457 – DNS Parte 1 e 2, www.4linux.com.br
71