curso wireless

Servicio de nombre de dominio en linux DNS

En el capítulo siguiente, aprenderemos cómo manejar nombres de dominio para su servidor y para dominios virtuales que residan en su sistema. Por ahora, estableceremos una configuración mínima para BIND, el servidor DNS ubicuo. Debian ofrece una versión estable de BIND en sus repositorios. Nosotros instalaremos y configuraremos BIND y lo aseguraremos en un entorno chroot, es decir, donde no será posible acceder a los archivos que están fueran de su propio árbol de directorios. Esta es una técnica de seguridad importante. El término chroot se refiere al truco de cambiar el sistema de archivos raíz (el directorio /) que ve un proceso, por la que la mayor parte del sistema no puede acceder a él. También configuraremos BIND para ejecutarlo como un usuario que no sea root. De esta forma, si alguien consigue el acceso a BIND, no podrá obtener privilegios de root o ser capaz de controlar otros procesos. Para instalar BIND en su servidor Debian, ejecuta este comando:

# apt-get install bind9 Debian baja y configura el archivo como un servidor de Internet. Podrá ver el siguiente mensaje en su pantalla: Setting up bind9 (9.2.4-1) Adding group 'bind' (104) Done. Adding system user 'bind' Adding new user 'bind' (104) with group 'bind'. Not creating home directory. Starting domain ñame service: named.

Nota: Verá salidas similares cuando instale o elimine otros servicios con la utilidad apt-get. Para poner BIND en un entorno seguro, cree un directorio donde el servicio pueda ejecutarse sin tener que estar expuesto a los otros procesos. También podrá ejecutarlo como usuario sin privilegios, pero sólo el root podrá acceder al directorio. Primero pare el servicio ejecutando el siguiente comando:

# /etc/init.d/b±nd9 stop Edite el archivo /etc/def ault/bind9 por lo que el demonio se ejecutará como usuario sin privilegios, el directorio será /var/lib/named. Cambie la línea: OPTS="~u bind" para que ponga: OPTIONS="-u bind -t /var/lib/named" Para ofrecer un entorno completo para ejecutar BIND, cree los directorios necesarios en /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/run Luego, mueva el directorio config desde /etc a /var/lib/named/etc: # mv /etc/bind /var/lib/named/etc Ahora cree un enlace simbólico al nuevo directorio config desde la localización antigua, para evitar problemas cuando BIND se actualice en el futuro: # ln -s /var/lib/named/etc/bind /etc/bind Cree dispositivos nuil y random para que los use BIND y establezca los permisos de los directorios: # mknod /var/lib/named/dev/null c 1 3 # mknod /var/lib/named/dev/random c 1 8 Luego, cambie los permisos y la autoría de los archivos: # chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random # chown -R bind:blnd /var/lib/named/var/* # chown -R bindsbind /var/lib/named/etc/bind También necesitará cambiar el script de inicio /etc/init. d/sysklogd para que pueda ver mensajes en los logs del sistema. Cambie la línea: SYSL0GD="" para que ponga: SYSL0GD="-a /var/iib/named/dev/log" Ahora reinicie el proceso de logging con este comando: # /etc/init.d/sysklogd restart Verá el siguiente mensaje: Restarting system log daemon: syslogd. Finalmente, ejecute BIND: # /etc/init.d/bind9 start Compruebe /var/log/syslog por si hay errores. Puede moverse por eí archivo usando: # less /var/log/syslog Puede asegurarse que BIND se arrancó con éxito si puede ver: Starting domain ñame service: named. Ahora, comprobemos si named está funcionando sin problemas. Ejecute este comando, debería ver un resultado como el siguiente: serverl:/home/admin# rnde status number of zones: 6 debug level: 0 xfers running: 0 xfers deferred: 0 soa queries in progress: 0 query logging is OFF server is up and running serverl:/home/admin# Si DNS no está funcionando correctamente, en su lugar podrá ver algo como lo siguiente: serverlrnde status rnde: neither /etc/bind/rnde.conf ñor /etc/bind/rnde.key was found serverl:~#

Afortunadamente, nuestro sistema DNS está funcionando correctamente. Por el momento, no hemos configurado nuestros archivos de zona primaria ni hemos configurado DNS para que actúe como servidor caché, el cual almacena en caché cada visita a una página Web. Le mostraremos cómo configurar el servidor DNS primario y secundario en el capítulo siguiente. Aunque muchas personas creen que carece de importancia, administrar DNS es crucial porque muchos otros servicios dependen de él. Ya verá como DNS es un componente crítico de casi todos los servicios de Internet que su sistema ofrece.