Configurar el servidor DNS junto a un dominio
Enero 03, 09 by ItimagHace unos días vimos como instalar un servidor de DNS en nuestro equipo o servidor y ahora toca ver como se configura para que éste sea capaz de resolver nuestros dominios.
Supongamos que tenemos el dominio itimag.net y queremos configurarlo en nuestro servidor de tal forma que este mismo resuelva el dominios y que además tenga las entradas DNS primaria y secundária que nosotros mismos personalizaremos (en mi caso ns1.itimag.net para la primaria y ns2.itimag.net para la secundária).
Cuando hablo de dns primarias y secundarias, me refiero a aquellas que podemos modificar desde el panel de administración de dominios que nos ofrece nuestro agente registrador. Por ejemplo, en OVH es este: 
Como observamos en la imagen, los DNS asociados a itimag.net son ns1.itimag.net y ns2.itimag.net. Pues bien, vamos a ver como configurar esto en nuestro servidor con la finalidad de que en el whois del dominio, aparezca ns1.itimag.net y ns2.itimag.net en vez de la IP xxx.xxx.xxx.xxx.
Como se observa en la imagen, los dos DNS (ns1.itimag.net y ns2.itimag.net) apuntan a distintas IP. Ambas IP están configuradas en el mismo equipo. No es precisamente así como debería estar ya que en caso de que el servidor falle, fallarían los 2 nombres de dominio y, por consiguiente, nadie podrá acceder al dominio o dominios configurados con estos servidores DNS.
En caso de que tu servidor disponga de una única ip, también puedes seguir el proceso que aquí se explica.
Pasemos a la acción:
- Accedemos al servidor por ssh y dirigirnos al directorio /etc/bind/
- Para ver todos los ficheros de este directorio utilizamos el comando ls:
- Editamos el fichero /etc/bind/named.conf.local
- Añadimos las siguientes zonas al fichero:
- Ahora vamos crear los ficheros /etc/bind/ns1.itimag.net y /etc/bind/ns2.itimag.net :
- Creamos el fichero /etc/bind/pri.xxx.xxx.xxx.in-addr.arpa para la zona inversa:
ssh user@xxx.xxx.xxx.xxx -p puerto cd /etc/bind
lsnano /etc/bind/named.conf.local
zone "ns1.itimag.net" {
type master;
file "/etc/bind/ns1.itimag.net";
allow-transfer {87.98.xxx.xxx; }; // Tu segunda IP
};
zone "ns2.itimag.net" {
type master;
file "/etc/bind/ns2.itimag.net";
};
// La zona inversa
zone "xxx.xxx.xxx.in-addr.arpa" {
type master;
file "/etc/bind/pri.xxx.xxx.xxx.in-addr.arpa";
};Nota: Debes substituir el nombre de dominio (itimag.net) por el tuyo y en el allow transfer insertar la segunda ip de tu equipo (o la ip del DNS secundario externo en caso de no tener segunda ip).
El nombre de la zona inversa viene determinado por nuestra ip de tal forma que la zona inversa para la ip 10.11.12.13 sería “12.11.10.in-addr.arpa”
Guardamos el fichero y salimos, pulsando “ctrl + o” y “ctrol+x”.
nano /etc/bind/ns1.itimag.net
El fichero resultante debe ser algo como esto:
$ttl 86400 @ IN SOA ns1.itimag.net. root.localhost. ( 2008092401; serial-no 28800; refresh, seconds 7200; retry, seconds 604800; expiry, seconds 86400 ); minimum-TTL, seconds ; ns1.itimag.net. IN NS ns1.itimag.net ns1.itimag.net. IN A 213.251.xxx.xxx
Nota: Debes substituir cada ns1.itimag.net por tu ns1.dominio.com. Debes substituir la línea que contiene el serial-no siguiendo la siguiente norma:
Año Mes Día ID 2008 09 24 01; serial-no
Los cuatro primeros dígitos corresponden al año. Los dos siguientes al mes. Los dos siguientes al día y los 2 restantes hacen referencia a un identificador que indica la versión del fichero (cada vez que modificamos el fichero, debemos incrementar en una unidad el ID). También debes substituir la IP 213.251.xxx.xxx con la ip de tu servidor.
Creamos el segundo fichero:
nano /etc/bind/ns2.itimag.net
Contendrá lo siguiente:
$ttl 86400 @ IN SOA ns2.itimag.net. root.localhost. ( 2008092401; serial-no 28800; refresh, seconds 7200; retry, seconds 604800; expiry, seconds 86400 ); minimum-TTL, seconds ; ns2.itimag.net. IN NS ns2.itimag.net ns2.itimag.net. IN A 87.98.xxx.xxx
Nota: Debemos de realizar los mismos cambios que en el fichero anterior. Modificamos el fichero /etc/resolv.conf para añadir nuestro dominio y las ip’s de nuestro servidor o servidores dns.
nano /etc/bind/pri.xxx.xxx.xxx.in-addr.arpa
Debe quedar algo como esto:
$ttl 86400 @ IN SOA mi_dominio.com. root.localhost. ( 2008071901; serial-no 28800; refresh, seconds 7200; retry, seconds 604800; expiry, seconds 86400 ); minimum-TTL, seconds ; NS ns1.mi_dominio.com.; NS ns.kimsufi.com.; xxx PTR mi_dominio.com.
Nota: El xxx corresponde con los últimos tres dígitos (o menos) de tu ip. El serial-no corresponde con la fecha actual: en este caso año 2008, mes 07, día 19, identificador 01. Cada vez que modifiquemos el fichero debemos aumentar en una unidad el identificador.
Configuración del dominio:
- Añadimos el dominio a configurar insertando la siguiente linea:
- Obsevemos que la ip de nuestro servidor se encuentra ya insertada en una linea como esta:
- Modificamos el fichero /etc/bind/named.conf.local y le añadimos la zona para nuestro dominio:
- Creamos el ficgero /etc/bind/pri.mi_dominio.com
- Forzamos bind a actualizar las zonas:
- Ahora podemos observar si se han producido errores observando los logs del demonio ejecutando el siguiente comando:
search mi_dominio.com
nameserver tu_ip
Ejemplo de configuración:
search mi_dominio.com nameserver 127.0.0.1 nameserver 213.251.xxx.xx
zone "mi_dominio.com" {
type master;
file "/etc/bind/pri.mi_dominio.com";
allow-transfer {213.186.33.199; };
};nano /etc/bind/pri.mi_dominio.com
Debe quedar algo como esto:
$ttl 86400 @ IN SOA ns1.mi_dominio.com. root.localhost. ( 2008092201; serial-no 28800; refresh, seconds 7200; retry, seconds 604800; expiry, seconds 86400 ); minimum-TTL, seconds ; NS xxx.xxx.xxx.xxx ; NS ns.ns.kimsufi.com. ; MX 10 mail.mi_dominio.com.; mi_dominio.com. A xxx.xxx.xxx.xxx www A xxx.xxx.xxx.xxx ns1 A xxx.xxx.xxx.xxx mail A xxx.xxx.xxx.xxx mi_dominio.com. TXT "v=spf1 a mx ~all" mi_dominio.com. TXT "v=spf1 a -all"
Nota: Debemos substituir las xxx.xxx.xxx.xxx por la ip donde va a apuntar al dominio
/etc/init.d/bind9 force-reload
less /var/log/daemon.log