Baixe o app para aproveitar ainda mais
Prévia do material em texto
AULA 09: SERVIDOR DNS 1 Servidores para internet SERVIDORES PARA INTERNET Aula 09: Servidor DNS 1 AULA 09: SERVIDOR DNS 1 Servidores para internet Conteúdo desta aula INTRODUÇÃO AO DNS 1 TIPOS DE SERVIDORES 3 PRÓXIMOS PASSOS ARQUITURA DO DNS 2 CONFIGURAÇÃO DE UM DNS RECURSIVO 4 CONFIGURAÇÃO DE UM DNS REVERSO 5 AULA 09: SERVIDOR DNS 1 Servidores para internet Introdução ao DNS Hoje em dia é muito fácil chegar em um local qualquer (casa de um amigo, local em outra cidade etc.). Basta informar ao GPS o endereço e ele irá traçar a melhor rota ao destino. Ex: Rua João Jose, nº 50. Você já imaginou a complicação que seria ter que informar as coordenadas geográficas exatas do destino para poder chegar até lá? Exemplo: 22º 58'20.1"S 43º 11'05.7"W AULA 09: SERVIDOR DNS 1 Servidores para internet Introdução ao DNS Nós, humanos, temos maior facilidade em trabalhar com nomes. Já os computadores trabalham muito melhor com números. Como sabemos, todo computador que está na internet, possui um endereço IP único. É com base neste endereço que os dispositivos “conversam” entre si. Você provavelmente não sabe o endereço IP do seu serviço de e-mail, daquela rede social, do seu site de notícias favorito etc. Analogamente ao endereço em um local, como uma rua ou avenida, usamos um nome para facilitar nosso acesso a um determinado serviço. Exemplo: www.estacio.br. AULA 09: SERVIDOR DNS 1 Servidores para internet Introdução ao DNS • Esta funcionalidade é implementada pelo Domain Name System (DNS). • É um sistema de gerenciamento de nomes hierárquico e distribuído. • Pertence à camada de aplicação do modelo OSI. • O principal propósito é a resolução de nomes de domínio em endereços IP e vice-versa. AULA 09: SERVIDOR DNS 1 Servidores para internet Introdução ao DNS Quando a internet ainda era uma ferramenta de uso militar, o acesso aos nomes era possível graças a um arquivo de nome hosts.txt A relação nome <=> IP era gravada neste arquivo, localmente na própria máquina. Só que esse arquivo cresceu tanto que chegou ao ponto de causar atraso nas atualizações. Em 1983, o DNS tomou forma para resolver esse problema. A arquitetura foi desenvolvida por Paul Mockapetris (USC – EUA). AULA 09: SERVIDOR DNS 1 Servidores para internet Introdução ao DNS O Sistema de Nomes de Domínio é um banco de dados distribuído. Isso permite um controle local dos segmentos do banco de dados global, embora os dados em cada segmento estejam disponíveis em toda a rede através de um esquema cliente-servidor. • Arquitetura hierárquica, dados dispostos em uma árvore invertida. • Distribuída eficientemente, sistema descentralizado e com cache. AULA 09: SERVIDOR DNS 1 Servidores para internet Introdução ao DNS No topo da hierarquia, os servidores-raiz mantêm registros sobre como chegar aos servidores de domínio de nível superior (TLDs), que, por sua vez, têm registros que levam aos servidores de domínio de nível secundário, e assim por diante. AULA 09: SERVIDOR DNS 1 Servidores para internet Introdução ao DNS Um domínio pode conter dados delegados a outros servidores de nomes. Como uma zona é delimitada por delegação, ela nunca inclui dados delegados. A delegação indica uma transferência de responsabilidade na administração a partir daquele ponto na árvore DNS. AULA 09: SERVIDOR DNS 1 Servidores para internet Introdução ao DNS Os dados associados com os nomes de domínio estão contidos em Resource Records ou RRs (Registro de Recursos). • São divididos em classes e tipos; • Atualmente existe uma grande variedade de tipos; • O conjunto de resource records com o mesmo nome de domínio, classe e tipo é denominado RRset. SOA Indica onde começa a autoridade da zona NS Indica um servidor de nomes para a zona A Mapeamento de nome a endereço (IPv4) AAAA Mapeamento de nome a endereço (IPv6) MX Indica um mail servidor de email CNAME Mapeia um nome alternativo (apelido) PTR Mapeamento de endereço em nome (reverso) AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Tipos de servidores Servidor Recursivo Ao receber requisições de resolução de nomes, faz requisições para os servidores autoritativos e, conforme a resposta recebida dos mesmos, continua a realizar requisições para outros servidores autoritativos até obter a resposta satisfatória. Servidor Autoritativo Ao receber requisições de resolução de nome, responde: • um endereço caso possua; • uma referência caso conheça o caminho da resolução; ou • uma negação caso não conheça. AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Tipos de servidores Resolver Servidor DNS Recursivo Servidores DNS Autoritativos “ . “ br com empresa AULA 09: SERVIDOR DNS 1 Servidores para internet Configuração do SAMBA • Resolver faz consultas no Recursivo. • Recursivo faz consultas no Master ou Slave. • Master tem a zona original (via arquivo ou Dynamic Update). • Slave recebe a zona do Master (AXFR ou IXFR). Resolver Master Slaves Zona DynUpdate Recursivo AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Root Servers Existem no mundo 13 servidores DNS do tipo raiz. Eles são denominados pelas letras do alfabeto. Sem eles a internet não funcionaria. Destes, dez estão localizados nos EUA, um na Ásia e dois na Europa. Existem réplicas desses servidores em todo o mundo, inclusive no Brasil. Acesse http://www.root-servers.org para saber mais. AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Top Level Domains (TLDs) Generic Top-Level Domains Country-Code Top-Level Domains No Brasil, a organização que gerencia o domínio .br é a Registro.br AULA 05: ARQUIVOS DE LOG E BACKUP LABORATÓRIO PRÁTICO 1ª PARTE AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Arquivos de configuração Resolver • /etc/hosts • /etc/nsswitch.conf • /etc/resolv.conf AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configurações no resolver (/etc/hosts) Este arquivo contém a lista de traduções de nome-para-endereço estaticamente definidas [Sintaxe] IP hostname dominio [root@server03]# vi /etc/hosts 127.0.0.1 localhost localhost.localdomain 192.168.200.1 gateway gateway.meudominio.com AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configurações no resolver (/etc/nsswitch.conf) Este arquivo controla as fontes usadas por várias funções de busca em bibliotecas de sistema, tais como a resolução de nomes. Define a ordem na qual a resolução de nomes ocorrerá no sistema operacional. Normalmente não há necessidade de alteração. Neste caso, primeiramente, a resolução é feita em arquivo e, posteriormente, no dns (1º /etc/hosts 2º DNS). [root@server03 ~]# grep -i hosts /etc/nsswitch.conf #hosts: db files nisplus nis dns hosts: files dns AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configurações no resolver (/etc/resolv.conf) Este arquivo controla as partes client-side do sistema DNS, o qual é implementado em funções de bibliotecas do sistema usadas por todos os programas para resolverem nomes do sistema. Em particular o /etc/resolv.conf especifica os IPs dos servidores DNS. [root@server03 ~]# vi /etc/resolv.conf domain wrotethebook.com searchwrotethebook.com # try ns1 nameserver 172.16.12.1 # next try ns2 nameserver 172.16.1.2 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Instalação do Bind 9 • Instalação do bind • Instalação do ambiente chroot [root@server01]# yum install bind bind-utils -y [root@server01]# yum install bind-chroot -y AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Ativar o chroot Um chroot em sistemas operacionais Linux, é uma operação que muda o diretório-raiz do sistema para os processos em execução. Um programa que é executado em um ambiente modificado não pode acessar ou modificar arquivos fora da árvore de diretórios do sistema designado. Esse ambiente modificado é chamado de jaula. O script de inicialização do named monta automaticamente a estrutura do bind dentro de /var/named/chroot. AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Ativar o chroot No arquivo /etc/sysconfig/named descomentar a linha ROOTDIR. # BIND named process options # ~~~~~~~~~~~~~~~~~~~~~~~~~~ # Currently, you can use the following options: # #DESCOMENTADO PARA ATIVAR O CHROOOT ROOTDIR="/var/named/chroot" # -- will run named in a chroot environment. # you must set up the chroot environment # (install the bind-chroot package) before # doing this. AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Arquivos de configuração Servidor • /etc/named.conf principal arquivo de configuração, define o comportamento do bind. • /etc/sysconfig/named é usado para passar argumentos para o daemon named no momento da inicialização. • /var/named/~ arquivos de zona. AULA 09: SERVIDOR DNS 1 Servidores para internet Configuração do SAMBA – Usuários e grupos • O “Cache Only” armazena no seu cache as consultas realizadas. • Evita que todas as consultas sejam realizadas em DNS Externo. • Reduz a largura de banda utilizada. • Resposta mais rápida ao resolver. Cache Only DNS Externo 1ª Consulta 2ª Consulta estacio.br? 200.143.54.108 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração de um Servidor Cache Only [root@server03 named]# vi /etc/named.conf // CACHING NAME SERVER // options { directory "/var/named"; // desativa todas as requisições de transferência de zona allow-transfer{"none";}; // Closed DNS – permite apenas consultas locais // ajustar de acordo com a sua rede allow-query {127.0.0.1; 192.168.200.0/24;}; recursion yes; }; // // logar em /var/named/data/cache.log // logging{ channel cache_log{ file "/var/named/data/cache.log" versions 3 size 2m; severity debug; print-severity yes; print-time yes; print-category yes; }; category general{ cache_log; }; }; AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração de um Servidor Cache Only • Após aplicar a configuração, reiniciar o serviço named. • Configure o resolver local para utilizar o nosso servidor DNS. [root@server03 ~]# /etc/init.d/named restart Stopping named: [ OK ] Starting named: [ OK ] [root@server03 ~]# vi /etc/resolv.conf nameserver 127.0.0.1 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração de um Servidor Cache Only • Após aplicar a configuração, reiniciar o serviço named. • Utilize a ferramenta nslookup para fazer uma consulta DNS. [root@server03 ~]# /etc/init.d/named restart Stopping named: [ OK ] Starting named: [ OK ] [root@server03 ~]# nslookup registro.br Server: 127.0.0.1 Address: 127.0.0.1#53 Non-authoritative answer: Name: registro.br Address: 200.160.2.3 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração de um Servidor Cache Only A partir da segunda consulta ao mesmo domínio, o nosso servidor DNS é quem irá respoder a requisição com base no seu cache. [root@server03 ~]# nslookup estacio.br Server: 127.0.0.1 Address: 127.0.0.1#53 Non-authoritative answer: Name: estacio.br Address: 200.143.54.108 [root@server03 ~]# tcpdump -i any -p udp and port 53 -nn tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on any, link-type LINUX_SLL (Linux cooked), capture size 65535 bytes 21:22:20.564240 IP 127.0.0.1.54407 > 127.0.0.1.53: 65172+ A? estacio.br. (28) 21:22:20.564451 IP 127.0.0.1.53 > 127.0.0.1.54407: 65172 1/3/3 A 200.143.54.108 (146) AULA 05: ARQUIVOS DE LOG E BACKUP LABORATÓRIO PRÁTICO 2ª PARTE AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração de um namespace com o servidor master e slave linux.com.br server01 192.168.200.203 server02 192.168.200.202 master slave /etc/named.conf /etc/sysconfig/named /var/named/* /etc/named.conf Obs: os arquivos de zona são transferidos pelo bind (configurável). AXFR/IXFR AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor master • Definir no /etc/named.conf os parâmetros e zonas do servidor DNS. options { directory "/var/named"; allow-query { 127.0.0.1; 192.168.200.0/24; }; allow-transfer { 192.168.200.202; }; recursion yes; notify yes; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; // a master name server configuration // zone "0.0.127.in-addr.arpa" { type master; file "named.localhost"; }; zone "linux.com.br" { type master; file "named.linux.com.br"; }; zone "200.168.192.in-addr.arpa" { type master; file "named.200.168.192"; }; AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor master • Configuração dos arquivos de zona e zona reversa. • Zona Reversa do 0.0.127.in-addr.arpa /var/named/named.localhost • Zona linux.com.br /var/named/named.linux.com.br • Zona Reversa do 200.168.192.in-addr.arpa /var/named/200.168.192 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor master • Configuração da zona linux.com.br ; localhost IN A 127.0.0.1 ; ; ; Define the hosts in the zone linux.com.br. IN A 192.168.200.14 ns1 IN A 192.168.200.203 ns2 IN A 192.168.200.202 server01 IN CNAME ns1 server02 IN CNAME ns2 www IN CNAME ns2 email IN A 192.168.200.20 app IN A 192.168.200.21 chat IN A 192.168.200.22 gw IN A 192.168.200.1 ; definições do sub-dominio articles $ORIGIN articles.linux.com.br. IN MX 10 mail ; o record acima utiliza o "blank substitution" ; e pode ser escrito como ; articles.linux.com.br. IN MX 10 mail.articles.linux.com.br.; ou (utilizando a substituição do @) ; @ IN MX 10 mail ; O record para o subdomain mail server mail IN A 192.168.100.20 ; o record acima poderia ter sido escrito como ; mail.articles.linux.com.br. A 192.168.100.20 se for menos confuso ftp IN A 192.168.100.21 ; o record acima poderia ter sido escrito como ; ftp.articles.linux.com.br. A 192.168.200.21 se for menos confuso articles.linux.com.br. IN A 192.168.100.10 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor master • Configuração da zona 0.0.127.in-addr.arpa $TTL 86400 @ IN SOA ns.linux.com.br. postmaster.ns.linux.com.br. ( 1 ; serial 360000 ; refresh every 100 hours 3600 ; retry after 1 hour 3600000 ; expire after 1000 hours 3600 ; negative cache is 1 hour ); IN NS ns.linux.com.br. 0 IN PTR loopback. 1 IN PTR localhost. AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor master • Configuração da zona 200.168.192.in-addr.arpa $TTL 86400 ; ; Address to hostname mappings. ; @ IN SOA ns1.linux.com.br. postmaster.linux.com.br. ( 2001061401 ; Serial 21600 ; Refresh 1800 ; Retry 604800 ; Expire 900 ) ; Negative cache TTL IN NS ns1.linux.com.br. IN NS ns2.linux.com.br. 20 IN PTR app.linux.com.br. 1 IN PTR gw.linux.com.br. AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor master • Ajustar a permissão dos arquivos criados (named.conf e de zonas). • Reiniciar o serviço named. • Configurar o resolver local apontando para o nosso servidor DNS. [root@server01 ~]# chgrp named /etc/named.conf [root@server01 ~]# chgrp named /var/named/named.* [root@server01 named]# /etc/init.d/named start Starting named: [ OK ] [root@server01 ~]# vi /etc/resolv.conf search linux.com.br nameserver 127.0.0.1 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor master • Verificar se o nosso servidor está resolvendo o domínio criado. [root@server01 ~]# nslookup linux.com.br Server: 127.0.0.1 Address: 127.0.0.1#53 Name: linux.com.br Address: 192.168.200.14 [root@server01 ~]# nslookup www.linux.com.br Server: 127.0.0.1 Address: 127.0.0.1#53 www.linux.com.br canonical name = ns2.linux.com.br. Name: ns2.linux.com.br Address: 192.168.200.202 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor master (usando o dig) [root@server01 ~]# dig linux.com.br ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.2 <<>> linux.com.br ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23663 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;linux.com.br. IN A ;; ANSWER SECTION: linux.com.br. 86400 IN A 192.168.200.14 ;; AUTHORITY SECTION: linux.com.br. 86400 IN NS ns1.linux.com.br. linux.com.br. 86400 IN NS ns2.linux.com.br. ;; ADDITIONAL SECTION: ns1.linux.com.br. 86400 IN A 192.168.200.203 ns2.linux.com.br. 86400 IN A 192.168.200.202 ;; Query time: 0 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Fri Jun 16 01:05:51 2017 ;; MSG SIZE rcvd: 114 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor master (usando o dig) • Exemplos de utilização do dig: • O último comando imprime as informações em formato bind. [root@server01 ~]# dig linux.com.br ns [root@server01 ~]# dig linux.com.br +short [root@server01 ~]# dig linux.com.br NS +noall +answer [root@server01 ~]# dig linux.com.br +noall +answer [root@server01 ~]# dig linux.com.br MX +noall +answer [root@server01 ~]# dig +nocmd linux.com.br any +multiline AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor slave • Configurar o /etc/named.conf options { directory "/var/named"; allow-query { 127.0.0.1; 192.168.200.0/24; }; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; // a slave name server configuration // zone "0.0.127.in-addr.arpa" { type master; file "named.localhost"; }; zone "linux.com.br" { type slave; file "named.linux.com.br"; masters {192.168.200.203 ;}; }; zone "200.168.192.in-addr.arpa" { type slave; file "named.200.168.192"; masters {192.168.200.203 ;}; }; AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor slave • No DNS Master é definido o parâmetro allow-transfer {192.168.200.202;}; • No DNS Slave é informado na configuração da zona o servidor na qual o slave fará o download dos arquivos de zona masters {192.168.200.203;}; • Após inicializar o bind no servidor slave, a transferência de informações ocorrerá automaticamente. [root@server02 ~]# tail -f /var/log/messages |grep transfer Jun 16 01:36:49 server02 named[3375]: zone linux.com.br/IN: transferred serial 4137616112 Jun 16 01:36:49 server02 named[3375]: transfer of 'linux.com.br/IN' from 192.168.200.203#53: Transfer completed: 1 messages, 20 records, 467 bytes, 0.002 secs (233500 bytes/sec) AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor slave • No DNS Master é definido o parâmetro allow-transfer {192.168.200.202;}; • No DNS Slave é informado na configuração da zona o servidor na qual o slave fará o download dos arquivos de zona masters {192.168.200.203;}; • Após inicializar o bind no servidor slave, a transferência de informações ocorrerá automaticamente. [root@server02 ~]# tail -f /var/log/messages |grep transfer Jun 16 01:36:49 server02 named[3375]: zone linux.com.br/IN: transferred serial 4137616112 Jun 16 01:36:49 server02 named[3375]: transfer of 'linux.com.br/IN' from 192.168.200.203#53: Transfer completed: 1 messages, 20 records, 467 bytes, 0.002 secs (233500 bytes/sec) AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor slave • Configurar o resolver local apontando para o nosso servidor DNS Slave. [root@server01 ~]# vi /etc/resolv.conf search linux.com.br nameserver 127.0.0.1 AULA 09: SERVIDOR DNS 1 Servidores para internet DNS – Configuração do servidor slave • Verificar se o nosso servidor slave está resolvendo o domínio criado. [root@server02 ~]# nslookup articles.linux.com.br 127.0.0.1 Server: 127.0.0.1 Address: 127.0.0.1#53Name: articles.linux.com.br Address: 192.168.100.10 [root@server02 ~]# dig email.linux.com.br +short 192.168.200.20 AULA 09: SERVIDOR DNS 1 Servidores para internet VAMOS AOS PRÓXIMOS PASSOS? Fixar os conceitos do serviço DNS; Configurar subdomínios DNS utilizando software livre; Laboratório Prático; AVANCE PARA FINALIZAR A APRESENTAÇÃO.
Compartilhar