Instalando o BIND 9 no CentOS 6

Um rápido tutorial sobre como configurar o seu servidor DNS.

[ Hits: 77.829 ]

Por: Rafael Carvalhido (Dr.Network) em 01/10/2012


Preparação - Instalação - Configuração



Preparando o sistema

Atualização dos pacotes já instalados:

# yum -y update rpm
# yum -y -v update


Inicialize somente o que interessa:

# chkconfig --list |grep 3:on
# chkconfig "service" on
# chkconfig "service" off


Onde:
  • Linha 1 → Retorna na tela quais serviços estão programados para inicializar junto com o S.O;
  • Linha 2 → É para caso precise adicionar mais algum serviço, trocando "service" pelo nome do serviço;
  • Linha 3 → É para caso precise remover algum serviço, trocando "service" pelo nome do serviço.

Criação de usuário não-root com direito de sudo:
    # useradd user
    # passwd user
    # visudo

Onde:
  • Linha 1 → Adiciona o usuário "user";
  • Linha 2 → Altera a senha do usuário "user";
  • Linha 3 → Abre o arquivo que contém os usuários habilitados para sudo.

Adicione o usuário criado abaixo do root, deste modo:

root ALL=(ALL) ALL
user ALL=(ALL) ALL


Dificultar o acesso ao root e remover o login do SSH:

# passwd root
# vim /etc/ssh/sshd_config


Obs.: Crie uma senha forte, para que não possam usar brute force attack.

No arquivo aberto, altere a linha abaixo:

PermitRootLogin  no


Instalando o BIND 9

Instalação com a segurança do chroot e inicialização automática:

# yum –y install bind-chroot
# chkconfig named on


Onde:
  • Linha 1 → Instala o BIND com chroot e suas dependências;
  • Linha 2 → Adiciona o serviço do BIND (chamado de "named") à inicialização do S.O.

Edição do arquivo de configuração "named.conf"

# vim /etc/named.conf

Altere e/ou adicione as linhas abaixo:

Option {
     listen-on port 53 { any; };
     allow-query   { any; };
     allow-transfer  { none; };
     version "[null]";


Inicie o serviço named e verifique se está rodando dentro da jail chroot:

# service named start
# pidof named


Onde:
  • Linha 1 → Inicia o serviço de DNS
  • Linha 2 → Pede o Process ID do serviço named (o exemplo retornou o 2466)

Exemplo de output do comando pidof:
2466

# ls -ld /proc/2466/root

Este comando pede para mostrar onde o processo está sendo rodado. Deve aparecer como abaixo:
Output esperado do comando acima:
lrwxrwxrwx. 1 named named 0 Sep 18 12:09 /proc/2466/root -> /var/named/chroot


Configurando zonas

Neste ponto, seu servidor já está funcionando como um Caching DNS e já está resolvendo nomes de forma não-autoritativa.

Você pode testar com o nslookup:

# nslookup
> server 127.0.0.1
> www.vivaolinux.com.br

Para um servidor DNS ter autoridade sobre uma zona, esta deve estar incluída no arquivo de configuração "named.conf" e ter um arquivo só pra ela em /var/named.

Inserção da zona no named.conf

Imagine que sou dono do Viva o Linux, e o hospedo dentro do meu bloco de IPs: 177.128.168.0/24 (estes são nomes e números fictícios):

# vim /etc/named.conf

Adicione as linhas abaixo ao arquivo "named.conf":

; //[final do arquivo named.conf]

// adicionado por mim

zone "vivaolinux.com.br" {
     type master;
     file "vivaolinux.zone.db";   //entre aspas coloque qualquer nome de arquivo, mas lembre-se dele
};

// reverso adicionado por mim

zone "168.128.177.in-addr.arpa" IN {
     type master;
     file "reverse.168.128.177";   //entre aspas coloque qualquer nome de arquivo, mas lembre-se dele
};


Página anterior     Próxima página

Páginas do artigo
   1. Sobre o tutorial
   2. Preparação - Instalação - Configuração
   3. Fabricação dos arquivos das zonas
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Instalando Apache2, PHP4 e MySQL

Instalando o Debian Etch sem o Gnome

Instalando MultiLIB no Slackware 14.2 com Atualizações pelo GSlapt

Instalação, configuração, utilização e testes do DRBD 0.7

Fontes True Type no Slackware (sem xfstt e ttmkfdir)

  
Comentários
[1] Comentário enviado por danniel-lara em 01/10/2012 - 11:04h

Parabéns pelo artigo
muito bom

[2] Comentário enviado por cromado em 01/10/2012 - 12:59h

Interessante. Aprender sobre Bind nunca é demais.

Uma pergunta.

Se eu criar uma zona qualquer no servidor DNS, como vc fez no exemplo acima.
Supondo que eu tenho um Domínio Registrado, e um IP válido.

Este DNS já trata de replicar para o Mundo todo?.
Ou seja, configurei um domínio exemplo: testebind.com.br , no meu BIND que acabei de criar.

Meu Bind tem um IP público.

No RegistroBr apontei para o meu DNS, que acabei de criar.

o DNS Bind já vai replicar para o mundo, por exemplo, para o DNS do google: 8.8.8.8 e 8.8.4.4, ou Open DNS: 208.67.222.222.

???.

[3] Comentário enviado por drnetwork em 01/10/2012 - 15:11h

Sim. Se você é o dono do domínio no Registro.BR e apontou como servidor principal o Bind que você acabou de montar, os registros desta zona serão replicados para o mundo. Agora, não é "qualquer" zona que você criar que funcionará assim. Quando você aponta no Registro.BR para um servidor, este servidor responderá com autoridade por aquele domínio específico, replicando-o pelo mundo.

[4] Comentário enviado por andrerds em 02/10/2012 - 17:04h

Ola amigos.. sou novo aqui .. queria tirar uma duvidas sobre Ip fixo .. registro br;
Li varios artigos , e a maioria esta falando de ter 2 dns e dois ips fixos

Entao so possuo um Ip fixo .. quero registra no registro br , para ter webmail e site no meu proprio servidor .
Ha possibilidades de funcionar certinho com apenas 1 ip .. ..
Estou usando Centos 6.3 64bits.

Obrigado a todos..
desculpem qualquer coisa se estou postando no lugar errado .

[5] Comentário enviado por cromado em 02/10/2012 - 17:29h

andreds,

Vai funcionar direitinho sim, você só precisa de 1 IP para subir o seu site e o webmail.

Você vai precisar registrar o domínio no registro.br.

Uma vez registrado, de duas uma:

1. Ou você hospede seu site em algum provedor, e use os 2 IPs de DNS do provedor. (o que não é o caso).

ou

2. Use gratuitamente o 2 DNSs do Registro.BR. após você registrar seu domínio no Registro.BR, você pode usar os 2 DNS deles mesmo, tem uma opção de usar DNS e etc.


Abç.

[6] Comentário enviado por drnetwork em 03/10/2012 - 09:44h

É, Andreds, o que o cromado falou está correto. Mas olha, a menos que vc esteja querendo ser um sysadmin em tempo integral, deixa seus servers em um web host. Vc paga por volta de R$20/mês, mas não tem dor de cabeça. Utilizando mail server, web server e DNS publico sem saber MUITO de segurança é passível de ter MUITA dor de cabeça.

Sua pergunta realmente foge um pouco do escopo do tópico. Se quiser conversar mais sobre isso, curte minha página no face e a gente fala por lá de maneira mais informal, ok?

http://www.facebook.com/Doutor.Network

Abcs


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts