Editado 3 Hace unas semanas por ExtremeHow Equipo Editorial
DebianDNSEnlazarRedesConfiguración del servidorLinuxCódigo abiertoAdministración de sistemasInterfaz de línea de comandosTI
Traducción actualizada 3 Hace unas semanas
DNS, que significa Sistema de Nombres de Dominio, a menudo se llama la guía telefónica de Internet. Traduce nombres de dominio amigables para los humanos como www.example.com en direcciones IP como 192.0.2.1 que las computadoras utilizan para identificarse entre sí en la red. BIND, que significa Berkeley Internet Name Domain, es uno de los servidores DNS más utilizados y es especialmente prominente en sistemas similares a Unix como Debian.
En esta guía, pasaremos por los pasos necesarios para instalar y configurar el servidor BIND DNS en un sistema basado en Debian. Cubriremos el proceso de instalación, la configuración básica y algunas de las tareas esenciales necesarias para configurar un servidor DNS confiable.
Antes de poder instalar BIND en su servidor Debian, necesitará lo siguiente:
BIND está disponible en los repositorios predeterminados de Debian, por lo que puede instalarlo usando el gestor de paquetes apt. Siga los pasos a continuación para instalar BIND en su sistema.
sudo apt update
sudo apt install bind9 bind9utils bind9-doc -y
El paquete bind9utils
contiene algunas utilidades útiles de línea de comandos para interactuar con los servidores DNS, y bind9-doc
contiene documentación que puede encontrar útil.
Después de haber instalado BIND correctamente, necesitará configurarlo para que funcione como su servidor DNS. Los archivos de configuración de BIND generalmente se encuentran en el directorio /etc/bind
.
El archivo named.conf.options
contiene opciones globales de DNS. Abra este archivo usando un editor de texto:
sudo nano /etc/bind/named.conf.options
Dentro de este archivo, encontrará una sección llamada options. Dentro del bloque options { }
, deberá definir algunas configuraciones clave:
any
.any
.Aquí hay un ejemplo de configuración:
options { directory "/var/cache/bind"; forwarders { 8.8.8.8; 8.8.4.4; }; listen-on-v6 { any; }; allow-query { any; }; };
En el Sistema de Nombres de Dominio, una zona es un subconjunto de la base de datos DNS. Una configuración típica de BIND implica definir las zonas que desea administrar o servir. Debe definir estas en el archivo named.conf.local
.
Abra el archivo named.conf.local
:
sudo nano /etc/bind/named.conf.local
En este archivo, configurará una zona de búsqueda directa (nombre a IP) y una zona de búsqueda inversa (IP a nombre). Aquí hay un ejemplo de ambas:
zone "example.com" { type master; file "/etc/bind/zones/db.example.com"; }; zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/zones/db.192"; };
En esta configuración:
example.com
almacena los registros DNS para ese dominio.1.168.192.in-addr.arpa
convierte direcciones IP en el rango 192.168.1.xxx a nombres de dominio.Una vez que tenga sus zonas configuradas en el archivo de configuración, es momento de crear los registros DNS reales en los archivos de zona.
Cree un directorio para sus archivos de zona:
sudo mkdir /etc/bind/zones
Ahora, cree un archivo de zona para su zona de búsqueda directa:
sudo nano /etc/bind/zones/db.example.com
Aquí hay un ejemplo de un archivo de zona de búsqueda directa. Ajuste los detalles de acuerdo con su dominio y configuraciones IP:
$TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.example.com. ns1 IN A 192.168.1.1 www IN A 192.168.1.2 ;
A continuación, cree un archivo de zona para su búsqueda inversa:
sudo nano /etc/bind/zones/db.192
Y aquí hay un ejemplo de configuración de zona de búsqueda inversa:
$TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.example.com. 1 IN PTR ns1.example.com. 2 IN PTR www.example.com.
Después de modificar la configuración y crear los archivos de zona, es importante verificar que la sintaxis sea correcta antes de reiniciar el servidor BIND:
sudo named-checkconf
También verifique los archivos de zona:
sudo named-checkzone example.com /etc/bind/zones/db.example.com
Si los comandos anteriores se ejecutan sin errores, sus archivos de configuración están configurados correctamente.
Después de la configuración, inicie el servicio BIND y asegúrese de que se ejecute en cada reinicio del sistema:
sudo systemctl restart bind9
sudo systemctl enable bind9
Finalmente, pruebe su servidor DNS para asegurarse de que resuelve las consultas correctamente. Use el comando dig
para consultar su servidor DNS. Asegúrese de que la dirección IP de su servidor o "localhost" esté especificada como el servidor:
dig @localhost example.com
Este comando debe devolver un registro A para el dominio configurado. También puede probar una búsqueda inversa:
dig @localhost -x 192.168.1.1
Siguiendo estos pasos, ha instalado y configurado un servidor BIND DNS funcional en un sistema basado en Debian. Este servidor ahora puede resolver y servir consultas DNS para los dominios y IPs que configuró.
Recuerde, el servidor BIND DNS se puede ampliar para incluir configuraciones más avanzadas como estrategias de caché, controles de acceso y configuraciones de zona más complejas para implementaciones mayores.
Si encuentras algo incorrecto en el contenido del artículo, puedes