Uno de los roles más importantes dentro de todo el proceso de gestión y configuración de un servidor es el DNS (Domain Name System – Sistema de Nombres de Dominio) el cual nos permite traducir las direcciones IP a nombres de dominio y viceversa, de este modo es mucho más fácil tener presente Solvetic.com y no 178.33.118.246.
Este rol es fundamental para todo el proceso de transferencia de información y permite que como administradores y usuarios frecuentes de la red tengamos claridad qué sitios visitamos. En Linux, BID tiene la tarea de configurar y administrar los DNS py deberíamos comprobar que su versión es mayor que la 4 siendo lo ideal tener la 8 o 9. BIND está formado por tres partes o elementos: named, resolver library y pruebas del servidor.
Cuando se adquiere un servidor se debe tener dos servidores de nombres que estarán recogidos en el DNS. Cuando hacemos una petiticón web y necesitamos saber una dirección en una página web, BIND se encargará de hacer la petición resolviéndola, de ahí la parte resolver. BIND hace la petición para encontrar a través de la gestión del servidor DNS y dándonos como resultado el nombre de la página web.
Gracias a BIND podemos contar con una plataforma segura y estable que cumple a la perfección con todos los estándares de DNS.
Hoy este tutorial analizará cómo configurar este rol DNS en CentOS 7 de una forma práctica.
A continuación veremos cómo configurar e instalar este servidor DNS en CentOS 7 y de este modo comenzar a disfrutar al máximo de este importante rol.
1. Cómo instalar BIND9 en CentOS 7
Es importante validar que contamos con conectividad a la red, para esto podemos realizar un ping a cualquier sitio web:
En primer lugar actualizaremos todos los paquetes de CentOS 7 usando el siguiente comando:
yum update
Una vez concluya el proceso de actualización de CentOS, procedemos a instalar BIND y sus utilidades usando el comando yum, para ello ingresaremos el siguiente comando. Aceptamos la descarga y respectiva instalación de BIND y sus componentes.
yum install bind bind-utils
2. Cómo iniciar los servicios de BIND en CentOS 7
Una vez todos los paquetes de BIND hayan sido instalados procedemos a iniciar el respectivo servicio usando los siguientes comandos en su orden:
systemctl enable named systemctl start named systemctl status named
Podemos ver que el estado actual de BIND es activo y en ejecución. Si deseamos verificar la versión de BIND ejecutaremos el siguiente comando:
/usr/sbin/named –v
3. Cómo configurar el servidor DNS con BIND en CentOS 7
Con esto en mente iniciaremos la configuración del servidor DNS en CentOS 7.
El archivo de configuración de BIND lo encontramos en la ruta /etc/named.conf por lo cual debemos acceder a él usando el editor preferido, en este caso usaremos nano:
nano /etc/named.conf
En el archivo abierto realizaremos las siguientes tareas:
- Comentamos, con el símbolo #, las siguientes líneas:
listen-on port 53 { 127.0.0.1; }; listen-on-v6 port 53 { ::1; };
- Agregamos la dirección IP sobre la cual los equipos cliente consultarán el DNS, adicional podemos agregar la dirección IP de un segundo servidor en caso de tenerlo, usaremos las siguientes líneas:
allow-query { localhost;IP/Red; }; allow-transfer { Ip segundo servidor; };
- Guardamos los cambios usando la combinación de teclas
Ctrl + O
y salimos del editor usando las teclas:
Ctrl + X
4. Cómo crear las zonas de BIND en CentOS 7
Una vez definidos estos parámetros el siguiente paso será crear y configurar las respectivas zonas directa e inversa las cuales deben ser agregadas en el archivo named.conf.
Accedemos a dicho archivo usando el siguiente comando:
nano /etc/named.conf
Configuramos la primer zona de esta manera:
zone "solvetic.local" IN { type master; file "fwd. solvetic.local.db"; allow-update { none; }; };
Los parámetros configurados son:
- Solvetic.local: Nombre del dominio
- Master: Es el DNS primario
- fwd. solvetic.local.db: Indica la zona directa
- allow-update: Hace referencia al DNS primario.
Ahora agregamos las siguientes líneas para la zona inversa:
zone "10.168.192.in-addr.arpa" IN { type master; file "10.168.192.db"; allow-update { none; }; };
Guardamos los cambios usando la combinación de teclas siguiente:
Ctrl + O
5. Cómo crear los archivos de zona de BIND en CentOS 7
Hemos creado las zonas, ahora debemos crear los archivos de dichas zonas.
El primer archivo a crear será el de la zona directa, ejecutamos lo siguiente:
nano /var/named/fwd.solvetic.local.db
Esto creará un nuevo archivo donde ingresaremos lo siguiente:
$TTL 86400 @ IN SOA primary.solvetic.local. root. solvetic.local. ( 2016042112 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 43200 ;Minimum TTL ) ;Name Server Information @ IN NS primary. solvetic.local. ;IP address of Name Server primary IN A 192.168.0.11 ;Mail exchanger linux.local. IN MX 10 mail. solvetic.local. ;A - Record HostName To Ip Address www IN A 192.168.0.3 mail IN A 192.168.0.4 ;CNAME record ftp IN CNAME www. solvetic.local.
Los parámetros de dicho archivo son:
Guardamos los cambios y cerramos el editor. Ahora crearemos el archivo para la zona inversa ejecutando lo siguiente:
nano /var/named/0.168.192.db
En el archivo en blanco agregaremos lo siguiente. Después guardamos los cambios en el archivo y salimos del archivo.
$TTL 86400 @ IN SOA primary.solvetic.local. root. solvetic.local. ( 2014112511 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL ) ;Name Server Information @ IN NS primary. solvetic.local. ;Reverse lookup for Name Server 8 IN PTR primary. solvetic.local. ;PTR Record IP address to HostName 100 IN PTR www. solvetic.local. 150 IN PTR mail. solvetic.local.
6. Cómo reiniciar servicios de BIND en CentOS 7
Una vez configurados estos parámetros el siguiente paso será reiniciar los servicios para su respectiva aplicación.
Para ello ejecutaremos los siguientes comandos en su orden:
chmod 777 /var/named/fwd.solvetic.local.db chmod 777 /var/named/0.168.192.db systemctl restart named.service
Si deseamos consultar el estado del servicio ejecutaremos el siguiente comando. Podemos comprobar que su estado es activo y ejecutándose.
systemctl status named.service
7. Cómo Comprobar las zonas en los equipos cliente de BIND en CentOS 7
Ahora que BIND ha sido configurado resta configurar la maquina cliente para que tome el DNS y a través del resuelva las direcciones IP.
Para esto iniciamos sesión en algún maquina cliente, en este caso en Ubuntu, y accedemos al archivo
/etc/resolve.conf: nano /etc/resolve.conf
Allí agregaremos la siguiente sintaxis:
nameserver (Dirección IP del servidor DNS)
A continuación ejecutamos el siguiente comando para comprobar la zona directa:
dig www.solvetic.local
Ahora, para verificar la zona inversa ejecutaremos el siguiente comando:
dig -x (Ip de la maquina cliente)
8. Cambiar y configurar Hostname y dirección IP estática CentOS 7
Dentro de la configuración de servidores y redes debemos conocer diferentes aspectos para que el funcionamiento sea correcto. En primer lugar debemos poder configurar el hostname que es el nombre que se le puede configurar en un ordenador. Esto es bastante útil si estamos gestionando un servidor core en tareas como correspondencia dentro de una red. Hay que indicar que para que sea una disponibilidad válida el nombre del host debe incluir también la subzona donde se encuentra. A esto se le añade el nombre de dominio y junto formarían una FQDN, es decir, una dirección que pueda entender el usuario.
A la hora de configurar un hostname conseguiremos que sea identificarlo más fácilmente dentro de la red. También estableceremos una dirección IP estática si en CentOS 7 se van a desarrollar tareas relacionadas con DNS, DHCP o similares.
La dirección IP estática por su parte es la dirección identificativa para un ordenador en concreto. El nombre del host ayudaría a que pudiésemos identificar el nombre del equipo usando la dirección IP. El comando sería el siguiente (cambia ip adress por la dirección IP)
nslookup %ipaddress%
Recordemos la importancia de un servidor DNS en nuestra organización ya que sin el más de un usuario puede perder la cabeza aprendiendo direcciones IP en lugar de nombres de dominio. Si te interesa el tema de servidores en Linux, no te pierdas cómo instalar un servidor FTP en CentOS7.
Muy buen tutorial sobre DNS en CentOS. La parte de las zonas BIND era lo que buscaba estoy montando uno.