8.6 Configuración del servidor DNS

El servidor puede configurarse para ofrecer servicio de tres formas diferentes:

Servidor primario:
Si almacena los registros de resolución para los hosts del dominio para el cual dicho servidor DNS es servidor primario. Los servidores DNS primarios también se denominan servidores DNS autorizados.
Servidor secundario:
Si hace una copia de los registros de otro servidor primario.
Servidor sólo caché:
Cuando no almacena ningún registro, excepto los adquiridos en las consultas.

La primera configuración es la que utilizaría el administrador de una nueva red que desea que sus hosts tengan nombres de dominio asignados. En dicha configuración se generarían los registros de resolución para cada uno de estos hosts y el servidor DNS del ISP debería tener en cuenta el servidor DNS primario instalado ya que pasa a ser el servidor DNS autorizado para el dominio que se ha creado. Por desgracia, esto último es normalmente difícil llevarlo a la práctica por motivos de seguridad por lo que en esta ocasión no vamos a instalar un servidor DNS primario. Sin embargo, bastaría con modificar el fichero de configuración correspondiente y construir los registros DNS utilizando alguna herramienta como system-config-bind de Red Hat Linux.

La segunda configuración sirve para aumentar la fiabilidad del DNS ya que permite replicar los registros de resolución. Así, si el primario falla, el otro podría estar disponible. Por ejemplo, en la Universidad de Almería hay un servidor DNS primario (filabres.ual.es, 150.214.156.2) y otro secundario (150.214.35.10). Instalar un servidor DNS secundario plantea los mismos problemas de seguridad que instalar uno primario y además, una replicación sin control constituye un buen ataque por denegación de servicio. Por estos motivos, desistiremos de realizar dicha opción.

Finalmente, la tercera y última configuración, en la que instalamos un servidor DNS que funciona en realidad como un proxy DNS, sí que es posible en cualquier situación y tiene sentido si queremos reducir el tráfico a través del gateway de la red y el tiempo de resolución para las máquinas a las que servimos. Por suerte, esta configuración es la que por defecto se instala con BIND.

8.6.1 Configuración como servidor caché

Como hemos indicado anteriormente, en principio no es necesario hacer ninguna modificación en el fichero named.conf para conseguir que el servidor DNS funcione como una proxy DNS. Sin embargo, sí que vamos a hacer un pequeño cambio para que BIND utilice los servidores DNS más próximos cuando la caché falle. Para evitar esto hay que modificar el fichero named.conf insertando el código:

forward first;  
forwarders {  
  150.214.156.2;  
  150.214.35.10;  
};

en su sección options. Veamos exactamente qué hacer en cada distribución:

Debian Linux:
La instalación de bind crea el fichero /etc/bind/named.conf y otros dos ficheros asociados /etc/bind/named.conf.local y /etc/bind/named.conf.options. El código anterior debe insertarse en este último fichero.
Fedora Core Linux:
El fichero que configura el servidor es /etc/named.conf. Para configurarlo como un servidor DNS cache ejecutar:
root# system-config-bind # Salir sin hacer ninguna modificación

A continuación insertar el código anterior en el fichero.

Gentoo Linux:
La instalación de BIND crea el fichero /etc/bind/named.conf para que funcione como un DNS caché. Simplemente insertaremos el código anterior en este fichero.

Finalmente hay que modificar el fichero /etc/resolv.conf indicando que ahora es localhost el servidor DNS.

Taller 8.1:
Instale BIND y configurelo como servidor DNS caché.