404 Not Found


nginx
{"id":4579,"date":"2014-10-01T09:57:25","date_gmt":"2014-10-01T12:57:25","guid":{"rendered":"https:\/\/cleuber.com.br\/?p=4579"},"modified":"2015-02-18T13:51:26","modified_gmt":"2015-02-18T15:51:26","slug":"criando-um-servidor-de-dns-no-ubuntu-14-04","status":"publish","type":"post","link":"https:\/\/cleuber.com.br\/index.php\/2014\/10\/01\/criando-um-servidor-de-dns-no-ubuntu-14-04","title":{"rendered":"Criando um Servidor de DNS no Ubuntu 14.04"},"content":{"rendered":"

Hoje vamos configurar um DNS Server no Ubuntu 14.04 LTS.
\nEste artigo \u00e9 voltado mais para usu\u00e1rios avan\u00e7ados, estudantes de TI e Linux e administradores de redes.<\/p>\n

Explica\u00e7\u00e3o simples:<\/p>\n

Um servidor de DNS (Domain Name System), faz a resolu\u00e7\u00e3o de nomes em sua m\u00e1quina ou m\u00e1quinas em sua rede, ou seja, todas as m\u00e1quinas em sua rede com o DNS configurado para o IP de um\u00a0 servidor de DNS, ir\u00e3o perguntar a esse servidor, o endere\u00e7o IP do nome do site que voc\u00ea deseja navegar ou outra m\u00e1quina de sua rede. Um teste simples \u00e9 abrir um terminal e digitar ping nome_do_site, e o resultado ser\u00e1 o IP deste site, por exemplo: ping www.google.com.br, o resultado ser\u00e1 a resposta do IP: 173.194.118.127. Para uma explica\u00e7\u00e3o mais ampla, consulte este outro ARTIGO<\/span><\/span><\/a> e a Wikipedia<\/a><\/span><\/span>.<\/p>\n

Geralmente quando temos uma m\u00e1quina com DHCP ativado, como em nossa casa por exemplo, ela pegar\u00e1 um n\u00famero de IP aleat\u00f3rio conforme o roteador distribuir e tamb\u00e9m pegar\u00e1 o DNS do seu provedor, como a NET, Telef\u00f4nica e etc. A n\u00e3o ser que voc\u00ea altere o endere\u00e7o de DNS de sua m\u00e1quina, como por exemplo para um servi\u00e7o de DNS p\u00fablico, como o do OpenDNS (208.67.0.220, 208.67.222.222) ou o do Google (8.8.8.8 e 8.8.4.4).<\/p>\n

\"dns_client\"<\/a>Configura\u00e7\u00e3o de IP no Windows<\/em><\/p>\n

Por\u00e9m, nas empresas, \u00e9 necess\u00e1rio um servidor de DNS interno, porque as m\u00e1quinas n\u00e3o precisam resolver apenas os nomes dos sites que as pessoas ir\u00e3o navegar, tamb\u00e9m precisam resolver os nomes das outras m\u00e1quinas e servidores na mesma rede.<\/p>\n

\u00c9 a\u00ed que entra a necessidade de implementar um servidor de DNS interno.<\/p>\n

Isso \u00e9 uma das primeiras coisas que s\u00e3o feitas em qualquer empresa que esteja come\u00e7ando e deseja criar a sua rede interna com servidores e m\u00e1quinas que compartilham servi\u00e7os. Sem isso todos os usu\u00e1rios teriam que decorar alguns endere\u00e7os de IP da rede ao inv\u00e9s de nomes de m\u00e1quinas, pois a navega\u00e7\u00e3o em um compartilhamento de rede por exemplo, n\u00e3o funcionaria digitando-se o nome da m\u00e1quina no navegador de arquivos, funcionaria apenas pelo IP.<\/p>\n

Obs. Al\u00e9m de servidor de DNS, \u00e9 importante uma rede interna ter um servidor de DHCP (que pode ser configurado em seu roteador, ou criar um servidor para fazer isso), e veremos isso em outro artigo, e um servidor de dom\u00ednio (Com o Microsoft Active Directory ou no Linux com o Samba), para criar contas de usu\u00e1rios da sua rede e controlar as permiss\u00f5es e pol\u00edticas por usu\u00e1rio ou grupos e departamentos, que voc\u00ea pode conferir neste ARTIGO<\/span><\/span><\/a>.<\/p>\n

Este tutorial divide-se em Quatro Passos:<\/p>\n

Primeiro Passo<\/strong> – Configurar IP est\u00e1tico e nome do seu servidor e dompinio DNS
\n Segundo Passo<\/strong> – Instalar o Software de DNS
\n Terceiro Passo<\/strong> – Configurar o seu DNS – Bind9
\n Quarto Passo<\/strong> – Testar a navega\u00e7\u00e3o e resolu\u00e7\u00e3o de nomes<\/p>\n

Primeiro Passo – Configurar IP est\u00e1tico e nome do seu Servidor<\/h3>\n

Voc\u00ea poder\u00e1 fazer isso no Ubuntu Server 14.04 LTS, ou em um Ubuntu 14.04 Desktop tamb\u00e9m.
\nPassarei comando usando o editor de texto Gedit, para quem usa interface gr\u00e1fica, mas se estiver em um servidor sem interface, use um editor de texto como o vi, vim ou nano.<\/p>\n

Configurar rede – IP est\u00e1tico.<\/h4>\n
sudo gedit \/etc\/network\/interfaces<\/pre>\n

Adicione as seguintes linhas, mudando conforme sua placa de rede, e sua rede.
\nNo meu caso, minha placa de rede \u00e9 a eth0, o IP que quero fixar \u00e9 o 189, minha rede \u00e9 a 192.168.0.0, e meu gateway atual \u00e9 o 7.
\nConfira abaixo as linhas que inseri:<\/p>\n

auto eth0\r\n iface eth0 inet static\r\n address 192.168.0.189\r\n netmask 255.255.255.0\r\n network 192.168.0.0\r\n broadcast 192.168.0.255\r\n gateway 192.168.0.7<\/pre>\n

Se estiver usando um Linux com interface gr\u00e1fica, poder\u00e1 configurar pelo software de gerenciamento de conex\u00f5es de rede na extremidade direita da barra de tarefas, ou pelo Painel de Configura\u00e7\u00f5es do Sistema, conforme imagem abaixo, preenchendo com os dados de sua rede e IP desejado:<\/p>\n

\"bind29\"<\/a><\/p>\n

Nome do servidor.<\/h4>\n

Para editar o nome do seu servidor edite o arquivo \/etc\/hostname.<\/p>\n

sudo gedit \/etc\/hostname<\/pre>\n

E altere ou mantenha o nome do seu servidor como desejar.
\nSalve e feche o arquivo.<\/p>\n

Repare que o nome da minha m\u00e1quina \u00e9 labdns<\/p>\n

Agora altere o nome do seu dom\u00ednio para resolu\u00e7\u00e3o da sua m\u00e1quina<\/h4>\n

Obs. (n\u00e3o se refere ao dom\u00ednio Ldap, ou Active Directory)<\/p>\n

sudo gedit \/etc\/hosts<\/pre>\n

Insira uma linha no come\u00e7o do arquivo e coloque o n\u00famero do seu IP e nome de seu dom\u00ednio e apelido de sua m\u00e1quina.
\nEste nome completo pode ser qualquer um que quiser.
\nNo exemplo abaixo ficou assim:<\/p>\n

192.168.0.189\u00a0\u00a0 \u00a0labdns.site.local labdns\r\n127.0.0.1\u00a0    \u00a0 \u00a0localhost\r\n127.0.1.1\u00a0    \u00a0 \u00a0labdns<\/pre>\n

Salve e feche o arquivo<\/p>\n

Reinicie sua m\u00e1quina<\/h4>\n

Edite o arquivo \/etc\/resolv.conf<\/h4>\n
sudo gedit \/etc\/resolv.conf<\/pre>\n

E adicione um servidor de DNS para sair para internet, isso ser\u00e1 provis\u00f3rio, apenas para instalarmos o software de DNS que usaremos.
\nNo meu caso inseri o DNS do openDNS 208.67.220.220, mas voc\u00ea pode usar o do Google se preferir 8.8.8.8, ou outro de sua escolha.<\/p>\n

nameserver 208.67.220.220<\/pre>\n

Salve e feche.<\/p>\n

Segundo Passo – Instalar o Bind9<\/h3>\n

Agora basta instalarmos o nosso programa de DNS com o seguinte comando:<\/p>\n

sudo apt-get install bind9<\/pre>\n

Depois de instalado vamos ver se o servi\u00e7o de DNS est\u00e1 no ar.<\/p>\n

sudo \/etc\/init.d\/bind9 status<\/pre>\n

O resultado dever\u00e1 ser:<\/p>\n

* bind9 is running<\/pre>\n

OK, instalado e rodando.<\/p>\n

Terceiro Passo – Configurar o seu DNS – Bind9<\/h3>\n

Agora iremos configurar nosso DNS atrav\u00e9s de quatro arquivos:<\/p>\n

1 – named.conf.options:\u00a0<\/strong>
\nDefinir os DNSs de Foward (encaminhamento)<\/p>\n

2 – named.conf.local:<\/strong>
\nDefine e possui o caminho dos arquivos (abaixo) de Zonas de pesquisa Direta e Reversa<\/p>\n

3 – db.zona_direta e db.zona_reversa:<\/strong>
\nCriaremos um arquivo contendo instru\u00e7\u00f5es de zona de pesquisa direta, e outra para pesquisa reversa<\/p>\n

1 – Configurando o “Foward”<\/h4>\n

Isso ir\u00e1 servir para que, caso nosso servidor de DNS n\u00e3o consiga resolver um nome ele possa encaminha a pesquisa para outro servidor de DNS.
\nNo meu caso eu adicionarei um outro DNS interno (pode ser o gateway do seu roteador), e um DNS p\u00fablico, como o Google ou o OpenDNS, veja s\u00f3:<\/p>\n

sudo gedit \/etc\/bind\/named.conf.options<\/pre>\n

E edite as seguintes linhas removendo o “\/\/” e adicionando os DNS p\u00fablicos:<\/p>\n

\"bind9\"<\/a>
\n(A primeira para meu gateway e a segunda para o DNS do Google)<\/p>\n

\"bind10\"<\/a><\/pre>\n

Salve e feche<\/p>\n

2 – Adicionando as Zonas de Pesquisa:<\/h4>\n

Vamos editar o arquivo named.conf.local para adicionar uma zona de pesquisa direta e uma zona de pesquisa reversa<\/p>\n

Voc\u00ea poder\u00e1 edit\u00e1-lo atrav\u00e9s do comando:<\/p>\n

gedit \/etc\/bind\/named.conf.local<\/pre>\n

Como mencionado anteriormente, poder\u00e1 usar o “nano” ou o “vi” no lugar do gedit.<\/p>\n

Bom, agora basta adicionar as duas zonas de pesquisa ao arquivo, a direta e reversa.
\nNo meu caso, ficou assim:<\/p>\n

\"bind8\"<\/a><\/pre>\n
\/\/ Zona de pesquisa direta\r\n zone \"site.local\" {\r\n type master;\r\n file \"\/etc\/bind\/db.labdns.site.local\";\r\n };<\/pre>\n
\/\/ Zona de pesquisa reversa\r\n zone \"0.168.192.in-addr.arpa\" {\r\n type master;\r\n file \"\/etc\/bind\/db.192\";\r\n };<\/pre>\n

Obs. Observe que se minha rede \u00e9 192.168.0.0, a minha pesquisa reversa ser\u00e1 “0.168.192”, e qualquer falha nesse arquivo impedir\u00e1 que o servi\u00e7o de DNS suba.<\/p>\n

Salve e feche.<\/p>\n

3 – Criando os arquivos de Zonas de Pesquisa Direta e Reversa<\/h4>\n

Agora sim criaremos os arquivo de zona dos quais esta configura\u00e7\u00e3o acima est\u00e1 apontando.<\/p>\n

Vamos fazer isso copiando 2 arquivos de configura\u00e7\u00e3o e renomeando eles ao mesmo tempo e ent\u00e3o depois os editando.<\/p>\n

Fa\u00e7a isso com os seguintes comandos:<\/p>\n

sudo cd \/etc\/bind<\/pre>\n
sudo cp db.local db.labdns.site.local<\/pre>\n
sudo cp db.127 db.192<\/pre>\n

Liste o conte\u00fado da pasta para verificar que eles foram criados:<\/p>\n

ls<\/pre>\n

\"bind11\"<\/a> \"bind12\"<\/a><\/p>\n

Agora vamos editar<\/p>\n

gedit db.labdns.site.local<\/pre>\n

Altere as linhas conforme o nome da sua m\u00e1quina, nome completo do seu dom\u00ednio e seu IP, veja s\u00f3 no exemplo abaixo:<\/p>\n

Antes:<\/p>\n

\"bind13\"<\/a><\/pre>\n

Depois de Editado:<\/p>\n

Obs. N\u00e3o se esque\u00e7a do ponto ap\u00f3s o nome da m\u00e1quina, nome do dom\u00ednio ou nome completo.<\/p>\n

\"bind14\"<\/a><\/p>\n

Obs. Lembre-se sempre de substituir os nome de m\u00e1quina, nome completo do servidor e n\u00famero de IP para o seus dados.<\/p>\n

E agora vamos editar o arquivo de pesquisa reversa<\/p>\n

sudo gedit \/etc\/bind\/db.192<\/p>\n

Depois de editado:<\/p>\n

\"bind16\"<\/a><\/p>\n

Na primeira marca\u00e7\u00e3o substitu\u00ed o “localhost” pelo nome completo do servidor e em “root” pelo nome do dom\u00ednio.
\nNas outras 4 linhas abaixo acrescentei o nome de meu servidor na primeira linha, e nome completo do servidor na \u00faltima com o n\u00famero do IP do servidor (192.168.0.189). E nas duas linhas do meio inseri duas entradas opcionais, uma para o meu roteador (no meu caso \u00e9 o 192.168.0.7) e um nome de m\u00e1quina da minha rede para testar a resolu\u00e7\u00e3o do nome (linux-iwck com IP 192.168.0.235).
\nAs demais linhas que existiam abaixo eu removi.<\/p>\n

Salve e saia.<\/p>\n

Pronto, agora o arquivo de configura\u00e7\u00e3o “named.conf.local”<\/strong><\/em> est\u00e1 configurado com as zonas criadas e apontando para o arquivo de zonas que criamos e editamos “db.labdns.site.local”<\/strong> e “db.192”.<\/strong><\/em><\/p>\n

Testando Tudo – 6 Testes<\/h3>\n

Esta parte \u00e9 essencial, pois como disse, qualquer errinho na configura\u00e7\u00e3o dos arquivos, seja um ponto ou um ponto e v\u00edrgula ou a retirada de uma “\/” que comenta uma linha, j\u00e1 \u00e9 raz\u00e3o para o servi\u00e7o do DNS nem subir.<\/p>\n

1 – Reiniciando o Servi\u00e7o<\/h4>\n
sudo \/etc\/init.d\/bind9 restart<\/pre>\n

Se tudo der certo a sa\u00edda ser\u00e1:<\/p>\n

\"bind17\"<\/a><\/p>\n

2 – Verifica\u00e7\u00e3o dos arquivos de Zonas<\/h4>\n

Vamos verificar se n\u00e3o h\u00e1 nenhum erro nos arquivos de zonas que criamos com os seguintes comandos:<\/p>\n

named-checkzone site.local \/etc\/bind\/db.labdns.site.local<\/pre>\n

E depois<\/p>\n

named-checkzone site.local \/etc\/bind\/db.labdns.site.local<\/pre>\n

Se der certo, o resultado ser\u00e1 como este:<\/p>\n

\"bind23\"<\/a><\/p>\n

3 – Teste os hosts que est\u00e3o dentro de sua zona de pesquisa direta do DNS.<\/h4>\n

Se tudo estiver certo ele trar\u00e1 a configura\u00e7\u00e3o dos hosts que voc\u00ea adicionou para ele resolver.<\/p>\n

host -l site.local<\/pre>\n

\"bind18\"<\/a><\/p>\n

4 – Teste se seu dom\u00ednio de DNS est\u00e1 correto<\/h4>\n
nslookup site.local<\/pre>\n

Se tudo estiver certo, a sa\u00edda ser\u00e1 como esta:<\/p>\n

\"bind19\"<\/a><\/p>\n

Tamb\u00e9m teste com o comando dig.<\/p>\n

dig site.local<\/pre>\n

Se tudo estiver certo a sa\u00edda ser\u00e1 como esta, com os campos que selecionei apontando para o nome de seu servidor e IP:<\/p>\n

\"bind20\"<\/a><\/p>\n

5 – Testando a Zona Reversa<\/h4>\n

Para testar a Zona Reversa de nosso DNS, vamos usar o comando “host” e o IP de nossa m\u00e1quina que queremos que ele traga o nome dela.
\nIsso \u00e9 exatamente o que a resolu\u00e7\u00e3o reversa faz, ou inv\u00e9s de pesquisar um nome e ele trazer o IP, voc\u00ea pesquisa o IP e ele traz o nome. \ud83d\ude09<\/p>\n

\"bind21\"<\/a>
\nVoc\u00ea poder\u00e1 adicionalmente dar um ping no nome desta m\u00e1quina. No meu caso “ping linux-iwck”.
\nE ent\u00e3o mesmo que a m\u00e1quina n\u00e3o esteja ligada o resultado dever\u00e1 ser:
\n(mesmo que a m\u00e1quina esteja desligada ou n\u00e3o exista e n\u00e3o retorne o ping, no meu caso retornou pois a m\u00e1quina existe realmente e est\u00e1 ligada)<\/p>\n

PING linux-iwck (192.168.0.235) 56(84) bytes of data.<\/pre>\n

\"bind25\"<\/a><\/p>\n

Como pode ver acima, ele trouxe entre parenteses o IP da m\u00e1quina. Resolu\u00e7\u00e3o funcionando.<\/p>\n

Ent\u00e3o, nossa configura\u00e7\u00e3o de zona reversa est\u00e1 correta.<\/p>\n

6 – Testando o Foward (encaminhamento) do arquivo “named.local.options”<\/h4>\n

Para testarmos basta darmos um ping em uma p\u00e1gina da internet<\/p>\n

ping www.google.com.br<\/p>\n

\"bind26\"<\/a><\/p>\n

\u00a07 – Configure o teste o servidor de DNS em uma m\u00e1quina “client”<\/h4>\n

Esta etapa deve ser realizada em outra m\u00e1quina desktop de sua rede.<\/p>\n

Se for uma m\u00e1quina Linux:<\/strong><\/p>\n

Configure pela interface, No \u00edcone de rede (na extremidade da barra de tarefas).
\nO programa de configura\u00e7\u00e3o de rede ir\u00e1 depender de seu ambiente gr\u00e1fico, mas na maioria deles tem essa apar\u00eancia:<\/p>\n

\"bind24\"<\/a><\/p>\n

Ou edite o arquivo resolv.conf deste Linux.<\/p>\n

 sudo gedit \/etc\/resolv.conf<\/pre>\n

E edite as seguintes linhas:
\n(conforme o IP do seu DNS server e nome do dom\u00ednio do seu DNS server):<\/p>\n

nameserver\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 192.168.0.189\r\nsearch\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 site.local<\/pre>\n

 <\/p>\n

Se for uma m\u00e1quina Windows<\/strong><\/p>\n

\"bind27\"<\/a><\/p>\n

Feito isso, basta pingar nesta m\u00e1quina “client” o IP do seu servidor de DNS, se estiver pingando, est\u00e1 tudo correto.<\/p>\n

\"bind28\"<\/a><\/p>\n

Testes finalizados, tudo ok!<\/p>\n

Bom isso a\u00ed pessoal, boa sorte nos laborat\u00f3rios a\u00ed.<\/p>\n

Abra\u00e7os,<\/p>\n

Cleuber<\/p>\n","protected":false},"excerpt":{"rendered":"

Hoje vamos configurar um DNS Server no Ubuntu 14.04 LTS. Este artigo \u00e9 voltado mais para usu\u00e1rios avan\u00e7ados, estudantes de TI e Linux e administradores de redes. Explica\u00e7\u00e3o simples: Um servidor de DNS (Domain Name System), faz a resolu\u00e7\u00e3o de nomes em sua m\u00e1quina ou m\u00e1quinas em sua rede, ou seja, todas as m\u00e1quinas em …<\/p>\n","protected":false},"author":1,"featured_media":4595,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[51,4,348],"tags":[174,175,106],"class_list":["post-4579","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dicas-e-tutoriais","category-tutoriais-linux","category-servidores-linux","tag-dns","tag-opendns","tag-ubuntu-14-04"],"_links":{"self":[{"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/posts\/4579","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=4579"}],"version-history":[{"count":0,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/posts\/4579\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/media\/4595"}],"wp:attachment":[{"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=4579"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=4579"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=4579"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}