TItaniwm Redes

TItaniw Redes

Divulgue - Nos pelo Twitter

Configurando um Servidor DNS no Linux Ubuntu!

Nesta serie de post sobre Redes de Computadores, falo um pouco sobre configurações para a montagem e a administração de um ambiente cliente/servidor, nossos estudos começaram com a instalação de um virtualizador para rodar maquinas virtuais para facilitar o aprendizado! Veja os post anteriores:

Redes de Computadores, Criando Maquinas Virtuais no VM Ware Workstation!



Nesse post será mostrado como configurar um servidor DNS no Linux Ubuntu, para fins de futuras configurações de um domínio, ou qualquer tipo de servidor que precisa de um servidor DNS!

Para começar, atenda as seguintes pre-requisitos do ambiente:

1_ Uma maquina virtual rodando o Linux Ubuntu(qualquer versão) que servirá como o Servidor DNS.
2_ Duas placas de rede, uma para receber internet, para baixar os pacotes necessários, e outra para ser definidas como IP da resolução do DNS
3_ Instalar um Servidor DNS, usaremos o Bind da ISC!

Vamos-la:

obs: Uso o editor pico, troque pico por seu editor de preferencia, uso o pico por questão de facilidade!
obs: Após os # e apenas um comentário, não precisa ser adicionado aos arquivos.

1_ Já dentro do sistema, abra o terminal, para facilitar, vamos ativar o usuário root, muitos tem medo, pois poderá fazer alguma burrada com o  root, mas sempre uso ele, e como estamos usando maquina virtual isto não será um problema, mas atente, para o root, as vezes pode ser perigoso usa-lo!

2_ De o comando 'sudo su' e digite a senha, concluído o login, ative o root:
2.1 passwd root
2.2 Digite e confirme a senha.

Usuário root ativado, de o comando "exit", e apartir de agora logue com apenas "su", e não será necessário mais o comando sudo su antes de cada ação!

Pronto, agora faremos algumas configurações de rede:

1_ No terminal, digite "ifconfig" e certifique-se que tenha duas placas de rede mais o "lo"(loopback), sendo como exemplo, eth0, eth1,  e lo!
2_ Edite o seguinte arquivo "interfaces" afins de configurar um ip por dhcp para a placa eth0, ee um ip fixo para a placa de rede "eth1", esse ip será o que responderá pelo DNS.
3_ Digite "pico /etc/network/interface"
dentro dele digite o seguinte:

auto eth0 # placa de rede eth0
iface eth0 inet dhcp # receber um ip por dhcp

auto eth1 #placa de rede eth1
iface eth1 inet static # placa eth1 ip statico
address 192.168.10.1 # endereço
netmask 255.255.255.0 # mascara de rede
network 192.168.10.0 # ip da rede
broadcast 192.168.10.255 # broadcast
gateway 192.168.10.254 # gateway

de CTRL+X e salve o arquivo.

4_ Digite "ifconfig eth0 down" 
5_ ifconfig eth1 down;
6_ /etc/init.d/networking restart;
7_ ifconfig eth0 up;
8_ ifconfig eth1 up;
9_ teste a internet, pingando no google, digite "ping google.com", se ocorrer tudo bem internet conectada e funcionando.

Iremos agora baixar os pacotes e configurar o bind:

1_ apt-get install bind9, aperte enter se necessário, após baixados os pacotes vamos a algumas configurações:

Primeiramente vá para a basta do bind9 com o comando "cd /etc/bind"
De o comando "ls" e visualize os arquivos na pasta:
Editamos o arquivo named.conf.local e criaremos as zonas:
2_ "pico named.conf.local", no final acrescentaremos as zonas neste arquivo:

obs: O nome da zona futuramente poderá responder por um domínio ou um reino kerberos, atente para o nome das zonas.

zone "tudoemgeral3.com.br" { #nome da zona
type master; #tipo do servidor, master
file "teg3.zone"; #arquivo que contem as informações da zona, sua pasta esta por padrão "/var/cache/bind", você pode altera-la no arquivo named.conf.options
}; 

