Editado 3 Semanas atrás por ExtremeHow Equipe Editorial
DebianSistema de Nomes de DomíniosVincularRedesConfiguração do ServidorLinuxCódigo AbertoAdministração de SistemasInterface de Linha de ComandoTI
Tradução atualizada 3 Semanas atrás
DNS, que significa Sistema de Nomes de Domínio, é frequentemente chamado de agenda telefônica da Internet. Ele traduz nomes de domínio amigáveis como www.example.com em endereços IP como 192.0.2.1 que os computadores usam para se identificar na rede. BIND, que significa Berkeley Internet Name Domain, é um dos servidores DNS mais utilizados e é especialmente destacado em sistemas do tipo Unix, como o Debian.
Neste guia, passaremos pelas etapas necessárias para instalar e configurar o servidor DNS BIND em um sistema baseado em Debian. Cobriremos o processo de instalação, configuração básica e algumas das tarefas essenciais necessárias para configurar um servidor DNS confiável.
Antes de você poder instalar o BIND no seu servidor Debian, você precisará do seguinte:
O BIND está disponível nos repositórios padrão do Debian, então você pode instalá-lo usando o gerenciador de pacotes apt. Siga as etapas abaixo para instalar o BIND no seu sistema.
sudo apt update
sudo apt install bind9 bind9utils bind9-doc -y
O pacote bind9utils
contém algumas utilidades de linha de comando úteis para interagir com servidores DNS, e bind9-doc
contém documentação que você pode achar útil.
Depois de instalar com sucesso o BIND, você precisará configurá-lo para funcionar como seu servidor DNS. Os arquivos de configuração do BIND geralmente estão localizados no diretório /etc/bind
.
O arquivo named.conf.options
contém opções globais de DNS. Abra este arquivo usando um editor de texto:
sudo nano /etc/bind/named.conf.options
Dentro deste arquivo, você encontrará uma seção chamada options. Dentro do bloco options { }
, você precisará definir algumas configurações-chave:
any
.any
.Aqui está um exemplo de configuração:
options { directory "/var/cache/bind"; forwarders { 8.8.8.8; 8.8.4.4; }; listen-on-v6 { any; }; allow-query { any; }; };
No Sistema de Nomes de Domínio, uma zona é um subconjunto do banco de dados DNS. Uma configuração típica do BIND envolve definir as zonas que você deseja gerenciar ou servir. Você definiria isso no arquivo named.conf.local
.
Abra o arquivo named.conf.local
:
sudo nano /etc/bind/named.conf.local
Neste arquivo, você configurará uma zona de pesquisa direta (nome para IP) e uma zona de pesquisa reversa (IP para nome). Aqui está um exemplo de ambas:
zone "example.com" { type master; file "/etc/bind/zones/db.example.com"; }; zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/zones/db.192"; };
Nesta configuração:
example.com
armazena os registros DNS para esse domínio.1.168.192.in-addr.arpa
converte endereços IP na faixa 192.168.1.xxx em nomes de domínio.Depois de configurar suas zonas no arquivo de configuração, é hora de criar os registros DNS reais nos arquivos de zona.
Crie um diretório para seus arquivos de zona:
sudo mkdir /etc/bind/zones
Agora, crie um arquivo de zona para sua zona de pesquisa direta:
sudo nano /etc/bind/zones/db.example.com
Aqui está um exemplo de um arquivo de zona de pesquisa direta. Ajuste os detalhes de acordo com seu domínio e configurações de IP:
$TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.example.com. ns1 IN A 192.168.1.1 www IN A 192.168.1.2 ;
Em seguida, crie um arquivo de zona para sua pesquisa reversa:
sudo nano /etc/bind/zones/db.192
E aqui está um exemplo de configuração de zona de pesquisa reversa:
$TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.example.com. 1 IN PTR ns1.example.com. 2 IN PTR www.example.com.
Após modificar a configuração e criar os arquivos de zona, é importante verificar se a sintaxe está correta antes de reiniciar o servidor BIND:
sudo named-checkconf
Também verifique os arquivos de zona:
sudo named-checkzone example.com /etc/bind/zones/db.example.com
Se os comandos acima retornarem sem erros, então seus arquivos de configuração estão configurados corretamente.
Após a configuração, inicie o serviço BIND e certifique-se de que ele seja executado em cada reinicialização do sistema:
sudo systemctl restart bind9
sudo systemctl enable bind9
Finalmente, teste seu servidor DNS para garantir que ele resolve consultas corretamente. Use o comando dig
para consultar seu servidor DNS. Certifique-se de que o endereço IP do seu servidor ou "localhost" esteja especificado como o servidor:
dig @localhost example.com
Este comando deve retornar um registro A para o domínio configurado. Você também pode testar uma pesquisa reversa:
dig @localhost -x 192.168.1.1
Seguindo essas etapas, você instalou e configurou um servidor DNS BIND funcional em um sistema baseado em Debian. Este servidor agora pode resolver e servir consultas DNS para os domínios e IPs que você configurou.
Lembre-se de que o servidor DNS BIND pode ser estendido para incluir configurações mais avançadas, como estratégias de cache, controles de acesso e configurações de zona mais complexas para implantações maiores.
Se você encontrar algo errado com o conteúdo do artigo, você pode