Instalar y configurar un servidor BIND9 en Ubuntu Server 20.04
Bienvenido a este tutorial, donde aprenderás a instalar y configurar un servidor DNS en Ubuntu Server 20.04 a partir del terminal de Linux.
Este tutorial está realizado con la versión 20.04 (versión más actual en la fecha de este tutorial), pero también funciona perfectamente a partir de la versión 18.04 de Ubuntu Server.
# Contenidos
1. ¿Qué es un servidor DNS?
Un DNS es un sistema de nombres que toma nombres de dominio alfanuméricos y los convierte en direcciones IP numéricas. Esencialmente, los servidores de DNS actúan como traductores.
TUTORIAL RECOMENDADO PARA Ubuntu
Instalar Oracle 11g en Ubuntu 20.04
2. Instalación de Bind9
BIND es el servidor de nombres de dominio (DNS) más popular en Internet, que trabaja en todas las plataformas informáticas principales y se caracteriza por su flexibilidad y seguridad.
Para instalar Bind9 en nuestro servidor debemos de:
Ejecutar el siguiente comando para descargar los paquetes necesarios.
sudo apt install bind9 bind9-utils
¡Ya esta! Así de simple tenemos instalado nuestro servidor Bind9 en el servidor de Ubuntu 20.04
3. Configuración de Bind9
Una vez instalado BIND9, debemos de empezar a configurar nuestro servidor, para ello debemos de:
Entrar en el siguiente fichero de configuración con el editor nano.
sudo nano /etc/bind/named.conf.options
Dentro del fichero debemos de pegar el siguiente código:
acl internals {
127.0.0.1;
192.168.101.0/24; //ADAPTAR LOS 3 PRIMEROS OCTETOS DE SU IP
};
options {
directory "/var/cache/bind";
forwarders {
8.8.8.8;
8.8.4.4;
};
dnssec-validation auto;
//listen-on-v6 { any; };
};
En el fichero de configuración deberemos de adaptar la dirección IP de nuestro servidor (en mi caso es 192.168.101.0/24). Solo debemos cambiar los 3 primeros octetos de la IP (es decir, la IP tiene que contener la siguiente estructura: xxx.xxx.xxx.0).
Guardamos los cambios realizados (Ctrl + O) + Enter y salimos del documento (Ctrl + X).
Ahora entraremos en el siguiente fichero de configuración:
sudo nano /etc/bind/named.conf.local
Dentro del fichero pegamos el siguiente texto:
//
// Do any local configuration here
//
zone "flotadigital.com" {
type master;
file "/etc/bind/zones/db.flotadigital.com";
allow-transfer { internals; };
};
zone "101.168.192.in-addr.arpa" {
type master;
file "/etc/bind/zones/db.192.168.101";
allow-transfer { internals; };
};
// Consider adding the 1918 zones here, if they are not used in your
// organization
include "/etc/bind/zones.rfc1918";
En el fichero de configuración deberemos de adaptar los tres primeros octetos de la dirección IP de su servidor (en mi caso los tres primeros octetos son 192.168.101). IMPORTANTE: Para la configuración del DNS la IP se debe de colocar al revés, es decir empezando por el tercer octeto, luego el segundo y por último el primero.
Guardamos los cambios realizados (Ctrl + O) + Enter y salimos del documento (Ctrl + X).
Listo, ahora en la siguiente sección empezaremos a configurar la zona directa.
4. Configuración zona directa
Para configurar la zona directa debemos de:
Crear el siguiente directorio para las zonas del DNS.
sudo mkdir /etc/bind/zones
Dentro del directorio anterior, crearemos el siguiente fichero con nano:
sudo nano /etc/bind/zones/db.flotadigital.com
Pegamos el siguiente texto dentro del fichero.
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA ns1.flotadigital.com. root.flotadigital.com. (
20210222
; Serial
12h ; Refresh
15m ; Retry
3w ; Expire
2h ) ; Negative Cache TTL
;
//A PARTIR DE AQUÍ, DEBEMOS DE ADAPTAR NUESTROS REGISTROS
@ IN NS ns1.flotadigital.com.
@ IN A 192.168.101.60 //IP DEL CLIENTE
ns1 IN A 192.168.101.10 //IP DEL SERVIDOR
www IN CNAME flotadigital.com.
tester IN A 192.168.101.10 //IP DEL SERVIDOR
Dentro del fichero debemos de adaptar los registros DNS. Yo por ejemplo los he configurado así:
@ IN NS ns1.flotadigital.com.
@ IN A 192.168.101.60 //IP DEL CLIENTE
ns1 IN A 192.168.101.10 //IP DEL SERVIDOR
www IN CNAME flotadigital.com.
tester IN A 192.168.101.10 //IP DEL SERVIDOR
IMPORTANTE: Eliminar todos los comentarios para que funcione correctamente (todos los textos que tengas doble barra (//) en el documento).
Guardamos los cambios realizados (Ctrl + O) + Enter y salimos del documento (Ctrl + X).
Listo, ya tenemos la zona directa configurada de forma correcta. En la próxima sección aprenderás a configurar la zona inversa.
TUTORIAL RECOMENDADO PARA Ubuntu
Crear un servidor SSH con Ubuntu Server 20.04
5. Configuración zona inversa
Para configurar la zona inversa deberemos de:
Crear el siguiente directorio con el editor nano.
sudo nano /etc/bind/zones/db.192.168.101
Dentro del fichero pegamos el siguiente texto:
;
; BIND reverse data file for local loopback interface
;
$TTL 1d ;
@ IN SOA ns1.flotadigital.com root.flotadigital.com. (
20210222 ; Serial
12h ; Refresh
15m ; Retry
3w ; Expire
2h ) ; Negative Cache TTL
;
@ IN NS ns1.flotadigital.com.
10 IN PTR tester.flotadigital.com.
//El 10 lo debes de cambiar por el último octeto de la ip del servidor.
En el documento, solo debemos de cambiar el 10 (que está de color morado) por el último octeto de la ip de nuestro servidor.
Guardamos los cambios realizados (Ctrl + O) + Enter y salimos del documento (Ctrl + X).
Por último, debemos de reiniciar el servicio de BIND9
sudo systemctl restart bind9
Ya estaría, ya tenemos instaladas y configuradas ambas zonas en nuestro servidor DNS.
6. Probando el servidor DNS
Una vez instalado y configurado el servidor DNS, habrá que probar que funcione todo correctamente, para ello ejecutaremos los siguientes comandos:
Probar la zona directa
sudo named-checkzone flotadigital.com /etc/bind/zones/db.flotadigital.com
Debemos de escribir el dominio que hemos configurado (en mi caso flotadigital.com) y también deberás de personalizar el nombre de tu fichero de la zona directa (en mi caso es db.flotadigital.com).
Probar la zona inversa
sudo named-checkzone db.192.168.101.in-addr.arpa /etc/bind/zones/db.192.168.101
Debemos de escribir los tres primeros octetos de la ip de nuestro servidor (en mi caso 192.168.101) y también deberás de personalizar el nombre de tu fichero de la zona inversa (en mi caso es db.192.168.101).
7. Comprobar el servidor DNS
¡Ya tenemos nuestro servidor DNS funcionando! Ahora deberemos de conectarse con el servidor desde un cliente (en mi caso voy a conectarme desde un Windows), debemos de ir a la configuración del adaptador y en los DNS colocaremos la ip del servidor como se muestra en la siguiente imagen:
TUTORIAL RECOMENDADO PARA Ubuntu
Ficheros de registros o logs en Apache Ubuntu Server 20.04
Espero que hayas podido instalar y configurar el servidor DNS BIND9 en Ubuntu Server 20.04… Para cualquier duda puedes escribirme en el formulario de contacto pulsando aquí.
Un saludo Mab55
Marçal Alarcón Brugal
Soy Técnico en Desarrollo de Aplicaciones Web con más de 5 años de experiencia en el sector informático. En los últimos años, me he centrado en enseñar mis conocimientos de informática a través de cursos, tutoriales…