zone 10.168.192.in-addr.arpa { # coloque seu ip da rede em reverso com a dominação "in-addr.arpa", o porque disso e que lê se o arquivo de trás para frente, assim ele lê arpa.addr-in.192.168.10.x
type master;
file "teg3.rev"; # o arquivo file pode ter qualquer nome
};

De CTRL+X e salve o arquivo!

Edite o arquivo named.conf.options e faremos alguns ajustes:
1_ pico "named.conf.options"
2_ em "directory" coloque onde quer que seu arquivo seja procurado, deixe como padrão, mas poderá ser modificado como quiser, exemplo se quiser salvar na pasta /etc/bind, deixe na opção directory "/etc/bind";

Ainda nesse arquivo altere a opção "auth-nxdomain" no para "auth-nxdomain yes";
De CTRL+X e salve o arquivo.

De o comando "named-checkconf" se na linha de baixo não retornar nenhum erro seus arquivos estão corretos, caso apareça algum, revise seu arquivo e faça suas configurações, esses arquivos são sensíveis a erro como a falta de uma letra, um ponto e virgula ou uma chave.

Agora criaremos os arquivos das zonas, o nome desse arquivo deve ser igual ao colocado na opção file da zona, e deve ser salvo na pasta aonde foi configurado o "directory".

1_ Crie o arquivo teg3.zone na pasta /var/cache/bind:
pico /var/cache/bind/teg3.zone e edite com as seguinte configurações:

obs: Nesse arquivo não se esqueça dos pontos finais, e troque o serial cada vez que alterar esse arquivo.

  GNU nano 2.2.6            Arquivo: teg3.zone                                

;
; Arquivo Zona Primaria
;
$TTL 86400 ;tempo de vida do arquivo
@ IN SOA master.tudoemgeral3.com.br. root.master.tudoemgeral3.com.br. ( ; qualquer maquina para o primeiro registro do servidor nomedamaquina.nomedodominio. root.nomedamaquina.nomedodominio.                     2012010100 ; serial ;serial em formato ano/mes/dia/numerodoserial
            7200  ; refresh  ;tempo de atualização desse arquivo
            1800  ; retry ;tempo para retentar as atualizações das novas configurações
            1209600  ; expire ;tempo para expirar o arquivo
            300 )  ; minimum

  NS master ;nameserver nomedamaquina
  A 192.168.0.100 ;registro A para um ip de 32bits

master  A 192.168.0.10  ;integrar uma maquina a um registro ip

www     CNAME master.linux.scideias.com.br ;um apelido para sua maquina dentro do domínio

De CTRL+X e salve o arquivo;

Check para ver se o arquivo está correto, com o mando named-checkzone: 

o comando é: "named-checkzone nomedodominio caminhocompletodoarquivo"
named-checkconf tudoemgeral3.com.br /var/cache/bind/teg3.zone

Se na linha de baixo  retornar :

loaded serial 2012010100
OK;
seu arquivo está configurado corretamente, se aparecer algum erro revise arquivo.

Agora criaremos o arquivo da zona reversa, de o comando:
"pico /var/cache/bind/teg3.rev" e edite o arquivo com as seguintes configurações:
obs: não esqueça dos pontos finais

;
; Arquivo Zona Reversa ;
$TTL 86400 ;tempo de vida do arquivo
@ IN SOA master.tudoemgeral3.com.br. root.master.tudoemgeral3.com.br. ( ; qualquer maquina para o primeiro registro do servidor nomedamaquina.nomedodominio. root.nomedamaquina.nomedodominio.                     2012010100 ; serial ;serial em formato ano/mes/dia/numerodoserial
            7200  ; refresh  ;tempo de atualização desse arquivo
            1800  ; retry ;tempo para retentar as atualizações das novas configurações
            1209600  ; expire ;tempo para expirar o arquivo
            300 )  ; minimum
         
             NS master.tudoemgeral3.com.br. ;NameServer com o nomedamaquina.nomedominio.

1 PTR tudoemgeral3.com.br. ;seu ip PTR nomedodominio.
1 PTR master.tudoemgeral3.com.br ;seu ip PTR nomedamaquina.nomedodominio.


