GNU/Linux >> Tutoriales Linux >  >> Linux

Crear un servidor DNS

Este artículo describe cómo realizar las siguientes tareas:

  • Cree un servidor DNS de almacenamiento en caché.
  • Cree un servidor DNS de reenvío.
  • Instale y configure el servidor Bind DNS como un servidor DNS de almacenamiento en caché o de reenvío.

Crear un servidor DNS de almacenamiento en caché

Este tipo de servidor también se conoce como resolver porque maneja consultas recursivas y puede manejar el trabajo duro de rastrear datos DNS de otros servidores.

1. Instale el programa

El primer paso para implementar un servidor Bind DNS es instalar el software real.

sudo apt-get update
sudo apt-get install bind9 bind9utils bind9-doc

2. Configurar un servidor DNS de almacenamiento en caché

Para un servidor DNS de almacenamiento en caché, modifique solo las named.conf.options archivo.

Ejecute el siguiente comando para abrir este archivo en su editor de texto con sudo privilegios:

sudo nano named.conf.options

El archivo se parece al siguiente ejemplo:

options {
        directory "/var/cache/bind";

        dnssec-validation auto;

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

3. Configure una lista de direcciones IP o rangos de red de confianza

Arriba de las opciones bloque en el archivo, cree un nuevo bloque llamado acl . Cree una etiqueta para el grupo de ACL que está configurando. El siguiente ejemplo llama al grupo ACL rackspace :

acl rackspace {
};

options {
    . . .

Luego, enumere todas las direcciones IP y redes permitidas para usar este servidor DNS dentro de la acl bloquear.

acl rackspace {
    192.0.2.0/24;
    localhost;
    localnets;
};

options {
    . . .

Finalmente, configure las capacidades en las opciones bloquear. Dentro de este bloque, agregue las siguientes líneas:

options {
    directory "/var/cache/bind";

    recursion yes;
    allow-query { rackspace; };
    . . .

Cuando termine de hacer estos cambios, guarde y cierre el archivo.

Ahora ha creado un servidor DNS de almacenamiento en caché. Si este es el tipo de servidor que desea utilizar, continúe para comprobar sus archivos de configuración y reinicie el servicio.

Crear un servidor de reenvío

Utilice los siguientes pasos para reenviar el servidor DNS:

1. Configurar un servidor DNS de reenvío

Para su servidor de reenvío, comience con la configuración del servidor de almacenamiento en caché en la sección anterior. Las opciones.conf.nombradas El archivo debe tener un aspecto similar al siguiente ejemplo:

acl rackspace {
        192.0.2.0/24;
        localhost;
        localnets;
};

options {
        directory "/var/cache/bind";

        recursion yes;
        allow-query { rackspace; };

        dnssec-validation auto;

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

Nota: El servidor de reenvío aún brinda servicios recursivos al responder consultas para zonas para las que no tiene autoridad, por lo que debemos configurar una lista de servidores de almacenamiento en caché para reenviar nuestras solicitudes. Use la ACL para restringir su servidor DNS a una lista específica de clientes.

2. Configurar reenviadores

Crea un bloque llamado reenviadores , dentro de las opciones bloquear. Agregue las direcciones IP de los servidores de nombres recursivos a los que desea reenviar solicitudes. El siguiente ejemplo utiliza los servidores DNS públicos de Google (8.8.8.8 y 8.8.4.4 ):

. . .
options {
        directory "/var/cache/bind";

        recursion yes;
        allow-query { rackspace; };

        forwarders {
                8.8.8.8;
                8.8.4.4;
        };
        . . .

Luego configure el reenviar directiva para only porque este servidor necesita reenviar todas las solicitudes y no debe intentar resolverlas por sí mismo.

acl rackspace {
        192.0.2.0/24;
        localhost;
        localnets;
};

options {
        directory "/var/cache/bind";

        recursion yes;
        allow-query { rackspace; };

        forwarders {
                8.8.8.8;
                8.8.4.4;
        };
        forward only;

        dnssec-validation auto;

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

Cambiar la validación de dnssec y habilitar dnssec configuración a yes :

. . .
forward only;

dnssec-enable yes;
dnssec-validation yes;

auth-nxdomain no;    # conform to RFC1035
. . .

Ahora tiene un servidor DNS de reenvío en su lugar. Guarde y cierre el archivo.

Verifique sus archivos de configuración y reinicie el servicio

Use las siguientes instrucciones para verificar sus archivos de configuración y reiniciar el servicio:

1. Verifique los archivos de configuración

Utilice las herramientas de enlace para comprobar la sintaxis de sus archivos de configuración:

sudo named-checkconf

Si el proceso de revisión no encuentra errores de sintaxis, no aparece ningún resultado.

Si el archivo de configuración tiene errores de sintaxis, la salida muestra el error y el número de línea. Edite el archivo y corrija los errores.

Guarde y cierre el archivo cuando haya terminado. Vuelva a comprobar la sintaxis.

2. Reiniciar el servicio

Use el siguiente comando para reiniciar el demonio Bind para implementar sus cambios:

sudo service bind9 restart

Conclusión

Ahora debería tener un servidor DNS de almacenamiento en caché o de reenvío configurado para servir a sus clientes. Esta puede ser una excelente manera de acelerar las consultas de DNS para las máquinas que está administrando.

Use la pestaña Comentarios para hacer cualquier comentario o hacer preguntas. También puede iniciar una conversación con nosotros.


Linux
  1. Cómo crear un host virtual Nginx (bloque de servidor)

  2. ¿Servidor FTP básico de Ubuntu?

  3. Crear servidores en la nube de OnMetal

  4. Pitchfork:Crear servidor

  5. ¿Cómo simular el tiempo de espera de respuesta del servidor DNS?

Cómo crear un servidor de Minecraft en Ubuntu 20.04

Cómo crear un nuevo servidor en la nube de Atlantic.Net

Cómo crear una zona DNS en cPanel y WHM

Cómo configurar DNS en Windows Server 2012

Crear un servidor en la nube

Crear un servidor en la nube de propósito general