Nessa primeira parte que será constituído de uma serie de 4 postagens, vou passar um passo a passo de como realizar a instalação e configuração do DNS com o BIND9 no Debian 6.
Obs: Lembrando a todos que onde estiver destacado em vermelho é para que você possa alterar conforme sua vontade.
Vamos seguindo com o nosso roteiro:
================================================
||MONTANDO UM SERVIDOR BIND DNS PASSO-A-PASSO||
================================================
======================================
-== Configurando as interfaces ==-
========================
Entrar no arquivo # vi
/etc/network/intervaces e configurar uma Alias como abaixo:
(abaixo da eth0 que estará configurada como DHCP, não esquecendo de arancar o hot-plug eth0
e colocar auto eth0, onde stá como DHCP).
(abaixo da eth0 que estará configurada como DHCP, não esquecendo de arancar o hot-plug eth0
e colocar auto eth0, onde stá como DHCP).
Exemplo de configuração da placa de rede em DHCP com Aliase
#Interface DHCP
auto eth0
iface eth0 inet dhcp
#Aliase para configurar a interface para o DNS
auto eth0:1
auto eth0:1
iface eth0:1 inet static
name Eth0 Alias
address 192.168.4.1
netmask
255.255.255.0
broadcast
192.168.4.255
network 192.168.4.0
#Aliase para configurar a interface para o MAIL
auto eth0:1
auto eth0:1
iface eth0:1 inet static
name Eth0 Alias
address 192.168.4.2
netmask 255.255.255.0
broadcast 192.168.4.255
network 192.168.4.0
#Aliase para configurar a interface para o DHCP
auto eth0:1
auto eth0:1
iface eth0:1 inet static
name Eth0 Alias
address 192.168.4.3
netmask 255.255.255.0
broadcast 192.168.4.255
network 192.168.4.0
======================================
-== Adicionando o caminho para
baixar bibliotécas ==-
======================================
Primeiramente entrar no diretório #
vi /etc/apt/source.list e adicionar ao arquivo a linha
deb http://ftp.br.debian.org/debian stable main contrib non-free
Agora para atualizar as bibliotecas antes das instalações, #apt-get update
======================================
-== Instalar o vim ==-
===============
Para a instalação de um editor de texto mais amigável e confiável e prático (em relação ao VI)
#apt-get install vim
Para a instalação de um editor de texto mais amigável e confiável e prático (em relação ao VI)
#apt-get install vim
======================================
-== Configurações importantes para facilitar o trabalho ==-
======================================
Entrar no arquivo # vim
/etc/vim/vimrc e aproximadamente na linha "20"descomentar a "syntax on"
e também abaixo adicionar a linha set nu para enumerar as linhas e diferenciar a sintax dentro dos
arquivos de configuração (/ nome do arquivo serve para procurar em um arquivo.
e também abaixo adicionar a linha set nu para enumerar as linhas e diferenciar a sintax dentro dos
arquivos de configuração (/ nome do arquivo serve para procurar em um arquivo.
apt-get install gpm (para instalar o mouse bom para pode se localizar no sell do Debian)
Entrar
no arquivo # vim /root/.bashrc e adicionar as linhas no arquivo conforme
abaixo:
alias ls='ls --color=auto'
alias dir='ls --color=auto'
alias vdir='ls --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
Salvar
e sair, após aplicar o # source
~/.bashrc para realizar a aplicação do
que foi alterado no arquivo.
As
linhas acrescentadas acima, seve para diferenciar os arquivo, diretórios entre
outros com
cores diferentes.
cores diferentes.
======================================
-== Instalando o bind9 ==-
==================
# apt-get install bind9
======================================
-== Configurando o arquivo de
ZONA ==-
==============================
Obs.: Antes de começar, entrar
no arquivo #vim /etc/resolv.conf e adicionar o nameserver 127.0.0.1
para que o mesmo seja o primeiro a fazer a consulta no arquivo como exemplo abaixo:
para que o mesmo seja o primeiro a fazer a consulta no arquivo como exemplo abaixo:
domain home
search home
nameserver 127.0.0.1
1º) Fazer cat
named.conf.options >> named.conf depois cat named.conf.default-zones
>> named.conf
e por fim cat named.conf.local >> named.conf isso
tudo é para centralizar em somente um arquivo o
#named.conf, gerando mais
facilidade de administração do DNS;
2º) Entrar no diretório do bind # cd
/etc/bind e copiar o arquivo db.empty
#cp db.empty /etc/bind/db.dominio
3º) Após entrar no arquivo
db.dominio e realizar as devidas alterações de dominio,
os tempos de refresh,
retry, serial, expire, negative cache, os IP's aos domínios, serveiços, etc,
após
configurar essa parte, realizar o
teste do arquivo com o comando
#named-checkzone + nomedomínio + arquivo
db.xxxx;
4º) Adicionar um subdomínio e
mudando o domínio raiz é simples, adicionando linhas mostrando
qual o nome do
subdomínio, assim como será o domínio com o subdomínio e apresentar o IP do
mesmo, como pode ser mostrado abaixo:
domínio raiz: IN NS ns.principal.com.
IN A 192.168.4.1
Para mudar o domínio RAIZ $ORIGIN exemplo.principal.com.
O nome que será do subdomínio: qualquer IN A 192.168.4.1
(Apontando para outro IP dentro do
servidor Raiz ou outro servidor)
Para retornar o domínio principal $ORIGIN principal.com.
5º) Para delegar delegar domínios
usando o registro de cola (glue) adicionar as linhas conforme abaixo:
#O domínio a delegar
exemplo2 IN NS ns.exemplo2.principal.com.
ns.exemplo2.principal.com. IN A 192.168.4.1
6º) Colocando os nomes de HOSTS
assim como os seus respectivos IP's, como mostrado abaixo:
;Hosts
ssh IN A 192.168.4.1
ns IN A 192.168.4.1 # Esse é um que não pode faltar pois é o
seu próprio DNS
7º) Para configurar o servidor de
e-mail entrar no arquivo # vim db.principal.com e seguir
instruções abaixo:
domínio raiz: IN NS ns.principal.com.
IN A 192.168.4.1
IN MX 10 mail.principal.com. #Esse será o servidor de
e-mail com a prioridade de acesso 50
o principal, caso tenha outros podemos colocar
uma prioridade maior ou menor dependendo de qual o servidor queira que
seja o primeiro.
;servidor
de e-mail
mail IN A 192.168.4.2
smtp IN CNAME mail
pop IN CNAME mail
imap IN CNAME mail
8º) Configurando o servidor DNS e
E-MAIL reverso, copiar o arquivo #cp db.127 db.192.168.4
e editar o arquivo
#vim db.192.168.4 conforme segue abaixo:
;
; BIND reverse data file for local
loopback interface
;
$TTL 604800
@ IN
SOA ns.principal.com. admin.principal.com. (
2013043001 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN
NS ns.principal.com.
IN A 192.168.4.1
IN MX 10
mail.principal.com.
IN NS dhcp.principal.com.
;Hosts
ns IN A 192.168.4.1 #Precisa ser criado para que possa
reconhecer o domínio
principal;
;Servidor MAIL
mail IN
A 192.168.4.2
smtp IN
CNAME mail
pop IN
CNAME mail
imap IN
CNAME mail
;Servidor DHCP
dhcp IN A
192.168.4.3
9º) Entrar no arquivo #vi
/etc/dhcp/dhclient.conf e descomentar a linha vinte para poder
realizar a
consulta no IP local como segue abaixo
prepend domain-name-servers
127.0.0.1;
salvar o arquivo e sair.
Agora realizar o teste do arquivo
named.conf com o comando #named-checkconf e named-checkzone;
10º) Agora entrar no arquivo #vim
named.conf, e ajeitar o arquivo num
geral e também
adicionar nossas zonas conforme segue abaixo: o arquivo
comentado:
options {
directory "/var/cache/bind"; #Esse diretório é o que vai indicar onde
estão todos os
arquivos de configuração do BIND;
forwarders { #Essa parte é para realizar o
direcionamento
para o servidor venha ter conexão
10.3.63.253; externa no SENAI devido ao proxy, uma
peculiaridade;
};
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
zone "." {
type hint;
file "/etc/bind/db.root";
};
zone "localhost" { #Essa é a zona
local do próprio
servidor sendo
servidor sendo
assim é preciso ela estar presente;
type master; #O tipo tem que ser master;
file "/etc/bind/db.local"; #Deve-se ter o local do arquivo completo para
a
consulta dentro do arquivo corretamente;
};
zone "127.in-addr.arpa" { #Assim como temos a zona local é preciso
a local reversa
sendo essa feita dessa maneira;
type master; #O tipo tem que ser master;
file "/etc/bind/db.127"; #Deve-se ter o local do arquivo completo para
a
consulta dentro do arquivo corretamente;
};
zone "0.in-addr.arpa" {
type master;
file "/etc/bind/db.0";
};
zone
"255.in-addr.arpa" { #De igual forma
temos o broadcaste de uma
rede temos também para o DNS que se
encontra no arquivo reverso;
rede temos também para o DNS que se
encontra no arquivo reverso;
type master; #Como é nossa rede temos que coloca-lo como
master e nã outro
broadcast;
file "/etc/bind/db.255"; #De igual forma deve-se ter o local do
arquivo
completo para a consulta dentro do
arquivo corretamente;
arquivo corretamente;
};
# Abaixo vamos adicionar as zonas do nosso
servidor de DNS que foram criados
anteriormente e testados no passo 2º e 3º;
zone
"principal.com" { #Nessa parte
somente adicinar o domínio
sem o "db" e sem o ponto no final;
sem o "db" e sem o ponto no final;
type master; #Sendo ele o seu servidor principal a
controlar o server ele deve ser o master;
controlar o server ele deve ser o master;
file
"/etc/bind/db.principal.com"; #Colocar o caminho
completo do arquivo
de zona do seu domínio que foi criado;
};
zone
"4.168.192.in-addr.arpa" {
#Esse arquivo
serve para resolver os nomes
reversamente e deve-se colocar o IP reverso
sem o ultimo octeto como está;
sem o ultimo octeto como está;
type master; #É preciso que ele seja o master para que
possa acompanhar a consulta normal como
acima mencionado;
possa acompanhar a consulta normal como
acima mencionado;
file
"/etc/bind/db.192.168.4"; #Caminho completo
para realizar a consulta
criando de igual forma o arquivo com o IP
do servidor não incluindo o ultimo octeto.
do servidor não incluindo o ultimo octeto.
};
Após configurar o arquivo reiniciar
o serviço DNS #rndc reload
=====================================
-== Criando uma ZONA slave (SECUNDÁRIA) ==-
=====================================
11º) Para criar uma zona slave fazer
entrar no arquivo #vim /etc/bind/named.conf e adicionar as
linhas após a ultima
zona criada como abaixo:
zone "secundario.com"
{ #Adicionar o
domínio ao qual será o slave;
type slave; #Colocar como o slave;
file "bck.principal.com.br"; #Criar o documento bck.principal.com.br que
será criado
dentro do #/var/cache/bind
onde tem o usuário bind tem permissão de escrita;
masters { 192.89.200.1;
}; #O IP do servidor ao qual o domínio acima
está
configurado;
};
12º) Vamos agora gerar o TSIG (uma
espécie de certificado interno para interligar servidores),
com o comando
abaixo:
# dnssec-keygen -a
HMAC-MD5 -b 128 -n HOST key-name #É o nome
da sua chave.
Ao rodar esse
comando será criado dois arquivos com o segredo com os seguintes nomes
Kkey-name.+157+11281.private e também Kkey-name.+157+11281.key (o ponto key é o
que será utilizado) primeiramente renomear o arquivo para um nome para melhor
compreensão
como key-name.key entrar no arquivo que vai estar de forma
semelhante o exemplo abaixo:
key-name. IN KEY 512 3 157 Di8Rx/7CiVZgh9AL8Nlc9w==
Após entrar no arquivo, edita-lo e
deixar conforme abaixo:
key " key-name "
{
algorithm hmac-md5;
secret " Di8Rx/7CiVZgh9AL8Nlc9w==";
};
13º) Agora com o arquivo devidamente
alterado, entrar no named.conf e adicionar as linhas
que estão destacadas
conforme abaixo:
zone "principal.com" {
type master;
file "/etc/bind/db.principal.com";
allow-transfer { key key-name.key; };
};
zone "4.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.192.168.4";
allow-transfer { key key-name.key;
};
};
14º) Para concluir realizar os
testes com os comandos #
named-checkconf
# named-checkzone +
nomedomínio + arquivo db.xxxx, # cat
/var/log/syslog
(para ver o que foi rodado e se deu algum problema) se não de
nenhum problema ok
vamos a integração do BIND com o DHCP, esse será o nosso próximo assinto (postagem)
o
passo-a-passo do servidor DHCP.
Pessoal, muito obrigado por lerem meu blog assim acabamos a configuração
de um servidor DNS, mais não as postagens, qualquer dúvida fique a vontade
para postar, dentro do possível estarei respondendo e também procurarei
realizar postagem que interesse aos nossos leitores.
Dentro de alguns dias começaremos com o servidor DHCP.
Opa man, me manda um email valido ai para conversarmos. Não te identifiquei pelo nome :)
ResponderExcluir