Dominios con TinyDNS

tinyDNS – Configurando y agregando dominios en Linux

0 Comments

[lwptoc title=”Contenido”]

En este articulo hablamos de como configurar dominios en TinyDNS, pero es la continuacion de Como instalar el servidor de nombres de dominio djbdns en Linux Debian/Ubuntu,

Usando el servicio dnscache

Para utilizar dnscache reemplazamos los servidores de nombres por la dirección local 127.0.0.1 en el archivo /etc/resolv.conf, esta dirección es donde dnscache está escuchando o esperando conexiones.

En las siguientes líneas haremos una copia del archivo y luego insertamos nuestro propio dominio:

cp /etc/resolv.conf /etc/resolv.conf.original
echo "domain example.com" > /etc/resolv.conf
echo "nameserver 127.0.0.1" >> /etc/resolv.conf

Ahora para hacer la prueba de la funcionalidad de dnscache, comprobamos al tratar de resolver un host remoto:

dnsip www.youtube.com

Si al ejecutar el comando anterior nos despliega un error como el siguiente, es debido a que no hemos instalado el software necesario.

The program 'dnsip' can be found in the following packages:
 * dbndns
 * djbdns
Try: sudo apt-get install <selected package>
bash: dnsip: command not found

Configuración de tinydns

Todos los registros de tinydns están guardados en el archivo /service/tinydns/root/data. Este archivo puede ser editado a mano, o con la utilización de los scripts en el directorio /service/tinydns/root (add-ns, add-host, add-alias).

Creación de registros de dominio en tinydns

Procederemos a crear los registros para el dominio, para utilizar los scripts de tinydns debemos ingresar al directorio:

cd /service/tinydns/root

Ahora quiero que este servidor con la direccion IP 192.168.1.1 sea el servidor de nombres para el dominio, ejecutamos desde la consola de linux:

./add-ns midominio.com 192.168.1.1

Los nombres son automáticamente asignados por add-ns, según el parámetro [a-z].ns.name. En nuestro ejemplo, el servidor de nombres 192.168.1.1 ha sido nombrado a.ns.midominio.com (no es necesario agregar el registro A para a.ns.midominio.com, esto ha sido creado automaticamente por el comando add-ns anterior)

Ahora el servidor con la direccion IP 192.168.1.10 sera nuetro servidor alterno o redundante de nombres de dominios para el dominio midominio.com – este sra b.ns.midominio.com:

./add-ns midominio.com 192.168.1.10

Ahora creamos los registros A para los servidores donde esta hospedado midominio.com – llamemosles server1.midominio.com y server2.midominio.com:

./add-host server1.midominio.com 192.168.1.1
./add-host server2.midominio.com 192.168.1.10

Para crear más nombres de máquinas que utilizan la misma dirección IP debemos utilizar el comando add-alias:

./add-alias www.midominio.com 192.168.1.1
./add-alias midominio.com 192.168.1.1

Ahora configuremos 192.168.1.1 para que sea el servidor de intercambio de correo para midominio.com:

./add-mx midominio.com 192.168.1.1

El nombre del servidor SMTP no se especifica directamente, los nombres son agregados automáticamente por el comando add-mx siguiendo el patrón [a-z].mx.name, en nuestro caso de ejemplo a.mx.midominio.com. No es posible especificar la distancia o prioridad del servidor SMTP

Luego que hemos creado todos los registros, debemos ejecutar

make

Para que los cambios tengan efecto.

No existen scripts para crear registros CNAME y TXT para registros SPF, por lo cual debemos modificar /service/tinydns/root/data manualmente de la siguiente manera:

vi /service/tinydns/root/data
[...]
'midominio.com:v=spf1 a mx ~all:3600
Cftp.midominio.com:www.midominio.com

Para ayudar con los registros SPF para el dominio vean . Recuerden ejecutar make después de los cambios.

Si vemos en el archivo /service/tinydns/root/data

cat /service/tinydns/root/data
server1:/service/tinydns/root# cat /service/tinydns/root/data
.midominio.com:192.168.1.1:a:259200
.midominio.com:192.168.0.101:b:259200
=server1.midominio.com:192.168.1.1:86400
=server2.midominio.com:192.168.0.101:86400
+www.midominio.com:192.168.1.1:86400
+midominio.com:192.168.1.1:86400
@midominio.com:192.168.1.1:a::86400
'midominio.com:v=spf1 a mx ~all:3600
Cftp.midominio.com:www.midominio.com
server1:/service/tinydns/root#

Podrán darse cuenta que los registros inician con signos como., =, +, @, ‘, C, etc. Pueden encontrar explicaciones para los diferentes tipos de regristos en http://www.fefe.de/djbdns/#recordtypes y .

En lugar de usar los scripts add-*, pueden especificar los registros manualmente en /service/tinydns/root/data. De esta manera tendremos más flexibilidad y podemos asignar, por ejemplo, nombres individuales a nuestros servidores de nombres y de correo, ejemplo: ns1.midominio.com en lugar de a.ns.midominio.com:

cd /service/tinydns/root
vi data
#define the authoritative nameserver
.midominio.com::ns1.midominio.com
#mail exchanger
@midominio.com::mail.midominio.com
#IP for machine1,2,3,4,5
=machine1.midominio.com:1.2.3.1
=machine2.midominio.com:1.2.3.2
=machine3.midominio.com:1.2.3.3
=machine4.midominio.com:1.2.3.4
=machine5.midominio.com:1.2.3.5
#machine5 is also known as ns1
+ns1.midominio.com:1.2.3.5
#machine1 is our mailserver
+mail.midominio.com:1.2.3.1
#and our web server
+www.midominio.com:1.2.3.1
make

Para probar los registros pueden utilizar el comando dig:

dig @192.168.1.1 midominio.com
dig @192.168.1.1 ns midominio.com
dig @192.168.1.1 mx midominio.com
dig @192.168.1.1 txt midominio.com
dig @192.168.1.1 www.midominio.com

Para más información acerca de djbdns, pueden consultar los siguientes sitios:

One Reply to “tinyDNS – Configurando y agregando dominios en Linux”

  1. hola! primera vez por aqui.. muy interesante!
    Pensé que podría servirte esta recomendación: widget de HP para entrar a todas las cuentas al tiempo. checalo aquí: http://www.mtvhpbox.com
    saludos desde bogotá!

Deja tus preguntas o comentarios