dns
Post on 29-Nov-2014
271 Views
Preview:
TRANSCRIPT
Tutorial DNS
3° PTT Forum
David Robert Camargo de Campos <david@registro.br>
Rafael Dantas Justo <rafael@registro.br>
Wilson Rogerio Lopes <wilson@registro.br>
Registro.br
Dezembro de 2009
1 / 135
Objetivos
Entender os conceitos de DNS
Configurar servidores autoritativos
Configurar servidores recursivos
Entender as diferencas entre DNS e DNSSEC
Configurar corretamente o firewall
Testar performance dos servidores
Planejar escalabilidade de recursivos
Monitorar os servidores
2 / 135
Cronograma
1 DNSConceitosArquitetura
2 Servidores DNS AutoritativosCenarioArquivos de ZonaConfiguracao BINDConfiguracao NSD
3 Servidores DNS RecursivosCenarioConfiguracao BINDServidores DNS Recursivos abertos
4 Recursivo e Autoritativo
5 DNSSECVulnerabilidades do DNSConceitoConfiguracao do AutoritativoConfiguracao do Recursivo
6 FirewallsDNSEDNS0Configuracao
7 Testes de PerformanceRecursivoAutoritativo
8 Escalabilidade de Recursivos
9 MonitoramentoAutoritativoRecursivo
3 / 135
Parte I
Conceitos DNS
4 / 135
DNS - Domain Name System
O Sistema de Nomes de Domınio e um banco de dados distribuıdo. Issopermite um controle local dos segmentos do banco de dados global,embora os dados em cada segmento estejam disponıveis em toda a redeatraves de um esquema cliente-servidor.
- Arquitetura hierarquica, dados dispostos em uma arvore invertida
- Distribuıda eficientemente, sistema descentralizado e com cache
- O principal proposito e a resolucao de nomes de domınio emenderecos IP e vice-versa
exemplo.foo.eng.br ←→ 200.160.10.251www.cgi.br ←→ 200.160.4.2
www.registro.br ←→ 2001:12ff:0:2::3
5 / 135
Hierarquia
"."
br
eng
foo
tutorial
DNS
database
tutorial.foo.eng.br
/
usr
local
bin
imake
UNIX
filesystem
/usr/local/bin/imake
6 / 135
Domınio Vs Zona
Zona gov.brZona nom.br
Zona eng.br
Domínio br
Zona joao.silva.nom.brZona tutorial.foo.eng.br
Zona foo.eng.br
Zona br
"."
com
eng
br org
nom gov
foo
tutorial
joao
Zona fazenda.gov.br
fazenda
Delegação
silva
Delegacao
Indica uma transferencia
de responsabilidade na
administracao apartir
daquele ponto na arvore
DNS
7 / 135
Resource RecordsOs dados associados com os nomes de domınio estao contidos emResource Records ou RRs (Registro de Recursos)
Sao divididos em classes e tiposAtualmente existe uma grande variedade de tiposO conjunto de resource records com o mesmo nome de domınio,classe e tipo e denominado RRset
Alguns Tipos Comuns de Records
SOA Indica onde comeca a autoridade a zona
NS Indica um servidor de nomes para a zona
A Mapeamento de nome a endereco (IPv4)
AAAA Mapeamento de nome a endereco (IPv6)
MX Indica um mail exchanger para um nome (servidor de email)
CNAME Mapeia um nome alternativo (apelido)
PTR Mapeamento de endereco a nome8 / 135
Tipos de servidores
Servidor Recursivo
Ao receber requisicoes de resolucao de nomes, faz requisicoes para osservidores autoritativos e conforme a resposta recebida dos mesmoscontinua a realizar requisicoes para outros servidores autoritativos ateobter a resposta satisfatoria
Servidor Autoritativo
Ao receber requisicoes de resolucao de nome, responde um endereco casopossua, uma referencia caso conheca o caminho da resolucao ou umanegacao caso nao conheca
9 / 135
Exemplo de requisicao de endereco
Supondo que o
cache esta vazio ou
sem informacoes de
br, eng.br,
foo.eng.br,
exemplo.foo.eng.br
ResolverServico localizado
no cliente que tem
como
responsabilidade
resolver as
requisicoes DNS
para diversos
aplicativos10 / 135
Exemplo de requisicao de endereco
Supondo que o
cache esta vazio ou
sem informacoes de
br, eng.br,
foo.eng.br,
exemplo.foo.eng.br
11 / 135
Exemplo de requisicao de endereco
12 / 135
Exemplo de requisicao de endereco
13 / 135
Exemplo de requisicao de endereco
14 / 135
Exemplo de requisicao de endereco
15 / 135
Exemplo de requisicao de endereco
Resolver
Servidor DNS
Recursivo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
exem
plo
.foo.e
ng.b
r ?
exemplo.fo
o.eng.br ?
Refere
ncia se
rvidore
s .br
exemplo.foo.eng.br ?
Referencia servidores foo.eng.br
exemplo.foo.eng.br ?
"."
BR
ENG
FOO
TUTORIAL
16 / 135
Exemplo de requisicao de endereco
Resolver
Servidor DNS
Recursivo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
exem
plo
.foo.e
ng.b
r ?
exemplo.fo
o.eng.br ?
Refere
ncia se
rvidore
s .br
exemplo.foo.eng.br ?
Referencia servidores foo.eng.br
exemplo.foo.eng.br ?
200.160.10.251
"."
BR
ENG
FOO
TUTORIAL
17 / 135
Exemplo de requisicao de endereco
Resolver
Servidor DNS
Recursivo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
exem
plo
.foo.e
ng.b
r ?
20
0.1
60
.10
.25
1
exemplo.fo
o.eng.br ?
Refere
ncia se
rvidore
s .br
exemplo.foo.eng.br ?
Referencia servidores foo.eng.br
exemplo.foo.eng.br ?
200.160.10.251
"."
BR
ENG
FOO
TUTORIAL
18 / 135
Exemplo de requisicao de endereco
Resolver
Servidor DNS
Recursivo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
exem
plo
.foo.e
ng.b
r ?
20
0.1
60
.10
.25
1
exemplo.fo
o.eng.br ?
Refere
ncia se
rvidore
s .br
exemplo.foo.eng.br ?
Referencia servidores foo.eng.br
exemplo.foo.eng.br ?
200.160.10.251
"."
BR
ENG
FOO
TUTORIAL
19 / 135
Fluxo de dados
1 Resolver faz consultas no Recursivo
2 Recursivo faz consultas no Master ou Slave
3 Master tem a zona original (via arquivo ou Dynamic Update)
4 Slave recebe a zona do Master (AXFR ou IXFR)
20 / 135
Parte II
Configurando Servidores DNS Autoritativos
21 / 135
Cenario
Organizacao Foo Engenharia Ltda.
Possui o domınio foo.eng.br registrado no Registro.br;
Possui o bloco 200.160.0/24 designado de um provedor;
Possui o bloco 2001:12ff::/32 alocado pelo Registro.br.
Cliente A
Possui o domınio a.foo.eng.br delegado pela organizacao Foo;
Possui o bloco 200.160.0.127/28 designado pela organizacao Foo.
Cliente B
Possui o domınio b.foo.eng.br delegado pela organizacao Foo;
Possui o bloco 200.160.0.191/26 designado pela organizacao Foo.
22 / 135
Cenario
Cliente BCliente A
Organização Foo Engenharia Ltda.
200.160.0/24
200.160.0.127/28 200.160.0.191/26
foo.eng.br
a.foo.eng.br b.foo.eng.br
2001:12ff::/32
23 / 135
Cenario
200.160.0/24
200.160.0.0/25
200.160.0.191/26
200.160.0.127/28
200.160.0.143/28
200.160.0.159/27
Alocados Livres
24 / 135
Organizacao Foo - Arquivo de zona
db.foo.eng.brfoo.eng.br. 86400 IN SOA ns1.foo.eng.br. hostmaster.foo.eng.br. (
2009120200 ; serial
3600 ; refresh
3600 ; retry
3600 ; expire
900 ) ; minimum
;; Servidores DNS que respondem por esta zonafoo.eng.br. 86400 IN NS ns1.foo.eng.br.
foo.eng.br. 86400 IN NS ns2.foo.eng.br.
;; Cliente Aa.foo.eng.br. 86400 IN NS ns1.a.foo.eng.br.
a.foo.eng.br. 86400 IN NS ns2.a.foo.eng.br.
;; Cliente Bb.foo.eng.br. 86400 IN NS ns1.b.foo.eng.br.
b.foo.eng.br. 86400 IN NS ns2.b.foo.eng.br.
25 / 135
Organizacao Foo - Arquivo de zona (continuacao...)
db.foo.eng.br;; Traducao nomes → IPs (GLUEs)ns1.foo.eng.br. 86400 IN A 200.160.0.1
ns2.foo.eng.br. 86400 IN A 200.160.0.2
ns1.foo.eng.br. 86400 IN AAAA 2001:12ff::1
ns2.foo.eng.br. 86400 IN AAAA 2001:12ff::2
ns1.a.foo.eng.br. 86400 IN A 200.160.0.128
ns2.a.foo.eng.br. 86400 IN A 200.160.0.129
ns1.b.foo.eng.br. 86400 IN A 200.160.0.192
ns2.b.foo.eng.br. 86400 IN A 200.160.0.193
;; Web serverwww.foo.eng.br. 86400 IN A 200.160.0.3
www.foo.eng.br. 86400 IN AAAA 2001:12ff::3
26 / 135
Organizacao Foo - Arquivo de zona reverso IPv4
db.0.160.200.in-addr.arpa0.160.200.in-addr.arpa. 172800 IN SOA ns1.foo.eng.br. hostmaster.foo.eng.br. (
2009120200 ; serial
3600 ; refresh
3600 ; retry
3600 ; expire
900 ) ; minimum
;; Servidores DNS que respondem por esta zona reverso
0.160.200.in-addr.arpa. 172800 IN NS ns1.foo.eng.br.
0.160.200.in-addr.arpa. 172800 IN NS ns2.foo.eng.br.
;; Cliente A (200.160.0.127 → 200.160.0.142 = 200.160.0.127/28)
127/28.0.160.200.in-addr.arpa. 172800 IN NS ns1.a.foo.eng.br.
127/28.0.160.200.in-addr.arpa. 172800 IN NS ns2.a.foo.eng.br.
128.0.160.200.in-addr.arpa. 172800 IN CNAME 128.127/28.0.160.200.in-addr.arpa.
129.0.160.200.in-addr.arpa. 172800 IN CNAME 129.127/28.0.160.200.in-addr.arpa.
...
142.0.160.200.in-addr.arpa. 172800 IN CNAME 142.127/28.0.160.200.in-addr.arpa.
27 / 135
Organizacao Foo - Arquivo de zona reverso IPv4
db.0.160.200.in-addr.arpa (continuacao...);; Cliente B (200.160.0.191 → 200.160.0.255 = 200.160.0.191/26)
191/26.0.160.200.in-addr.arpa. 172800 IN NS ns1.b.foo.eng.br.
191/26.0.160.200.in-addr.arpa. 172800 IN NS ns2.b.foo.eng.br.
192.0.160.200.in-addr.arpa. 172800 IN CNAME 192.127/28.0.160.200.in-addr.arpa.
193.0.160.200.in-addr.arpa. 172800 IN CNAME 193.127/28.0.160.200.in-addr.arpa.
...
254.0.160.200.in-addr.arpa. 172800 IN CNAME 254.127/28.0.160.200.in-addr.arpa.
;; Enderecos reversos
1.0.160.200.in-addr.arpa. 86400 IN PTR ns1.foo.eng.br.
2.0.160.200.in-addr.arpa. 86400 IN PTR ns2.foo.eng.br.
3.0.160.200.in-addr.arpa. 86400 IN PTR www.foo.eng.br.
...
28 / 135
Organizacao Foo - Arquivo de zona reverso IPv4
Mas por que e necessario o CNAME?
Porque a RFC 2317 recomenda;
Esta solucao nao exige alteracoes nos softwares dos servidores DNS;
Alteracao de hosts no reverso dos clientes nao implicam em alteracoesna zona reverso da organizacao Foo.
29 / 135
Organizacao Foo - Arquivo de zona reverso IPv6
db.f.f.2.1.1.0.0.2.ip6.arpaf.f.2.1.1.0.0.2.ip6.arpa. 86400 IN SOA ns1.foo.eng.br. hostmaster.foo.eng.br. (
2009120200 ; serial
3600 ; refresh
3600 ; retry
3600 ; expire
900 ) ; minimum
;; Servidores DNS que respondem por esta zonaf.f.2.1.1.0.0.2.ip6.arpa. 86400 IN NS ns1.foo.eng.br.
f.f.2.1.1.0.0.2.ip6.arpa. 86400 IN NS ns2.foo.eng.br.$ORIGIN 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.f.f.2.1.1.0.0.2.ip6.arpa.
1 86400 IN PTR ns1.foo.eng.br.
2 86400 IN PTR ns2.foo.eng.br.
3 86400 IN PTR www.foo.eng.br.
Dificuldade
A inviabilidade de listar todos os reversos dos hosts de um bloco IPv6gerou diversas discussoes. O draft draft-howard-isp-ip6rdns-01 aborda estetema.
30 / 135
Publicacao de Reverso
Informacao
Para as delegacoes informadas diretamente na interface do Registro.br(/24 ou maior) as publicacoes das alteracoes ocorrem a cada 4 horas comınicio as 2hs.
31 / 135
Cliente A - Arquivo de zona
db.a.foo.eng.bra.foo.eng.br. 86400 IN SOA ns1.a.foo.eng.br. hostmaster.a.foo.eng.br. (
2009120200 ; serial
3600 ; refresh
3600 ; retry
3600 ; expire
900 ) ; minimum
;; Servidores DNS que respondem por esta zonaa.foo.eng.br. 86400 IN NS ns1.a.foo.eng.br.
a.foo.eng.br. 86400 IN NS ns2.a.foo.eng.br.
;; Traducao nomes → IPs (GLUEs)ns1.a.foo.eng.br. 86400 IN A 200.160.0.128
ns2.a.foo.eng.br. 86400 IN A 200.160.0.129
;; Web serverwww.a.foo.eng.br. 86400 IN A 200.160.0.142
32 / 135
Cliente A - Arquivo de zona reverso
db.127.0.160.200.in-addr.arpa127/28.0.160.200.in-addr.arpa. 172800 IN SOA ns1.a.foo.eng.br. hostmaster.a.foo.eng.br. (
2009120200 ; serial
3600 ; refresh
3600 ; retry
3600 ; expire
900 ) ; minimum
;; Servidores DNS que respondem por esta zona reverso
127/28.0.160.200.in-addr.arpa. 172800 IN NS ns1.a.foo.eng.br.
127/28.0.160.200.in-addr.arpa. 172800 IN NS ns2.a.foo.eng.br.
;; Enderecos reversos
128.127/28.0.160.200.in-addr.arpa. 172800 IN PTR ns1.a.foo.eng.br.
129.127/28.0.160.200.in-addr.arpa. 172800 IN PTR ns2.a.foo.eng.br.
...
142.127/28.0.160.200.in-addr.arpa. 172800 IN PTR www.a.foo.eng.br.
33 / 135
Cliente B - Arquivo de zona
db.b.foo.eng.brb.foo.eng.br. 86400 IN SOA ns1.b.foo.eng.br. hostmaster.b.foo.eng.br. (
2009120200 ; serial
3600 ; refresh
3600 ; retry
3600 ; expire
900 ) ; minimum
;; Servidores DNS que respondem por esta zonab.foo.eng.br. 86400 IN NS ns1.b.foo.eng.br.
b.foo.eng.br. 86400 IN NS ns2.b.foo.eng.br.
;; Traducao nomes → IPs (GLUEs)ns1.b.foo.eng.br. 86400 IN A 200.160.0.192
ns2.b.foo.eng.br. 86400 IN A 200.160.0.193
;; Web serverwww.b.foo.eng.br. 86400 IN A 200.160.0.254
34 / 135
Cliente B - Arquivo de zona reverso
db.191.0.160.200.in-addr.arpa191/26.0.160.200.in-addr.arpa. 172800 IN SOA ns1.b.foo.eng.br. hostmaster.b.foo.eng.br. (
2009120200 ; serial
3600 ; refresh
3600 ; retry
3600 ; expire
900 ) ; minimum
;; Servidores DNS que respondem por esta zona reverso
191/26.0.160.200.in-addr.arpa. 172800 IN NS ns1.b.foo.eng.br.
191/26.0.160.200.in-addr.arpa. 172800 IN NS ns2.b.foo.eng.br.
;; Enderecos reversos
192.191/26.0.160.200.in-addr.arpa. 172800 IN PTR ns1.b.foo.eng.br.
193.191/26.0.160.200.in-addr.arpa. 172800 IN PTR ns2.b.foo.eng.br.
...
254.191/26.0.160.200.in-addr.arpa. 172800 IN PTR www.b.foo.eng.br.
35 / 135
Organizacao Foo - Arquivo de configuracao (BIND)
Gerando chave TSIGdnssec-keygen -a HMAC-MD5 -b 128 -n HOST key-foo
named.conf no master (200.160.0.1)options {
listen-on { 200.160.0.1; };listen-on-v6 { 2001:12ff::1; };recursion no;
};
key ‘‘key-foo’’ {algorithm hmac-md5;
secret ‘‘VgMNxtub39M=’’;
};
server 200.160.0.2 {keys { key-foo; };
};
server 2001:12ff::2 {keys { key-foo; };
};
36 / 135
Organizacao Foo - Arquivo de configuracao (BIND)
named.conf no master (200.160.0.1) (continuacao...)zone ‘‘foo.eng.br’’ {
type master;
file ‘‘db.foo.eng.br’’;
allow-transfer { 200.160.0.2; 2001:12ff::2; key key-foo; };};
zone ‘‘0.160.200.in-addr.arpa’’ {type master;
file ‘‘db.0.160.200.in-addr.arpa’’;
allow-transfer { 200.160.0.2; 2001:12ff::2; key key-foo; };};
zone ‘‘f.f.2.1.1.0.0.2.ip6.arpa’’ {type master;
file ‘‘db.f.f.2.1.1.0.0.2.ip6.arpa’’;
allow-transfer { 200.160.0.2; 2001:12ff::2; key key-foo; };};
37 / 135
Organizacao Foo - Arquivo de configuracao (BIND)
named.conf no slave (200.160.0.2)options {
listen-on { 200.160.0.2; };listen-on-v6 { 2001:12ff::2; };recursion no;
};
key ‘‘key-foo’’ {algorithm hmac-md5;
secret ‘‘VgMNxtub39M=’’;
};
server 200.160.0.1 {keys { key-foo; };
};
server 2001:12ff::1 {keys { key-foo; };
};
38 / 135
Organizacao Foo - Arquivo de configuracao (BIND)
named.conf no slave (200.160.0.2) (continuacao...)zone ‘‘foo.eng.br’’ {
type slave;
file ‘‘db.foo.eng.br’’;
masters { 200.160.0.1; 2001:12ff::1; };};
zone ‘‘0.160.200.in-addr.arpa’’ {type slave;
file ‘‘db.0.160.200.in-addr.arpa’’;
masters { 200.160.0.1; 2001:12ff::1; };};
zone ‘‘f.f.2.1.1.0.0.2.ip6.arpa’’ {type slave;
file ‘‘db.f.f.2.1.1.0.0.2.ip6.arpa’’;
masters { 200.160.0.1; 2001:12ff::1; };};
39 / 135
Cliente A - Arquivo de configuracao (BIND)
Gerando chave TSIGdnssec-keygen -a HMAC-MD5 -b 128 -n HOST key-cliente-a
named.conf no master (200.160.0.128)options {
listen-on { 200.160.0.128; };recursion no;
};
key ‘‘key-cliente-a’’ {algorithm hmac-md5;
secret ‘‘VgMNxtub39M=’’;
};
server 200.160.0.129 {keys { key-cliente-a; };
};
zone ‘‘a.foo.eng.br’’ {type master;
file ‘‘db.a.foo.eng.br’’;
allow-transfer { 200.160.0.129; key key-cliente-a; };};
zone ‘‘127/28.0.160.200.in-addr.arpa’’ {type master;
file ‘‘db.127.0.160.200.in-addr.arpa’’;
allow-transfer { 200.160.0.129; key key-cliente-a; };};
40 / 135
Cliente A - Arquivo de configuracao (BIND)
named.conf no slave (200.160.0.129)options {
listen-on { 200.160.0.129; };recursion no;
};
key ‘‘key-cliente-a’’ {algorithm hmac-md5;
secret ‘‘VgMNxtub39M=’’;
};
server 200.160.0.128 {keys { key-cliente-a; };
};
zone ‘‘a.foo.eng.br’’ {type slave;
file ‘‘db.a.foo.eng.br’’;
masters { 200.160.0.128; };};
zone ‘‘127/28.0.160.200.in-addr.arpa’’ {type slave;
file ‘‘db.127.0.160.200.in-addr.arpa’’;
masters { 200.160.0.128; };};
41 / 135
Cliente B - Arquivo de configuracao (BIND)
Gerando chave TSIGdnssec-keygen -a HMAC-MD5 -b 128 -n HOST key-cliente-b
named.conf no master (200.160.0.192)options {
listen-on { 200.160.0.192; };recursion no;
};
key ‘‘key-cliente-b’’ {algorithm hmac-md5;
secret ‘‘VgMNxtub39M=’’;
};
server 200.160.0.193 {keys { key-cliente-b; };
};
zone ‘‘b.foo.eng.br’’ {type master;
file ‘‘db.b.foo.eng.br’’;
allow-transfer { 200.160.0.193; key key-cliente-b; }};
zone ‘‘191/26.0.160.200.in-addr.arpa’’ {type master;
file ‘‘db.191.0.160.200.in-addr.arpa’’;
allow-transfer { 200.160.0.193; key key-cliente-b; };};
42 / 135
Cliente B - Arquivo de configuracao (BIND)
named.conf no slave (200.160.0.193)options {
listen-on { 200.160.0.193; };recursion no;
};
key ‘‘key-cliente-b’’ {algorithm hmac-md5;
secret ‘‘VgMNxtub39M=’’;
};
server 200.160.0.192 {keys { key-cliente-b; };
};
zone ‘‘b.foo.eng.br’’ {type slave;
file ‘‘db.b.foo.eng.br’’;
masters { 200.160.0.192; };};
zone ‘‘191/26.0.160.200.in-addr.arpa’’ {type slave;
file ‘‘db.191.0.160.200.in-addr.arpa’’;
masters { 200.160.0.192; };};
43 / 135
Organizacao Foo - Arquivo de configuracao (NSD)
Gerando chave TSIG - Com uma ferramenta do BIND!dnssec-keygen -a HMAC-MD5 -b 128 -n HOST key-foo
nsd.conf no master (200.160.0.1)key:
name: key-foo
algorithm: hmac-md5
secret: ‘‘VgMNxtub39M=’’
zone:
name: foo.eng.br
zonefile: db.foo.eng.br
notify: 200.160.0.2 NOKEY
notify: 2001:12ff::2 NOKEY
provide-xfr: 200.160.0.2 key-foo
provide-xfr: 2001:12ff::2 key-foo
44 / 135
Organizacao Foo - Arquivo de configuracao (NSD)
nsd.conf no master (200.160.0.1) (continuacao...)zone:
name: 0.160.200.in-addr.arpa
zonefile: db.0.160.200.in-addr.arpa
notify: 200.160.0.2 NOKEY
notify: 2001:12ff::2 NOKEY
provide-xfr: 200.160.0.2 key-foo
provide-xfr: 2001:12ff::2 key-foo
zone:
name: f.f.2.1.1.0.0.2.ip6.arpa
zonefile: db.f.f.2.1.1.0.0.2.ip6.arpa
notify: 200.160.0.2 NOKEY
notify: 2001:12ff::2 NOKEY
provide-xfr: 200.160.0.2 key-foo
provide-xfr: 2001:12ff::2 key-foo
Observacao
O NSD quando utilizado como master nao envia IXFR para os slaves. Mascaso o NSD seja utilizado como slave, ele entende requisicoes IXFR.
45 / 135
Organizacao Foo - Arquivo de configuracao (NSD)
nsd.conf no slave (200.160.0.2)key:
name: key-foo
algorithm: hmac-md5
secret: ‘‘VgMNxtub39M=’’
zone:
name: foo.eng.br
zonefile: db.foo.eng.br
allow-notify: 200.160.0.1 NOKEY
allow-notify: 2001:12ff::1 NOKEY
request-xfr: 200.160.0.1 key-foo
request-xfr: 2001:12ff::1 key-foo
zone:
name: 0.160.200.in-addr.arpa
zonefile: db.0.160.200.in-addr.arpa
allow-notify: 200.160.0.1 NOKEY
allow-notify: 2001:12ff::1 NOKEY
request-xfr: 200.160.0.1 key-foo
request-xfr: 2001:12ff::1 key-foo
zone:
name: f.f.2.1.1.0.0.2.ip6.arpa
zonefile: db.f.f.2.1.1.0.0.2.ip6.arpa
allow-notify: 200.160.0.1 NOKEY
allow-notify: 2001:12ff::1 NOKEY
request-xfr: 200.160.0.1 key-foo
request-xfr: 2001:12ff::1 key-foo
46 / 135
Cliente A - Arquivo de configuracao (NSD)
Gerando chave TSIG - Com uma ferramenta do BIND!dnssec-keygen -a HMAC-MD5 -b 128 -n HOST key-cliente-a
nsd.conf no master (200.160.0.128)key:
name: key-cliente-a
algorithm: hmac-md5
secret: ‘‘VgMNxtub39M=’’
zone:
name: a.foo.eng.br
zonefile: db.a.foo.eng.br
notify: 200.160.0.129 NOKEY
provide-xfr: 200.160.0.129 key-cliente-a
zone:
name: 127/28.0.160.200.in-addr.arpa
zonefile: db.127.0.160.200.in-addr.arpa
notify: 200.160.0.129 NOKEY
provide-xfr: 200.160.0.129 key-cliente-a
47 / 135
Cliente A - Arquivo de configuracao (NSD)
nsd.conf no slave (200.160.0.129)key:
name: key-cliente-a
algorithm: hmac-md5
secret: ‘‘VgMNxtub39M=’’
zone:
name: a.foo.eng.br
zonefile: db.a.foo.eng.br
allow-notify: 200.160.0.128 NOKEY
request-xfr: 200.160.0.128 key-cliente-a
zone:
name: 127/28.0.160.200.in-addr.arpa
zonefile: db.127.0.160.200.in-addr.arpa
allow-notify: 200.160.0.128 NOKEY
request-xfr: 200.160.0.128 key-cliente-a
48 / 135
Cliente B - Arquivo de configuracao (NSD)
Gerando chave TSIG - Com uma ferramenta do BIND!dnssec-keygen -a HMAC-MD5 -b 128 -n HOST key-cliente-b
nsd.conf no master (200.160.0.192)key:
name: key-cliente-b
algorithm: hmac-md5
secret: ‘‘VgMNxtub39M=’’
zone:
name: b.foo.eng.br
zonefile: db.b.foo.eng.br
notify: 200.160.0.193 NOKEY
provide-xfr: 200.160.0.193 key-cliente-b
zone:
name: 191/26.0.160.200.in-addr.arpa
zonefile: db.191.0.160.200.in-addr.arpa
notify: 200.160.0.193 NOKEY
provide-xfr: 200.160.0.193 key-cliente-b
49 / 135
Cliente B - Arquivo de configuracao (NSD)
nsd.conf no slave (200.160.0.193)key:
name: key-cliente-b
algorithm: hmac-md5
secret: ‘‘VgMNxtub39M=’’
zone:
name: b.foo.eng.br
zonefile: db.b.foo.eng.br
allow-notify: 200.160.0.192 NOKEY
request-xfr: 200.160.0.192 key-cliente-b
zone:
name: 191/26.0.160.200.in-addr.arpa
zonefile: db.191.0.160.200.in-addr.arpa
allow-notify: 200.160.0.192 NOKEY
request-xfr: 200.160.0.192 key-cliente-b
50 / 135
Parte III
Configurando Servidores DNS Recursivos
51 / 135
Cenario
A organizacao Foo deseja disponibilizar um servidor DNS recursivo parasua infra-estrutura local e para todos os seus clientes. Este servidor DNSrecursivo tera o IPv4 200.160.0.6 e o IPv6 2001:12ff::6.
52 / 135
Organizacao Foo (BIND)
named.confacl clientes { 127.0.0.0/8; 200.160.0.0/24; 2001:12ff::/32; };
options {listen-on { 127.0.0.1; 200.160.0.6; };listen-on-v6 { 2001:12ff::6; };directory ‘‘/etc’’;
pid-file ‘‘/var/run/named/pid’’;
statistics-file ‘‘/var/stats/named.stats’’;
allow-query { clientes; };allow-query-cache { clientes; };allow-recursion { clientes; };max-cache-size 512M;
clients-per-query 0;
max-clients-per-query 0;
};
Aviso
Nao utilizem a opcao “query-source”. Ao fixar uma porta de origem oservidor DNS fica muito mais vulneravel a ataques de poluicao de cache.Principalmente aos ataques descritos por Dan Kaminsky.
53 / 135
Organizacao Foo (BIND)
named.conf (continuacao...)logging {
channel all {file ‘‘/var/log/named.log’’;
versions 5 size 1M;
print-time yes;
};
category default { all; };category security { all; };
};
zone ‘‘.’’ {type hint;
file ‘‘named.root’’;
};
zone ‘‘0.0.127.in-addr.arpa’’ {type master;
file ‘‘db.127.0.0’’;
};
54 / 135
Organizacao Foo (Unbound)
unbound.confserver:
port: 53
interface: 127.0.0.1
interface: 200.160.0.6
interface: 2001:12ff::6
access-control: 0.0.0.0/0 refuse
access-control: 200.160.0.0/24 allow
access-control: 127.0.0.0/8 allow
access-control: ::0/0 refuse
access-control: 2001:12ff::/32 allow
directory: ‘‘/usr/local/unbound/etc/unbound’’
chroot: ‘‘/usr/local/unbound/etc/unbound’’
username: ‘‘unbound’’
logfile: ‘‘unbound.log’’
do-ip4: yes
do-ip6: yes
55 / 135
Cuidado com Recursivos Abertos!
Causa
O administrador nao configura o servidor DNS recursivo para responderapenas para os clientes de sua rede.
Efeito
Aceitam consultas DNS vindas de qualquer computador da Internet.Possibilita ataques de amplificacao de respostas DNS e uso de banda porterceiros.
Solucao
Configuracao correta do firewall.
BIND:acl clientes { 127.0.0.0/8; 200.160.0.0/24; };allow-query { clientes; };allow-query-cache { clientes; };allow-recursion { clientes; };
NSD:access-control: 0.0.0.0/0 refuse
access-control: 200.160.0.0/24 allow
access-control: 127.0.0.0/8 allow
56 / 135
Cuidado com Recursivos Abertos!
57 / 135
Parte IV
Importancia da Separacao de Autoritativo e Recursivo
58 / 135
Por que separar?
Motivo
Possibilita ataques ao servidor DNS recursivo;
Aumenta a complexidade na administracao do servidor.
Explicando...
Recursivo e autoritativo possui configuracoes de acesso diferentes;
As regras de firewalls sao distintas;
Sem “recursos” para separar os servidores?
Para servidores DNS utilizando BIND a sintaxe “view” pode ser utilizadapara separar os cenarios.
59 / 135
Parte V
O que muda com DNSSEC?
60 / 135
Vulnerabilidades do DNS
61 / 135
Vulnerabilidades do DNS - Solucoes
62 / 135
O que e DNSSEC?
Extensao da tecnologia DNS(o que existia continua a funcionar)
Possibilita maior seguranca para o usuario na Internet(corrige falhas do DNS)
O que garante?
Origem (Autenticidade)
Integridade
A nao existencia de um nome ou tipo
O que NAO garante?
Confidencialidade
Protecao contra ataques de negacao de servico (DOS)
63 / 135
O que e DNSSEC?
DNSSEC utiliza o conceito de chaves assimetricas− chave publica e chave privada
64 / 135
O que e DNSSEC?
DNSSEC utiliza o conceito de chaves assimetricas− chave publica e chave privada
65 / 135
O que e DNSSEC?
O resolver recursivo japossui a chave publicada zona “.br”ancorada.
66 / 135
O que e DNSSEC?
Nesta simulacao deresolucao supomos quea raiz nao estaassinada.
67 / 135
O que e DNSSEC?
Retorna sem resposta,mas com referenciapara os Records: NSdo “.br”.
68 / 135
O que e DNSSEC?
O servidor recursivorequisita a DNSKEYao verificar que o nomeda zona e igual aonome da zona queconsta em suatrusted-key.
69 / 135
O que e DNSSEC?
O servidor DNSresponde enviandoDNSKEY e o RRSIG
70 / 135
O que e DNSSEC?
Compara a trusted-keycom a DNSKEY, casofor valida continuacom as requisicoes
71 / 135
O que e DNSSEC?
72 / 135
O que e DNSSEC?
Retorna sem resposta,mas com referenciapara os Records:
- NS do “foo.eng.br”
e com autoridade sobreos Records:
- DS do “foo.eng.br”
- RRSIG do Record DS
73 / 135
O que e DNSSEC?
O servidor DNSrecursivo utiliza aDNSKEY para checara assinatura (RRSIG)do Record DS
74 / 135
O que e DNSSEC?
75 / 135
O que e DNSSEC?
76 / 135
O que e DNSSEC?
O servidor DNSrecursivo verificaatraves do DS e daDNSKEY, se esteservidor DNS e valido.
77 / 135
O que e DNSSEC?
Resolver
Servidor DNS
Recursivo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
exem
plo
.foo.e
ng.b
r ?
exemplo.fo
o.eng.br ?
Refere
ncia se
rvidore
s .br
exemplo.foo.eng.br ?
Referencia servidores foo.eng.br
exemplo.foo.eng.br ?
Autoritativo sobre o FOO.ENG.BR
e TUTORIAL.FOO.ENG.BR
78 / 135
O que e DNSSEC?
Resolver
Servidor DNS
Recursivo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
exem
plo
.foo.e
ng.b
r ?
exemplo.fo
o.eng.br ?
Refere
ncia se
rvidore
s .br
exemplo.foo.eng.br ?
Referencia servidores foo.eng.br
exemplo.foo.eng.br ?
200.160.10.251
Autoritativo sobre o FOO.ENG.BR
e TUTORIAL.FOO.ENG.BR
Retorna o Record A esua assinatura RRSIG.
79 / 135
O que e DNSSEC?
Resolver
Servidor DNS
Recursivo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
Servidor DNS
Autoritativo
exem
plo
.foo.e
ng.b
r ?
exemplo.fo
o.eng.br ?
Refere
ncia se
rvidore
s .br
exemplo.foo.eng.br ?
Referencia servidores foo.eng.br
exemplo.foo.eng.br ?
200.160.10.251
Autoritativo sobre o FOO.ENG.BR
e TUTORIAL.FOO.ENG.BR
O servidor DNSrecursivo utiliza aDNSKEY para checara assinatura (RRSIG)do Record A
80 / 135
O que e DNSSEC?
81 / 135
O que muda com DNSSEC no DNS autoritativo?
Startup
Gerar a chave assimetrica;
Incluir a chave na zona;
Assinar a zona;
Mudar a referencia para o arquivo de zona nas configuracoes;
Incluir o DS na interface do Registro.br.
Manutencao
Reassinar periodicamente a zona.
82 / 135
E como fazer isso no DNS autoritativo? (BIND)
Startup
1 Execute o comando (gera um arquivo .key e um .private):dnssec-keygen -f KSK -a RSASHA1 -b 1024 -n ZONE -r /dev/urandom foo.eng.br
2 Inclua no final do arquivo de zona db.foo.eng.br (incremente o SOA):$include Kfoo.eng.br+005.5423.key
3 Execute o comando (gera um arquivo .signed):dnssec-signzone -z -o foo.eng.br -e 20100102120000 db.foo.eng.br
4 Altere a referencia no arquivo de configuracao named.conf:file ‘‘db.foo.eng.br.signed’’;
5 Incluir o DS no website do Registro.br.http://registro.br/cgi-bin/nicbr/dscheck
Manutencao1 Altere o arquivo de zona db.foo.eng.br incrementando o SOA;
2 Execute o comando:dnssec-signzone -z -o foo.eng.br -e 20100102120000 db.foo.eng.br
83 / 135
DNSSHIM - DNS Secure Hidden Master
http://registro.br/dnsshim/
Open-Source
Automatiza o processo de provisionamento de zonas
Suporte a DNSSEC
Interface Automatizavel
Manutencao de chaves/assinaturas
Publico Alvo
Provedores de hospedagem ou qualquer outra instituicao responsavel poradministrar servidores DNS autoritativos para muitas zonas
84 / 135
O que muda com DNSSEC no DNS recursivo?
Startup
Ancorar a chave publica do.BR
Manutencao
Para servidores DNS com suporte a RFC 5011:
Nada!
Para servidores DNS sem suporte a RFC 5011:
Trocar a chave ancorada todas as vezes em que ocorrer um rolloverno .BR
85 / 135
E como fazer isso no DNS recursivo?
Startup
BIND (named.conf):trusted-keys {br. 257 3 5
‘‘AwEAAdDoVnG9CyHbPUL2rTnE22uN66gQCrUW5W0NTXJB
NmpZXP27w7PMNpyw3XCFQWP/XsT0pdzeEGJ400kdbbPq
Xr2lnmEtWMjj3Z/ejR8mZbJ/6OWJQ0k/2YOyo6Tiab1N
GbGfs513y6dy1hOFpz+peZzGsCmcaCsTAv+DP/wmm+hN
x94QqhVx0bmFUiCVUFKU3TS1GP415eykXvYDjNpy6AM=’’;
};
Unbound (unbound.conf):trust-anchor: ‘‘br. DS 18457 5 1 1067149C134A5B5FF8FC5ED0996E4E9E50AC21B1’’
Manutencao
1 Obtenha a nova chave em https://registro.br/ksk/;
2 Ancore a nova chave no servidor DNS recursivo.
86 / 135
Parte VI
Firewalls
87 / 135
DNS
Definido nas RFCs 1034 e 1035;
Servidores aceitam consultas em transporte TCP/UDP, porta 53;
Payload maximo em transporte UDP de 512 bytes;
Payload maximo por mensagem DNS em TCP de 64 Kbytes.
88 / 135
DNS
Quando TCP e utilizado
Transferencias de zona (AXFR);
Respostas com payload maior do que 512 bytes:
1 Consulta inicial via UDP;2 Resposta maior do que 512 bytes, flag TC e marcada para indicar que
sua resposta esta truncada;3 Cliente refaz consulta via TCP.
89 / 135
EDNS0 - Extension Mechanisms for DNS
Definido na RFC 2671;
Extensao do protocolo DNS original para eliminar alguns limites doprotocolo;
Permite:
◮ mais flags e RCODEs ao cabe alho DNS;◮ novos tipos de labels;◮ payloads maiores em transporte UDP (limitado a 64 Kbytes);◮ define um novo pseudo-RR: OPT.
90 / 135
EDNS0 - Extension Mechanisms for DNS
Depende de suporte tanto no cliente como no servidor;
Cliente envia consulta UDP com pseudo-RR OPT na secao Additionalda mensagem DNS, informando qual o tamanho maximo de respostasUDP que pode processar;
Se servidor suportar EDNS0, pode aumentar o limite para o tamanhoda resposta que vai retornar ao cliente, evitando re-query via TCP;
Se servidor nao suportar EDNS0, envia resposta com ate 512 bytes depayload DNS.
91 / 135
EDNS0 - Extension Mechanisms for DNS
Alguns exemplos de servidores que suportam EDNS0:
Bind (desde 8.3.x - 2001);
Microsoft DNS server (Windows 2003);
NSD (auth only - desde 1.x - 2003);
ANS/CNS.
92 / 135
Configurando o Firewall
Por que configurar corretamente?
Garantir qualidade na resolucao DNS, ou seja, evitar atrasos e,principalmente, a impossibilidade de resolucao de nomes;
Evitar overhead desnecessario em servidores DNS, tanto recursivoscomo autoritativos.
93 / 135
Configurando o Firewall
Autoritativos
Consultas com destino a porta 53 UDP e TCP do servidor autoritativo erespectivas respostas devem ser permitidas.
Recursivos
Consultas do servidor recursivo com destino a porta 53 UDP e TCP dequalquer outro servidor e respectivas respostas devem ser permitidas;
Consultas vindas de clientes autorizados com destino a porta 53 UDPe TCP do servidor recursivo e respectivas respostas devem serpermitidas;
Bloqueio as demais consultas DNS direcionadas ao servidor recursivo.
94 / 135
Configurando o Firewall
Firewalls e DNS/UDP > 512 bytes
Se seu servidor recursivo suporta EDNS0, verifique se seu firewall permitedatagramas UDP/DNS com mais de 512 bytes. Um teste pode ser feitoatraves da seguinte consulta (935 bytes de payload DNS):
dig @a.dns.br br ns +dnssec +bufsize=1000
Se a resposta nao for recebida, pode-se:
corrigir o comportamento do firewall;
diminuir o payload maximo enviado via record OPT na configuracao;
EDNS0 do servidor para 512 bytes.
95 / 135
Configurando o Firewall
Firewalls e DNS/UDP > 512 bytes
Se seu servidor recursivo suporta EDNS0 e o firewall suporta mensagensDNS maiores que 512 bytes, verifique se seu firewall e capaz de fazer ocorreto reassembly de datagramas UDP fragmentados. Um teste pode serfeito atraves da seguinte consulta (2185 bytes de payload DNS):
dig @a.dns.br br dnskey +dnssec +bufsize=2500
Se a resposta nao for recebida, pode-se:
corrigir o comportamento do firewall;
diminuir o payload maximo enviado via record OPT na configuracaoEDNS0 do resolver. RFC EDNS0 sugere que se configure baseado emMTU de 1280 bytes.
96 / 135
Parte VII
Testes de Performance
97 / 135
Testes de Performance - Recursivo
Dependente de fatores externos
Link, banda local
Capacidade dos autoritativos
98 / 135
Testes de Performance - Recursivo
Responde a consultas
consultas ja em cache
consulta servidores autoritativos
Aviso
Exatidao de uma simulacao depende da comunicacao com os autoritativos
99 / 135
Testes de Performance - Recursivo
Testes Propostos
Consultas em cacheAlgumas dezenas de consultasrepetidas por 5 minutos
!CacheServidor com cache limpoConsultas unicas durante 5 minutosTodas as consultas validas
100 / 135
Testes de Performance - Recursivo
Ambiente
Servidor Recursivo2 Xeon X5570 2.93GHz QuadCore HT - 16 CPU’sFreeBSD 7.2 amd64Bind 9.6.1-P1 compilado com suporte a threadsUnbound 1.4.0
Cliente1 Xeon X5560 2.80GHz QuadCore HTDNSPERF 1.0.1.0-1
resperf - mede throughput do recursivoDisponıvel em http://www.nominum.com
Cliente e Servidor no mesmo seguimento de rede
101 / 135
Testes de Performance - Recursivo$resperf -d <arquivo consultas> -s <servidor> -r 300
-d: Especifica um aquivo contendo as consultas
Formato: HOST RR
www.registro.br A
nic.br MX
...
-s: IP ou nome do servidor recursivo
-r: Tempo do teste, em segundos
102 / 135
Testes de Performance - Recursivo
Bind - Consultas em Cache
N.threads = 8 ( named ... -n 8 )
103 / 135
Testes de Performance - Recursivo
Unbound - Consultas em cache
N.threads = 8 ( unbound.conf )
104 / 135
Testes de Performance - Recursivo
Bind - Consultas unicas - !Cache
N.threads = 8 ( named ... -n 8 )
105 / 135
Testes de Performance - Recursivo
Unbound - Consultas unicas - !Cache
N.threads = 8 ( unbound.conf )
106 / 135
Testes de Performance - Autoritativo
Responde apenas consultas para zonas configuradas
Zonas carregadas em memoria
107 / 135
Testes de Performance - Autoritativo
Teste Proposto
Servidor autoritativo com 1000 zonas configuradas
Dois clientes consultam aleatoriamente registros existentes nessaszonas
108 / 135
Testes de Performance - Autoritativo
Ambiente
Servidor Autoritativo2 Xeon X5570 2.93GHz QuadCore HT - 16 CPU’sFreBSD 7.2 amd64Bind 9.6.1-P1 compilado com threadsNSD 3.2.3
Clientes1 Xeon X5560 2.80GHz QuadCore HTQueryperf 1.12
Disponıvel no contrib do bind
Servidor e clientes no mesmo seguimento de rede
109 / 135
Testes de Performance - Autoritativo$queryperf -d <arquivo consultas> -s <servidor> -l <tempo>
-d: Especifica um aquivo contendo as consultas
Formato: HOST RR
www.registro.br A
nic.br MX
...
-s: IP ou nome do servidor recursivo
-l: Tempo do teste, em segundos
110 / 135
Testes de Performance - Autoritativo
Bind
12 Threads = 224000 qps
111 / 135
Testes de Performance - Autoritativo
NSD
5 servidores = 257770 qps
112 / 135
Parte VIII
Escalabilidade de Recursivos
113 / 135
Escalabilidade de Recursivos
Motivacao
DNS recursivo instavel e foco de reclamacoes constantes
114 / 135
Escalabilidade de Recursivos
Escalabilidade e Estabilidade
Suporte a alto trafego
Suporte a muitos usuarios
Facil upgrade caso a demanda aumente
Manutencao sem parada do sistema
Alta disponibilidade
Balanceamento de carga
115 / 135
Escalabilidade de Recursivos
Cluster
116 / 135
Escalabilidade de Recursivos
Flexibilidade
Mais de um roteador
Mais de um switch
117 / 135
Escalabilidade de Recursivos
Solucao
Roteador + [UNIX + Quagga + BIND]
Endereco do servico roda na loopback dos servidores
Anycast dentro do cluster
Protocolo de roteamento dinamico com suporte a ECMP - OSPF
118 / 135
Escalabilidade de Recursivos
Topologia
119 / 135
Escalabilidade de Recursivos
Anycast na Rede
Redundancia
IBGP entre os clusters
120 / 135
Escalabilidade de Recursivos
ECMP
Assimetria de trafego
O balanceamento de carga nao e exato
Incoerencia de cache entre os servidores
O cache dos servidores nao sao identicos, pois o trafego que elesrecebem tambem nao e
Nao ha problema!
121 / 135
Escalabilidade de Recursivos
Detalhes do BIND
BIND rodando nas duas interfaces
Queries chegam para a loopback
Monitoracao pelo endereco individual
acl
Max-cache-size
recursive-clients
122 / 135
Escalabilidade de Recursivos
Controle1 Iniciar processo do BIND
2 Subir interface loopbackQuagga envia LSA para o roteadorifconfig lo1 up
3 Tirar o servidor do arEnviar LSA removendo a rotaifconfig lo1 down
123 / 135
Escalabilidade de Recursivos
Recursos
Exemplo:Rede com 1M de usuarios simultaneos
Media de 50 q/h (por usuario)
50 x 1M = 50M q/h 14k q/sUm unico servidor (com hardware robusto) e capaz de suportar esta cargaSugestao para atingir alta disponibilidade:
- cluster com 3 ou 4 servidores
124 / 135
Escalabilidade de Recursivos
Monitoracao
Processo do BIND esta no ar?Monitorar endereco unicast de cada servidor
Qual servidor que esta respondendo?dig @192.168.1.1 chaos txt hostname.bind +short
WatchdogCaso o BIND pare de responderifconfig lo1 down
125 / 135
Parte IX
Monitoramento
126 / 135
Monitoramento
Autoritativos
Disponibilidade
Autoridade sobre as zonas
Versao da zona (serial)
DNSSEC - validacao
Recursos
127 / 135
Monitoramento - Autoritativo
SNMP - cpu, memoria, trafego
Nagios
Plugin check dnsAlertas via email, sms
Status Information:OK: Servidor a.dns.br. (200.160.0.10)respondendo com autoridade para ”com.br”
Custom Plugins - Serial, DNSSEC
128 / 135
Monitoramento - Autoritativo
DSC - DNS Statistics CollectorDisponıvel em http://dns.measurement-factory.com/tools/dsc/
Collector - Processo que usa a libpcap para coletar pacotes DNSArmazena em XML
Presenter - Recebe datasets XML dos coletores CGI plota asestatısticas
129 / 135
Monitoramento - Autoritativo
Diversas estatısticas importantes para um autoritativo
By Node
Qtypes
Client Geography
IP Version
DNS Transport
...
130 / 135
Monitoramento - Autoritativo
Query Types
131 / 135
Monitoramento
Recursivos
Disponibilidade
Recursos
132 / 135
Monitoramento - Recursivo
SNMP - cpu, memoria, trafego
Nagios
Plugin check dnsDNS OK: 0.009 seconds response time. www.registro.br returns 200.160.2.3
Custom Plugins
133 / 135
Perguntas?
134 / 135
Referencias
◮ RFC 2317Classless IN-ADDR.ARPA delegation
◮ DNS recursivo estavel e escalavelftp://ftp.registro.br/pub/gter/gter23/05-DNSrecEstavelEscalavel.pdf
◮ Firewalls e DNS, como e porque configurar corretamenteftp://ftp.registro.br/pub/doc/dns-fw.pdf
◮ Recomendacoes para Evitar o Abuso de Servidores DNS Recursivos Abertoshttp://www.cert.br/docs/whitepapers/dns-recursivo-aberto
◮ A ultima versao do tutorial de DNSSEC pode ser encontrada em
ftp://ftp.registro.br/pub/doc/tutorial-dnssec.pdf
135 / 135
top related