info_i_25x25.png See important information about Ubiquiti Devices and KRACK Vulnerability in this article. We will update this document as more information becomes available.

EdgeMAX - instalar y configurar servidor DNS BIND en el Router

Resumen


Los lectores aprenderán las instrucciones sobre cómo conseguir atar trabajando en EdgeOS. BIND es un paquete de software DNS que es ampliamente utilizado, especialmente en Internet.

Estas instrucciones incluyen secuencias de comandos para automatizar la reinstalación y configuración después de una actualización de firmware.

Se recomienda que los lectores estar cómodos con SSH, SFTP, solución de problemas DNS con dig en Linux y comandos de Linux. Usé masilla a SSH en el ERL, Filezilla para subir los archivos y cavar en el ERL para solucionar problemas del servidor DNS. Prefiero nano vi como un editor de texto, así que lo instalé. Si desea usar vi, omita el paso 2 y sustituya "nano" con "vi".

Pasos


1. Añadir repositorios de Debian a la EdgeRouter. SSH en el router y ejecutar:

configure
set system package repository squeeze components 'main contrib non-free'
set system package repository squeeze distribution squeeze
set system package repository squeeze url http://http.us.debian.org/debian

set system package repository squeeze-security components main
set system package repository squeeze-security distribution squeeze/updates
set system package repository squeeze-security url http://security.debian.org
commit
save
exit

2. Instale el editor de texto nano.

sudo apt-get update
sudo apt-get install nano

3. Instale el servidor de DNS BIND y dnsutils. (Incluye excavación)

sudo apt-get install bind9 dnsutils

4. editar la ubicación de los archivos config.

Si no cambia la situación, después de cada actualización de firmware perderás les. Les pasamos a /config que obtiene copiado y respaldo.

sudo nano /etc/bind/named.conf

Cambiar las rutas de acceso a los siguientes y guarde el archivo: incluyen "/ config/bind/named.conf.options"; incluyen "/ config/bind/named.conf.local"; incluyen "/ config/bind/named.conf.default-zones";

5. crear el directorio para archivos de configuración de BIND DNS y copiarlos al directorio nuevo.

mkdir /config/bind

sudo cp /etc/bind/named.conf /config/bind/named.conf
sudo cp /etc/bind/named.conf.options /config/bind/named.conf.options
sudo cp /etc/bind/named.conf.local /config/bind/named.conf.local
sudo cp /etc/bind/named.conf.default-zones /config/bind/named.conf.default-zones

6. crear los archivos de zona y configurarlos.

Ver https://help.Ubuntu.com/lts/serverguide/DNS-configuration.html para la documentación. Asegúrese de guardarlos en /config/bind /, no/etc/bind /.

  7. startup script

Por cualquier motivo, lazo trabajaría hasta que hice una excavación en la ERL y luego funciono bien. Esta copia también el archivo config que apunta a los archivos de configuración en /config/bind. Esto es necesario para cuando nuevo firmware se actualiza. Lo que hice fue crear un archivo "start_dns.sh" en /config/scripts/post-config.d/ que contiene estas líneas:

#!/bin/bash 
sudo service bind9 stop
sleep 5 
sudo cp /config/bind/named.conf /etc/bind/named.conf 
sudo service bind9 start 
sleep 5 
dig google.ca @127.0.0.1 
exit

Te recomiendo crear esto en el router sólo mediante el comando

sudo nano /config/scripts/post-config.d/start_dns.sh

Copiar/pegar o escribir esas líneas y guarde el archivo. Si crea el archivo en Windows, asegúrese de ejecutar dos2unix <filename> o de lo contrario tendrá problemas con la codificación de caracteres. Ahora establecer los permisos adecuados y permitir que se ejecute como un archivo ejecutable:

sudo chmod 777 /config/scripts/post-config.d/start_dns.sh
sudo chmod +x /config/scripts/post-config.d/start_dns.sh

8. prueba lazo.

Ahora debería funcionar BIND. Prueba en un cliente apuntando sus DNS al router y haciendo un dig o nslookup en un registro en una de las zonas de dominio que creó anteriormente. Si usted quiere probar localmente en el router, utilice:

dig google.ca @127.0.0.1
dig example.com @127.0.0.1

(Donde example.com es una zona que ha agregado).

9. LAZO automático vuelva a instalar después de actualizar el firmware.

Ahora tenemos que configurarlo para volver a instalar BIND después de una actualización de firmware. Similar al anterior, tenemos que crear un script de arranque que se instala los paquetes que necesitamos. No necesitamos re añadir los repositorios que están almacenados en la configuración.

sudo nano /config/scripts/post-config.d/install_packages.sh

Contenido del script:

#!/bin/bash
doneit='/var/lib/my_packages'
packages='dnsutils bind9'

if [ -e $doneit ]; then
exit 0;
fi

sudo dpkg --configure -a
apt-get update
apt-get install -y $packages
if [ $? == 0 ]; then
 echo package install successful
 touch $doneit
else
 echo package install failed
fi
exit 0

Ahora edita los permisos:

sudo chmod 777 /config/scripts/post-config.d/install_packages.sh
sudo chmod +x /config/scripts/post-config.d/install_packages.sh

10. Pruebe el arranque script(s).

Reiniciar tu router y asegúrese de que el servicio BIND surge y funciona en los clientes.

Hecho!

Notas de la


Puede ser necesario reiniciar dos veces después de una actualización de firmware para ambos scripts para pasar completamente. He probado esto con una actualización de firmware y encontrado algunos temas que arreglado, pero aún tiene a prueba numerosas veces a través de actualizaciones. Podré actualizar/modificar más que hacer más pruebas.