Por: Carlos Antonio Leal Saballos
El DNS es sin lugar a dudas uno de los servicios más importantes en el mundo de Internet. El DNS es por mucho el alma, nervio y músculo de Internet. Es un sistema que permite usar nombres de dominio en lugar de direcciones IP. La verdad es que un ser humano promedio será incapaz de recordar todos los números IP de todos los servidores que utiliza, no obstante, le resulta sencillo recordar los nombres de dominio.
Es muy importante configurar bien el servidor DNS para correr el servidor de correo con Zimbra adecuadamente. Especialmente la creación de los registros MX y SPF. En estas líneas voy a explicar el procedimiento para configurar un servidor DNS básico que permite funciona bien para un servidor Zimbra
Requisitos para configurar un servidor DNS
- Es posible que necesite también un servidor DHCP.
- Configurar adecuadamente los parámetros de red, en este caso se utiliza 192.168.56.10 para el servidor.
- Se debe definir apropiadamente el nombre del equipo y del dominio, en este caso el nombre del servidor es mail y utilizaremos los dominios hipotéticos ubuntu.edu.ni
- Tomar en cuenta que:
- Si el número IP del servidor es privado, entonces el dominio será privado.
- Al usar un IP público el dominio será público.
- En Nicaragua quien autoriza los dominios públicos es el nic.NI (http://www.nic.ni/)
- Tomar en cuenta que:
Paso 0 – Abrir un terminar y convertirse en super-usurio
cleal@tserver:~/Escritorio$ sudo -s Contraseña: root@tserver:~#
Paso 1 – Instalar el software necesario
apt-get update ; apt-get install bind9 dnsutils
Paso 2 – Copia de seguridad
Realizar una copia de respaldo del archivo de configuración original
cp /etc/bind/named.conf.local /etc/bind/named.conf.local.original
Paso 3 – Editar el archivo de configuración principal
nano /etc/bind/named.conf.local
Agregamos al final
zone "ubuntu.edu.ni" { type master; file "db.ubuntu.edu.ni.zone"; }; zone "56.168.192.in-addr.arpa" { type master; file "db.192.168.56"; };
Para asegurarnos que el archivo está bien
named-checkconf
Paso 4 – Crear los archivos de zona
Procedamos a crear los (nuevos) archivos de zona, esos archivos contienen los registros del DNS y en Ubuntu se encuentran en el directorio /var/cache/bind/
Creamos el archivo de la zona ubuntu.edu.ni
nano /var/cache/bind/db.ubuntu.edu.ni.zone
¿Aparece en blanco? ¡No importa! Lo dejamos así:
$ORIGIN ubuntu.edu.ni. $TTL 86400 ; 1 dia @ IN SOA ns.ubuntu.edu.ni. info.ubuntu.edu.ni. ( 2020042501 ; serie 6H ; refresco (6 horas) 1H ; reintentos (1 hora) 2W ; expira (2 semanas) 3H ; mínimo (3 horas) ) @ IN NS ns @ IN MX 10 mail @ IN A 192.168.56.10 ns IN A 192.168.56.10 mail IN A 192.168.56.10 www IN A 192.168.56.10 mail IN TXT "v=spf1 a mx a:ubuntu.edu.ni ip4:192.168.56.10 -all"
Vale la pena detectar errores en el archivo de zona
named-checkzone ubuntu.edu.ni /var/cache/bind/db.ubuntu.edu.ni.zone
Ahora la zona de búsqueda inversa
nano /var/cache/bind/db.192.168.56
¿Aparece en blanco? ¡No importa! Lo dejamos así:
$ORIGIN 56.168.192.in-addr.arpa. $TTL 86400 ; 1 dia @ IN SOA ns.ubuntu.edu.ni. info.ubuntu.edu.ni. ( 2020042501 ; serie 6H ; refresco (6 horas) 1H ; reintentos (1 hora) 2W ; expira (2 semanas) 3H ; mínimo (3 horas) ) @ IN NS ns.ubuntu.edu.ni. 10 IN PTR ns.ubuntu.edu.ni. 10 IN PTR mail.ubuntu.edu.ni. 10 IN PTR www.ubuntu.edu.ni.
También es se puede comprobar que la configuración esté bien con:
named-checkzone 56.168.192.in-addr.arpa /var/cache/bind/db.192.168.56
Paso 5 – Agregar el nuevo servidor DNS en la configuración de red de servidor
nano /etc/network/interfaces
agregamos una línea al final
dns-nameservers 192.168.56.10
Paso 6 – Re-iniciar el servicio
systemctl restart networking bind9
systemctl status networking bind9
Paso 7 – Editar el resolv.conf
nano /etc/resolv.conf
Nos aseguramos que nuestro servidor sea el primer DNS nameserver 192.168.56.10 nameserver 192.168.8.1
Paso 8 – Probar la configuración desde el servidor
Con el dominio interno nslookup ubuntu.edu.ni Server: 192.168.56.10 Address: 192.168.10.10#53 Name: ubuntu.edu.ni Address: 192.168.56.10 Con un dominio externo root@tserver:/var/cache/bind# nslookup google.com.ni Server: 192.168.8.1 Address: 192.168.8.1#53
Non-authoritative answer:
Name: google.com.ni
Address: 172.217.2.195
root@tserver:/var/cache/bind#