Um servidor DNS resolve nomes de domínio como exemplo.com para endereços IP como 192.168.2.10. Sem o servidor DNS, você teria que digitar o endereço IP diretamente se quisesse visitar exemplo.com, o que é obviamente muito difícil de lembrar.
Neste artigo, vou mostrar como instalar o BIND versão 9 (mais recente no momento em que este artigo foi escrito) e configurá-lo para resolver nomes de domínio de sua escolha no Ubuntu 18.04 LTS. Eu também vou te mostrar como usar escavação comando para testar a configuração DNS. Vamos começar.
Instalando BIND no Ubuntu 18.04 LTS:
BIND 9 está disponível no repositório oficial de pacotes do Ubuntu 18.04 LTS. Portanto, é muito fácil de instalar. Primeiro, atualize o cache do repositório de pacotes APT com o seguinte comando:
$ sudo apt update
O cache do repositório de pacotes APT deve ser atualizado.
Agora instale o BIND 9 com o seguinte comando:
$ sudo apt install bind9
Agora pressione y e então pressione
BIND 9 está instalado.
Agora execute o seguinte comando para verificar se o BIND foi instalado corretamente:
$ named -v
Configurando BIND 9:
Todos os arquivos de configuração do BIND 9 estão em / etc / bind e / var / cache / bind diretório.
Os principais arquivos de configuração são nomeado.conf, nomeado.conf.zonas padrão, nomeado.conf.local, e nomeado.conf.opções como marcado na imagem abaixo.
Você também cria muitos arquivos de zona em / var / cache / bind diretório. UMA arquivo de zona contém informações sobre um determinado nome de domínio e seus subdomínios. É um arquivo de texto simples.
Por exemplo, as informações sobre domínio / zona exemplo.com seria armazenado em formato de texto simples em um arquivo de zona, como db.exemplo.com dentro / var / cache / bind diretório.
Agora vou criar um arquivo de zona simples para exemplo.com e mostrar como configurar seus próprios nomes DNS com BIND 9.
Primeiro, navegue até o / var / cache / bind diretório com o seguinte comando:
$ cd / var / cache / bind
Agora, crie um novo arquivo db.exemplo.com e abra com nano editor de texto (se quiser acompanhar) com o seguinte comando:
$ sudo nano db.exemplo.com
Agora digite as seguintes linhas e salve o arquivo com
Agora execute o seguinte comando para verificar se você cometeu algum erro no arquivo de zona:
Exemplo de $ named-checkzone.com db.exemplo.comNOTA: aqui, exemplo.com é o nome do domínio e db.exemplo.com é o arquivo de zona para o nome de domínio exemplo.com.
Como você pode ver, o arquivo de zona db.exemplo.com é OK.
Agora você tem que dizer ao bind para carregar o arquivo de dados db.exemplo.com para a zona exemplo.com.
Para fazer isso, abra / etc / bind / named.conf.local arquivo com o seguinte comando:
$ sudo nano / etc / bind / named.conf.local
Agora adicione as seguintes linhas conforme marcado na imagem abaixo e salve o arquivo.
Agora reinicie o serviço BIND 9 com o seguinte comando:
$ sudo systemctl restart bind9
A nova zona deve ser carregada.
Testando a configuração do BIND 9 com dig:
dig é usado para fazer solicitações ao servidor DNS e mostrar os registros DNS de qualquer zona DNS.
Por exemplo, para listar todos os registros de exemplo.zona com que criamos anteriormente, execute o seguinte comando:
$ dig @ 192.168.11.51 exemplo.com qualquerNOTA: Aqui, @ 192.168.11.51 é usado para dizer ao dig para usar o servidor de nomes 192.168.11.51. Este é o endereço IP do meu computador onde o BIND 9 está sendo executado. Se você não sabe o endereço IP do seu computador, execute endereço de ip comando para ver o endereço IP do seu computador.
Como você pode ver na seção marcada da imagem abaixo, o BIND 9 pode resolver o exemplo.com nome de domínio para endereços IP corretamente.
Como você pode ver, também posso resolver www.exemplo.com usando meu próprio servidor DNS.
Configurando o servidor DNS primário no Ubuntu 18.04 LTS:
Ubuntu 18.04 LTS usa systemd-resolve para resolver nomes de host DNS. Ele também armazena em cache os resultados de DNS. Nesta seção, vou mostrar como definir seu próprio servidor DNS como o servidor DNS primário no Ubuntu 18.04 LTS usando systemd-resolve.
Primeiro, abra o arquivo de configuração do systemd-resolve com o seguinte comando:
$ sudo nano / etc / systemd / resolvido.conf
Agora, substitua # DNS = com DNS = IP_ADDR como mostrado na seção marcada da imagem abaixo. Aqui, IP_ADDR é o endereço IP do seu servidor BIND 9.
Agora salve o arquivo e reinicie o computador com o seguinte comando:
$ sudo reboot
Assim que o computador iniciar, execute o seguinte comando para verificar o servidor DNS primário:
$ systemd-resolve --status
Como você pode ver, o servidor DNS primário está configurado para 192.168.11.51, o que eu defini anteriormente.
Agora posso executar o dig sem dizer qual servidor DNS usar e ainda ser capaz de resolver o exemplo.com como você pode ver na imagem abaixo.
$ dig + noall + exemplo de resposta.com qualquer
Como você pode ver, também posso fazer ping www.exemplo.com.
Compreendendo o formato do arquivo de zona:
Agora que seu servidor DNS está funcionando, é hora de aprender mais sobre o arquivo de zona BIND 9.
O arquivo de zona db.exemplo.com define como um nome de domínio é resolvido e para qual IP ele é resolvido, servidores de e-mail de um domínio, servidores de nomes de um domínio e muito mais informações.
Em nosso arquivo de zona anterior, por exemplo.com, $ ORIGIN define um valor para o @ símbolo. Onde quer que você esteja @, será substituído pelo valor no $ ORIGIN, qual é exemplo.com.
NOTA: Não se esqueça do ponto (.) depois de exemplo.com, pois é necessário que o domínio seja FQDN (Fully Qualified Domain Name) e sem ele, o BIND não funcionará.
Se você não colocar um FQDN no arquivo de zona BIND, o valor de $ ORIGIN será anexado ao nome. Por exemplo, ns1 não é um FQDN. Então ns1 será ns1.exemplo.com. ($ ORIGIN anexado no final).
@ IN NS ns1 - define ns1.exemplo.com. como o servidor de nomes para esta zona.
ns1 IN A 192.168.11.51- define o endereço IP IPv4 192.168.11.51 para ns1.exemplo.com.
mail IN MX 10 mail - define o correio.exemplo.com. como o servidor de e-mail para esta zona.
correio IN A 192.168.11.51 - define o endereço IP IPv4 192.168.11.51 para correio.exemplo.com.
Então esse é o básico de como um arquivo de zona BIND funciona. Para obter mais informações, leia a documentação do BIND em https: // www.isc.org / downloads / bind / doc /
Obrigado por ler este artigo.