DNS Server · 3 min read · Feb 11, 2026
Instalación de un servidor DNS Ubuntu Hardy 8.04 LTS con BIND - Página 4
10 Instalar el servidor DNS
Ejecuta
apt-get install bind9Por razones de seguridad, queremos ejecutar BIND en chroot, así que tenemos que hacer los siguientes pasos:
/etc/init.d/bind9 stopEdita el archivo /etc/default/bind9 para que el demonio se ejecute como el usuario no privilegiado bind, chrooted a /var/lib/named. Modifica la línea: OPTIONS=”-u bind” para que se lea OPTIONS=”-u bind -t /var/lib/named”:
vi /etc/default/bind9| OPTIONS="-u bind -t /var/lib/named" # Establecer RESOLVCONF=no para no ejecutar resolvconf RESOLVCONF=yes |
Crea los directorios necesarios bajo /var/lib:
mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir -p /var/lib/named/var/run/bind/runLuego mueve el directorio de configuración de /etc a /var/lib/named/etc:
mv /etc/bind /var/lib/named/etcCrea un enlace simbólico al nuevo directorio de configuración desde la antigua ubicación (para evitar problemas cuando bind se actualice en el futuro):
ln -s /var/lib/named/etc/bind /etc/bindCrea dispositivos nulos y aleatorios, y corrige los permisos de los directorios:
mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bindNecesitamos modificar /etc/default/syslogd para que aún podamos obtener mensajes importantes registrados en los registros del sistema. Modifica la línea: SYSLOGD=”” para que se lea: SYSLOGD=”-a /var/lib/named/dev/log”:
vi /etc/default/syslogd| # # Archivo de configuración principal para syslogd # # La documentación completa de los posibles argumentos se encuentra en la página del manual # syslogd(8). # # Para el registro remoto por UDP, usa SYSLOGD="-r" # SYSLOGD="-a /var/lib/named/dev/log" |
Reinicia el demonio de registro:
/etc/init.d/sysklogd restartInicia BIND y verifica /var/log/syslog en busca de errores:
/etc/init.d/bind9 start11 Configurar BIND
Ahora el archivo de configuración principal en BIND se llama named.conf, sin embargo named.conf.local ya está incluido en named.conf y está allí para la configuración personalizada, así que editaremos named.conf.local y agregaremos nuestras zonas, aquí agregué una zona llamada tm.local así como una zona inversa para 192.168.0.0:
vi /etc/bind/named.conf.local| zone "tm.local" { type master; file "/etc/bind/zones/tm.local.db"; }; zone "3.13.10.in-addr.arpa" { type master; file "/etc/bind/zones/rev.0.168.192.in-addr.arpa"; }; |
Ten en cuenta que si deseas agregar un comentario en named.conf o named.conf.local usa //, también puedes ver arriba que el archivo de zona para tm.local se llama tm.local.db y se encuentra en /etc/bind/zone, lo más importante es que el archivo de zona utiliza; como prefijo para un comentario y no //, ya que vi confusiones en muchos foros, así que pensé en agregarlo aquí - (lo mismo para la zona inversa).
12 Configurar las Zonas
Comenzaremos con la zona tm.local
mkdir /etc/bind/zonesvi /etc/bind/zones/tm.local.db| $TTL 1500 @ IN SOA server1.tm.local. root ( 2007062703 ;serial 28800 ;refresh 3600 ;retry 604800 ;expire 38400 ) ;minimum 25 minutes tm.local. IN NS server1.tm.local. server1 IN A 192.168.0.100 webserver1 IN A 192.168.0.103 webserver2 IN A 192.168.0.104 loadb1 IN A 192.168.0.101 loadb2 IN A 192.168.0.102 tm.local. IN MX 10 server1.tm.local. |
Siéntete libre de reemplazar el nombre de zona anterior (tm.local) o el nombre de tu servidor DNS (server1) según sea necesario, solo ten en cuenta el punto después del nombre de la zona.
Ahora vamos a continuar con la zona inversa.
vi /etc/bind/zones/rev.3.13.10.in-addr.arpa| $TTL 1500 @ IN SOA server1.tm.local. root ( 2007062703 ;serial 28800 ;refresh 3600 ;retry 604800 ;expire 38400 ) ;minimum 25 minutes IN NS server1.tm.local. 100 IN PTR server1.tm.local. 103 IN PTR webserver1.tm.local. 104 IN PTR webserver2.tm.local. 101 IN PTR load1.tm.local. 102 IN PTR load2.tm.local. |
Ahora configura el servidor para que reenvíe cualquier solicitud a tu servidor ISP para que pueda resolver IPs externas.
vi /etc/bind/named.conf.optionsDescomenta la sección de reenvío para que se vea así:
| forwarders { # Reemplaza la dirección a continuación con la dirección de tu servidor DNS ISP 123.123.123.123; }; |
13 Configurar el servidor para usarlo como DNS
vi /etc/resolv.conf| search tm.local nameserver 192.168.0.100 |
14 Referencias y Fuentes
- Artículo de Falko “El servidor perfecto - Ubuntu Hardy Heron (Servidor Ubuntu 8.04 LTS)”
- BIND en Ubuntu “ Cómo: Configurar un servidor DNS con bind “
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.