Archivo de la categoría: Bind
Enjaulando Bind
Introducción
Buenas a todos. Hoy vamos a ver cómo enjaular Bind en Ubuntu. Bind es un servidor DNS muy usado en internet, concretamene en máquinas cuyos sistemas operativos están basados en Unix. Fue creado por cuatro estudiantes en la University of California. Actualmente se encuentra en su versión 9.
¿Enjaular?
El proceso de enjaular un servicio o usuario en Linux se realiza para evitar intrusiones no deseadas en un sistema, de modo que si alquien consiguiera burlar la seguridad de nuestro sistema y entrar, sólo se vería afectada la zona de enjaulamiento.
Instalando Bind
Lo primero que hay que hacer es instalar Bind en nuestra máquina, así que en un terminal escribimos:
sudo aptitude install bind9 dnsutils
Cuando ya tenemos Bind instalado, detenemos el servicio:
sudo /etc/init.d/bind9 stop
Configurando Bind y creando directorios de enjaulamiento
Ahora vamos a indicarle a Bind de dónde debe coger los archivos de configuración, desde el terminal:
sudo gedit /etc/default/bind9
Una vez con el archivo abierto, esto será lo que veamos:
Añadimos lo siguiente a la línea indicada:
- t /var/lib/named
Guardamos los cambios y vamos a crear ahora los directorios que almacenarán los archivos de configuración de Bind, desde el terminal:
sudo mkdir /var/lib/named
Creamos también los siguientes directorios:
sudo mkdir /var/lib/named/dev
sudo mkdir /var/lib/named/etc
sudo mkdir /var/lib/named/var/cache/bind
sudo mkdir /var/lib/named/var/run/bind/run
Ahora movemos los archivos de configuración de Bind a los directorios que hemos creado:
sudo mv /etc/bind /var/lib/named/etc
Ahora creamos un enlace simbólico que vaya desde /etc/bind a /var/lib/named/etc
sudo ln -s /var/lib/named/etc /etc/bind
Una vez creado el enlace simbólico, vamos a crear los dispositivos null y random con el comando mknod. Desde el terminal:
sudo mknod /var/lib/named/dev/null c 1 3
sudo mknod /var/lib/named/dev/random c 1 8
Asignando los permisos
Ahora tenemos que configurar los permidos de ejecución y hacer a Bind propietario de los directorios /var/lib/named/etc y /var/lib/named/var/*.
Empezamos con los permisos, desde el terminal escribimos:
sudo chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
Y ahora hacemos a Bind propietario de los directorios:
sudo chown -R bind:bind /var/lib/named/var/*
sudo chown -R bind:bind /var/lib/named/etc/bind
Editando el fichero resolv.conf
Vamos ahora a editar el fichero /etc/resolv.conf para añadir nuestra máquina cómo servidor DNS encargado de resolver las direcciones. En un terminal escribimos:
sudo gedit /etc/resolv.conf
Una vez con el archivo abierto, comentamos las direcciones que aparezcan y añadimos la dirección IP de nuestra máquina, de forma que quede más o menos así:
En mi caso, tenía para resolver las direcciones la propia dirección del router bajo el que me encuentro.
Ahora reiniciamos la red para que los cambios surtan efecto, desde el terminal escribimos:
sudo /etc/init.d/networking restart
Ahora mismo, si hacemos un ping a Google nos responderá esto:
Esto se debe a que el servicio de Bind está parado, y sólo está nuesta máquina para resolver las direcciones. Iniciamos Bind:
sudo /etc/init.d/bind9 start
Esto se debe a que el servicio apparmor no nos permite iniciar Bind ya que este no tiene permiso para acceder a /var/lib/named
Configurando los permisos de apparmor
Vamos a configurar los permisos de apparmor, para que Bind pueda tener acceso a /var/lib/named. En primer lugar paramos el servicio de apparmor, desde el terminal tecleamos:
sudo /etc/init.d/apparmor stop
Ahora vamos a editar la configuración de apparmor, escribimos en un terminal lo siguiente:
sudo gedit /etc/apparmor.d/usr.sbin.named
Una vez con el archivo abierto, comentamos las siguientes líneas:
#/var/run/named/named.pid w, # support for resolvconf #/var/run/named/named.options r,
Ahora nos vamos hacia el final del archivo, y añadimos las siguientes líneas:
/var/lib/named/etc/bind/* rw, /var/lib/named/etc/bind/zones/* rw, /var/cache/bind/* rw, /var/lib/named/var/run/bind/run/named.pid w, /var/lib/named/var/run/bind/named/options r, /var/lib/named/dev/null rw, /var/lib/named/dev/random rw,
Iniciando apparmor y Bind
Ya está todo configurado, ya sólo queda iniciar apparmor y Bind, desde el terminar escribimos:
sudo /etc/init.d/apparmor start
sudo /etc/init.d/bind9 start
Ya sólo queda hacer un ping a Google para comprobar si obtenemos respuesta o no, desde el terminal escribimos:
ping google.es

