obs: o numero "1" e o final do seu ip, sendo que a rede você já configurou no arquivo de zona reversa, quando setou a configuração 10.168.192.in-addr.arpa, sendo que o arquivo lerá seu ip "1.10.168.192.in-addr.arpa"

Check o arquivo usado o comando named-checkzone:
"named-checkzone nomedazona caminhocompletodoarquivo"
"named-checkzone 10.168.192.in-addr.arpa /var/cache/bind/teg3.rev

Se na linha de baixo retornar:
loaded serial 2012010100
OK;
suas configurações estas corretas, se o contrário revise seu arquivo.

Até aqui, basta reiniciar o bind que seu DNS já rodará, teste em uma outra maquina virtual, mesmo com linux ou windows, a resolução do seu DNS.

Os últimos passos a seguir definiram o reconhecimento do seu Servidor DNS na verdade ele não sabe que é um servidor DNS, faremos que ele se reconheça assim.

Altere o nome da maquina de acordo com o setadas nas configurações da zona:
"pico /etc/hostname"

apague o que estiver e coloque o apenas o nome da sua maquina, no meu caso, "master";
De CTRL+X e salve o arquivo

Altere o arquivo hosts: este arquivo conterá um lista de IP e nome de maquinas que estarão presentes no servidor dns, geralmente apenas os nomes dos servidores dns primário e de backup.

"pico /etc/hosts"
adicione a linha com seu ip e o nome do domínio e o nome da maquina:

192.168.10.1 tudoemgeral3.com.br master

De CTRL+X e salve o arquivo.

Altere o arquivo resolv.conf: este arquivo contem um servidor de nomes e um domínio de pesquisa que a maquina irá procurar, nesse caso ele mesmo e o servidor dns, então ele mesmo se procurará.
"pico /etc/resolv.conf"

nameserver 192.168.10.1 # seu ip
domain tugoemgeral3.com.br # seu servidor dns
search tudoemgeral3.com.br # um domínio de pesquisa

De CTRL+X e salve o arquivo.

Basta agora reiniciar o bind:
"service bind9 restart" ou "/etc/init.d/bind9 restart";

Se ocorrer tudo bem, o serviço será reiniciado sem nenhum erro, se der algum erro no restart do serviço, de o comando "tail /var/log/syslog" e procure o erro informado e procure na internet ou deixe nos comentários, vamos a alguns teste de resolução:

"nslookup tudoemgeral3.com.br"; zona primaria
Server:        192.168.10.1
Address:    192.168.10.1#53

Name:    tudoemgeral3.com.br
Address: 192.168.0.100

teste de zone reversa:

"nslookup 192.168.10.1" ; zona reversa
Server:        192.168.10.1
Address:    192.168.10.1#53

1.10.168.192.in-addr.arpa    name = master.tudoemgeral3.com.br.10.168.192.in-addr.arpa.
1.10.168.192.in-addr.arpa    name = tudoemgeral3.com.br.

Outros testeS:

"dig @192.168.10.1 tudoemgeral3.com.br SOA"

; <<>> DiG 9.8.5-P1 <<>> @192.168.10.1 tudoemgeral3.com.br SOA
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54981
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;tudoemgeral3.com.br.        IN    SOA

;; ANSWER SECTION:
tudoemgeral3.com.br.    86400    IN    SOA    master.tudoemgeral3.com.br. root.master.tudoemgeral3.com.br. 2012010100 7200 1800 1209600 300

;; AUTHORITY SECTION:
tudoemgeral3.com.br.    86400    IN    NS    master.tudoemgeral3.com.br.

;; ADDITIONAL SECTION:
master.tudoemgeral3.com.br. 86400 IN    A    192.168.0.10

;; Query time: 12 msec
;; SERVER: 192.168.10.1#53(192.168.10.1)
;; WHEN: Sat Jul 27 16:49:57 BRT 2013
;; MSG SIZE  rcvd: 115



Pronto seu servidor DNS está devidamente configurado, mas apenas para um servidor primário, em outros posts trarei configurações de servidor de backup, e integração com o DHCP, até o próximo post....





Nenhum comentário:

Postar um comentário