Instalación y mantenimiento de servicios de Internet
Unidad 2
CONFIGURACIÓN DE UN SERVIDOR DNS: BIND Andrés Rosique Hernández
[email protected]
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Licencia Esta obra está bajo una licencia Reconocimiento-No comercial-Compartir bajo la misma licencia 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-sa/3.0/deed.es
o envíe una carta a Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
U02. Configuración de un servidor DNS: Bind
2
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Índice 1.Introducción 2.Breve historia 3.El archivo hosts 4.Niveles de nombre de dominio 5.Servidores raíz 6.Clasificación de servidores 7.Registros de recursos 8.Instalación 9.Configuración ● ● ●
DNS Cache DNS Maestro DNS Esclavo
U02. Configuración de un servidor DNS: Bind
3
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Índice (2) 10.El archivo named.conf 11.Verificar archivos de configuración 12.Glosario 13.Bibliografia
U02. Configuración de un servidor DNS: Bind
4
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Introducción ●
●
●
●
El DNS (Domain Name System, sistema de nombres de dominio) consiste básicamente en una base de datos con información sobre equipos (hosts). El servicio DNS gestiona y mantiene de forma distribuida las direcciones de Internet y los nombres de hosts. En una red TCP/IP las máquinas se identifican mediante su dirección IP. Sin embargo, para las personas resulta mucho más sencillo recordar un nombre que se asocia a una máquina concreta que una dirección IP.
U02. Configuración de un servidor DNS: Bind
5
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Introducción (2) ●
●
●
●
Un dominio o nombre de dominio es el nombre que identifica un sitio web. El dominio tiene que ser único en Internet. Por ejemplo, www.google.es es el nombre de dominio del sitio web de Google en España. Un servidor web puede alojar sitios web correspondientes a varios dominios, pero un dominio sólo puede apuntar a un servidor web. Si el dominio estuviese repartido entre varios servidores, el servicio DNS sólo devolvería una dirección IP que deberá ser la correspondiente al servidor que tiene alojado el dominio.
U02. Configuración de un servidor DNS: Bind
6
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Breve historia ●
●
●
DNS nació de la necesidad de recordar fácilmente los nombres de todos los servidores conectados a Internet. En un principio, cada máquina recuperaba un un archivo llamado HOSTS.TXT desde un ordenador en el SRI (Stanford Research Institute, ahora llamada SRI International). Los administradores, enviaban los cambios en los nombres de sus equipos o dominios por correo electrónico a este centro y una versión actualizada del archivo era publicada una o dos veces por semana en un servidor para que pudiera copiarse.
U02. Configuración de un servidor DNS: Bind
7
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Breve historia (2) ●
●
●
●
El archivo HOSTS.TXT hacía (hace) corresponder direcciones numéricas a nombres de dominio. Y todavía existe en la mayoría de los sistemas operativos. Pero el crecimiento explosivo de Internet hizo que el sistema de nombres centralizado en el archivo hosts.txt no resultara práctico. En 1983, Paul Mockapetris inventó el DNS y escribió su primera implementación. Las especificaciones originales aparecen en los RFC 882 y 883. En 1987 los RFC 1034 y 1035 actualizaron los anteriores.
U02. Configuración de un servidor DNS: Bind
8
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo hosts ●
Funcionamiento: –
–
–
–
Cuando tecleamos un dominio, lo primero que hace el equipo es comprobar si ya tenemos información del mismo en el archivo hosts. En caso negativo, mira si se pidió hace poco y lo tiene en la caché, de no haberlo hecho lo solicita a su servidor DNS para que le diga la IP de ese dominio. Luego la guarda en la caché para futuras consultas. Esta caché se vacía al poco tiempo, al reiniciar el equipo, apagarlo, etc. En cambio los datos de hosts son permanentes. ●
Se puede modificar para incluir direcciones que se usan frecuentemente para ganar tiempo (milisegundos).
U02. Configuración de un servidor DNS: Bind
9
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo hosts (2) ●
Formato: – – – – –
Contiene un nombre de equipo o de dominio por línea. Las líneas que comienzan por # se consideran comentarios y no se tienen en cuenta. Se debe introducir la IP a la que resolverá, uno o más espacios (o tabulaciones) y el dominio a resolver. Se puede introducir más de un dominio a resolver en la misma línea. Por ejemplo: 127.0.0.1 localhost midominio.org
U02. Configuración de un servidor DNS: Bind
¡OjO! Recuerda hacer una copia de seguridad de cualquier archivo que vayas a editar.
10
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo hosts (3) ●
Localización: – –
Windows 95/98/Me: C:\Windows\Hosts Windows NT/2000: C:\WINNT\System32\drivers\etc\hosts
– –
Windows XP/2003/Vista: C:\WINDOWS\system32\drivers\etc\hosts Unix/Linux/MacOS (en general): /etc/hosts
U02. Configuración de un servidor DNS: Bind
11
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Terminología básica ●
●
●
●
Host Name: el nombre de un equipo es una sola “palabra”. Ejemplos: www, blog y obelix. Fully Qualified Host Name (FQHN): es el “nombre completo” de un equipo. Está formado por el hostname, seguido de un punto y su correspondiente nombre de dominio. Por ejemplo, www.rae.es. Domain Name: el nombre de dominio es una sucesión de nombres concatenados por puntos. Ejemplos: smaldone.com.ar, com.ar. Top Level Domains (TLD): los dominios de nivel superior son aquellos que no pertenecen a otro dominio. Ejemplos de este tipo son com, org, y es.
U02. Configuración de un servidor DNS: Bind
12
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Niveles de nombres de dominio ●
Inicialmente los nombres de dominio de alto nivel (TLD, Top Level Domain) eran: – – – – – – – –
.com → empresas comerciales. .edu → educacional (universidades y colegios). .org → organizaciones sin ánimo de lucro. .net → redes de ordenadores independientes pero conectadas a Internet. .int → internacional. .gov → gobiernos y organismos oficiales de EEUU. .mil → organismos militares de EEUU. .nato → organización del tratado del Atlántico Norte (OTAN / NATO)
U02. Configuración de un servidor DNS: Bind
13
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Niveles de nombres de dominio (2) ●
Posteriormente se añadieron más nombres a la lista. Por ejemplo: – – – –
●
●
.au .eu .es ...
→ Australia. → Europa. → España.
Los nombres de dominio que cuelgan de éstos se denominan dominios de segundo nivel (2LD, Second Level Domain). Los que cuelgan del segundo nivel se denominan de tercer nivel (3LD) y así sucesivamente.
U02. Configuración de un servidor DNS: Bind
14
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Niveles de nombres de dominio (3)
U02. Configuración de un servidor DNS: Bind
15
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Servidores raíz ●
●
El responsable de los dominios anteriores y del dominio raíz, que está por encima de ellos, es el ICANN (Internet Corporation for Assigned Names and Numbers). El ICANN: – –
Gestiona la concesión de nombres de dominio y las IP asociadas. Posee 13 servidores distribuidos por el mundo: ● ● ●
–
10 en EEUU. 2 en Europa. 1 en Japón.
Estos servidores se denominan servidores raíz o Top Name Servers (TNS).
U02. Configuración de un servidor DNS: Bind
16
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Servidores raíz (2) ●
Los TNS (Top Name Servers): – – – –
●
Todos tienen la misma información. Se reparten el trabajo de resolución. Cada uno es una copia de seguridad del resto. Contienen las zonas con los nombres de dominio de segundo nivel de todo el mundo → enorme cantidad de información.
Los TNS no hacen todas las resoluciones de nombres de dominio de segundo nivel. Existen muchos servidores de nombres de empresas y particulares que realizan también esta función, si tienen autoridad.
U02. Configuración de un servidor DNS: Bind
17
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Servidores raíz (3)
U02. Configuración de un servidor DNS: Bind
18
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Clasificación de servidores ●
Servidor caché: – – –
No tiene autoridad sobre ninguna zona. En principio (cuando arranca) no es capaz de hacer ninguna resolución por si mismo. Cuando recibe una consulta, la reenvía a servidores que puedan resolverla y cuando le responden, almacena la respuesta en memoria.
U02. Configuración de un servidor DNS: Bind
19
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Clasificación de servidores (2) ●
Servidor secundario (esclavo): – – –
–
Tiene información (sólo lectura) sobre algunas zonas. Estos datos son copias de los servidores maestros. Cuando cambia la información en un servidor maestro, el esclavo la copia simplemente para actualizarse. Sólo atiende a peticiones de los clientes (resolvedores).
U02. Configuración de un servidor DNS: Bind
20
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Clasificación de servidores (3) ●
Servidor primario (maestro): – – – –
Tiene autoridad sobre una zona. Obtiene la información de sus zonas de sus archivos locales. Todas las modificaciones sobre una zona se llevan a cabo en el servidor primario. No necesita reenviar la consulta.
U02. Configuración de un servidor DNS: Bind
21
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Clasificación de servidores (4) ●
Servidor de reenvío: – –
No posee autoridad sobre las zonas que resuelve. Cuando reciben una consulta, la reenvían a los servidores que tienen configurados esperando que éstos la resuelvan. La estructura jerárquica de los servidores de nombre hace que con muy pocas consultas se pueda hacer la resolución.
U02. Configuración de un servidor DNS: Bind
22
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Registros de recursos ●
Los tipos de registros de recursos de un DNS: – – – – – – –
A = Address → proporciona la correspondencia de dirección simbólica a dirección IP. AAAA → como A pero para direcciones IPv6. CNAME = Canonical name → especifica un alias o apodo para una dirección simbólica. MX = Mail Exchanger → indica los hosts que recibirán el correo. NS = Name Server → indica los servidores de nombres oficiales para el dominio. PTR = PoinTeR → proporciona la resolución inversa de una dirección IP a una dirección simbólica. SOA = Start Of Authority → autoridad sobre el dominio de Se puede ver una lista completa de los nombres.
U02. Configuración de un servidor DNS: Bind
recursos en http://www.dns.net/dnsrd/rr.html.
23
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Instalación Ubuntu ●
●
[email protected]
Para instalar Bind en Ubuntu tenemos dos opciones: desde un terminal o desde el Synaptic. Desde un terminal: sudo aptitude install bind9 bind9-doc
●
Desde el Synaptic: – – –
Buscamos “bind” (sin las comillas). Seleccionamos los paquetes bind9 y bind9-doc. Pulsamos sobre Aplicar.
U02. Configuración de un servidor DNS: Bind
24
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración Ubuntu ●
[email protected]
Los ficheros de configuración se encuentran en /etc/bind. – – – – – –
named.conf → fichero principal de configuración. named.conf.options → opciones genéricas. named.conf.local → especificación local de éste servidor DNS. db.127 → datos para la interfaz de loopback. db.root → datos de los servidores raíz. Otros: ● db.0, db.255, db.empty, db.local, rndc.key, zones.rfc1918.
U02. Configuración de un servidor DNS: Bind
25
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración Ubuntu (2) ●
●
[email protected]
Para hacer que las peticiones DNS vaya a través de nuestro servidor hay que editar el fichero Se recomienda usar /etc/resolv.conf y añadir en 0.0.0.0 en lugar de 127.0.0.1 que sería lo más la primera línea lógico. nameserver 0.0.0.0 Para iniciar el servicio Bind tecleamos el comando /etc/init.d/bind9 start ¡OjO! El proceso que se lanza con Para comprobar que funciona: /etc/init.d/bind9 start se llama named. dig barrapunto.com y se comprueba que el SERVER es 127.0.0.1 y que si se ejecuta de nuevo el comando el Query time desciende mucho.
U02. Configuración de un servidor DNS: Bind
26
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración DNS Caché ●
●
[email protected]
Por defecto, al instalar el paquete bind está preconfigurado como servidor caché DNS. ¡OjO! Sólo será necesario editar el archivo Recuerda hacer una de seguridad de /etc/bind/named.conf.options copia cualquier archivo que y en la sección forwarders añadir las vayas a editar. IP de dos servidores DNS donde redirigir las peticiones DNS: forwarders { 80.58.0.33; 80.58.32.97; };
●
Por último, tenemos que reiniciar el servidor: /etc/init.d/bind9 restart
U02. Configuración de un servidor DNS: Bind
27
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración DNS Caché (2) ●
●
[email protected]
Para comprobar que estamos trabajando con nuestro servidor DNS ejecutamos un dig a cualquier sitio dos veces. La segunda vez la respuesta del Query Time debería ser 1. dig google.es
+noauthority +noadditional +noanswer +noquestion
U02. Configuración de un servidor DNS: Bind
28
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración DNS Maestro ●
●
●
[email protected]
Por razones de accesibilidad y organizativas, se quiere asignar un nombre a todos los equipos de nuestra red, para lo que instalaremos un servidor DNS privado con un dominio ficticio, por ejemplo 'iesalboran.com'. Todos los PC de nuestra red pertenecerán a dicho dominio ficticio que funcionará solo en nuestra red interna, no en Internet. En tal caso el nombre completo de los PCs terminará con 'iesalboran.com', por ejemplo: pc02.iesalboran.com.
U02. Configuración de un servidor DNS: Bind
29
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración DNS Maestro (2) ●
●
[email protected]
Lo ideal en una situación así es disponer de un servidor DNS maestro de nuestro dominio, es decir, maestro del dominio interno 'iesalboran.com'. El servidor DNS maestro para 'iesalboran.com' será capaz de resolver peticiones internas de nombres de éste dominio, tanto –
–
de forma directa → si recibe una consulta acerca de quién es pc02.iesalboran.com deberá devolver su IP; por ejemplo, 172.26.6.31. como de forma inversa → si se quiere saber quién es 172.26.6.31, deberá responder pc02.iesalboran.com.
U02. Configuración de un servidor DNS: Bind
30
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración DNS Maestro (3) ●
[email protected]
Por ello deberemos añadir en el archivo /etc/bind/named.conf.local la especificación del dominio maestro: zone "iesalboran.com" { type master; file "/etc/bind/iesalboran.com.hosts"; };
●
El fichero donde almacenaremos las direcciones de los equipos lo podemos llamar como queramos y será el nombre que indiquemos con el parámetro file. En nuestro caso, iesalboran.com.hosts.
U02. Configuración de un servidor DNS: Bind
31
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración DNS Maestro (3) ●
[email protected]
Por lo tanto, creamos el fichero iesalboran.com.hosts con el siguiente contenido: $ttl 38400 iesalboran.com. IN SOA ubuntu-desktop. admin.iesalboran.com. ( 1193412145 10800 3600 604800 38400 ) iesalboran.com. IN NS ubuntu-desktop.
Dominio que estamos creando
Nombre de nuestro equipo
Dirección de correo
Registros de recursos U02. Configuración de un servidor DNS: Bind
32
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración DNS Maestro (4) ●
[email protected]
Ahora sólo faltaría añadir a este mismo fichero todas las direcciones de los hosts que queramos: $ttl 38400 iesalboran.com. IN SOA ubuntu-desktop. admin.iesalboran.com. ( 1193412145 10800 3600 604800 38400 ) iesalboran.com. IN NS ubuntu-desktop. pc01.iesalboran.com IN A 172.26.6.30 pc02.iesalboran.com IN A 172.26.6.31 pc03.iesalboran.com IN A 172.26.6.32 pc04.iesalboran.com IN A 172.26.6.33
●
Por último, tenemos que reiniciar el servidor: /etc/init.d/bind9 restart
U02. Configuración de un servidor DNS: Bind
33
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración DNS Esclavo
[email protected]
Un servidor esclavo no tiene autoridad sobre la zona que resuelve pero contiene el archivo de zona correspondiente. ● Los archivos de zona que hay en los DNS esclavos son una copia (porque han sido transferidos) de los existentes en los DNS maestros. ● Un DNS esclavo no puede estar en el mismo equipo que el DNS maestro con el que se va a sincronizar porque tienen que tener el mismo nombre de dominio. ● Si queremos crear un DNS esclavo de la zona “iesalboran.com”, que está en el DNS maestro con la 172.26.6.1, tendremos hacer lo siguiente: U02.IP Configuración de un servidor DNS: Bind 34 ●
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Configuración DNS Esclavo (2) ●
[email protected]
Añadir en el archivo /etc/bind/named.conf.local la especificación del dominio esclavo: zone "iesalboran.com" { type slave; masters { 172.26.6.1; }; file "/var/cache/bind/iesalboran.com.hosts"; };
●
●
Crear el fichero /var/cache/bind/ iesalboran.com.hosts. Reiniciar el servidor DNS esclavo.
U02. Configuración de un servidor DNS: Bind
35
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo named.conf ●
●
●
El archivo named.conf es más importante para configurar Bind. El contenido del archivo está dividido en varias partes llamadas estamentos. Algunos estamentos son acl, controls, key, options, view, zone... options { Parámetros de configuración; }; zone “nombre de la zona” { Parámetros de configuración; };
●
A continuación se comentarán estos dos estamentos
U02. Configuración de un servidor DNS: Bind
36
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
El archivo named.conf Parámetros de options ●
[email protected]
directory Indica el directorio de trabajo del servidor. –
–
Los ficheros que se indiquen en los archivos de configuración se podrán escribir con una ruta relativa a la indicada en este parámetro. Si no se utiliza, habrá que indicar la ruta absoluta.
options { //Se recomienda escribir siempre las rutas absotutas directory “/var/named”; };
U02. Configuración de un servidor DNS: Bind
37
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
El archivo named.conf Parámetros de options (2) ●
[email protected]
port Indica el número de puerto que el servidor usa para recibir y enviar el tráfico del protocolo DNS. – –
El protocolo es UDP y el puerto por defecto es el 53. Se recomienda no cambiar el puerto (sólo para hacer pruebas), porque otro puerto distinto del 53 impedirá la comunicación global del DNS.
options { //El puerto por defecto es el 53 port 5353; }; Para comprobar el funcionamiento se puede ejecutar dig -p 5353. U02. Configuración de un servidor DNS: Bind
38
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
El archivo named.conf Parámetros de options (3) ●
[email protected]
allow-query Especifica que hosts pueden hacer consultas al DNS –
Por defecto, admite las consultas de cualquier host.
options { //Se permite a los hosts de la red 172.26.0.0 con máscara 255.255.0.0 allow-query { 172.26.0.0/16; }; };
–
Se pueden definir listas de acceso (access lists, acl). Para ello se usa el estamento acl (tiene que estar fuera de options).
acl “redesinternas” { 192.168.1.0/24; 172.26.0.0/16; }; options { allow-query { “redesinternas” }; }; U02. Configuración de un servidor DNS: Bind
39
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
El archivo named.conf Parámetros de options (4) ●
[email protected]
forward Reenvía la consulta a otro servidor. – –
–
Esta opción sólo tiene sentido si no está vacío el parámetro forwarders. Por defecto su valor es first → pregunta primero a los forwarders y si no obtiene respuesta, lo intentaría resolver él mismo. Con el valor only → sólo preguntará a los forwarders (si ellos no responden, no podrá hacer la resolución).
options { //Funcionamiento de sólo reenvío forward only; }; U02. Configuración de un servidor DNS: Bind
40
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
El archivo named.conf Parámetros de options (5) ●
[email protected]
forwarders Especifica la lista de servidores que se usará para hacer reenvío (forwarding). options { forward first; forwarders { 172.26.0.1; 80.58.61.240; }; };
–
Aunque las opciones de reenvío se pueden hacer desde el estamento options de forma general, también se puede indicar para cada zona (pudiendo tener diferentes forwarders y comportamientos).
U02. Configuración de un servidor DNS: Bind
41
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
El archivo named.conf Parámetros de zone ●
●
[email protected]
type master Un servidor de tipo maestro es aquel que contiene una copia maestra de los datos de la zona y tiene autoridad para responder consultas sobre la misma. type slave Una zona de tipo esclava es una réplica de una zona maestra.
Con el tipo slave se debe añadir el parámetro masters que establece una lista con una o más direcciones IP de los servidores maestros → actualizar la copia de la zona. – Es aconsejable el uso de file para indicar el fichero en el que se escribirán los datos de la zona. U02. Configuración de un servidor DNS: Bind 42 –
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
El archivo named.conf Parámetros de zone (2) ●
type stub Similar a la tipo esclava pero se copian únicamente los registros de recurso NS (no la zona completa). –
●
[email protected]
No es parte del estándar DNS → específico de Bind.
type hint Es la zona para crear los servidores caché. –
Se debe usar el parámetro file para indicar dónde estarán recogidos los nombres y direcciones de los servidores raíz → el archivo db.root contiene esta lista (en otras distribuciones se llama named.ca).
U02. Configuración de un servidor DNS: Bind
43
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
El archivo named.conf Parámetros de zone (3) ●
type forward Permite crear una zona de reenvío. –
–
●
[email protected]
Cuando un servidor tiene una zona de este tipo no es él quien hace la resolución sino que pregunta a otro servidor. No confundir este tipo de zona con los parámetros forward y forwarders (éstos se incluyen en la zona de reenvío o en el estamento options).
file El fichero de configuración de zona se asigna mediante file.
U02. Configuración de un servidor DNS: Bind
44
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
El archivo named.conf Parámetros de zone (4) ●
[email protected]
masters Permite indicar quién o quienes son los servidores maestros de zona. –
Sólo se usa cuando la zona es de tipo esclava.
masters { 80.17.15.4; 61.7.102.98; };
U02. Configuración de un servidor DNS: Bind
45
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de configuración de zona ●
●
●
●
Cada zona definida en /etc/bind/named.conf o /etc/bind/named.conf.local debe tener un fichero asociado de configuración de la zona. Este fichero contiene las relaciones entre las diferentes direcciones IP pertenecientes al dominio y sus nombres. Los archivos de configuración de zona ya definidos son db.127, db.root, db.0, db.255, db.empty, y db.local. Los que creemos nosotros podemos llamarlos como queramos pero se recomienda seguir algún tipo de patrón. Por ejemplo: db.iesalboran.com o iesalboran.com.db.
U02. Configuración de un servidor DNS: Bind
46
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de configuración de zona (2) ●
El fichero contiene dos tipos de elementos: –
Directivas (directives). ● ●
Van precedidas del símbolo $. Existen 4 directivas: – – – –
–
$ORIGIN. $INCLUDE. $TTL. $GENERATE.
Registros de recursos (resource records). ●
● ●
Representan el conjunto de información asociada a un nombre de dominio. El registro SOA debe ser el primero. Tipos de recursos: SOA, A, CNAME, PTR, MX...
U02. Configuración de un servidor DNS: Bind
47
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Directiva $TTL ●
●
●
●
●
$TTL (Time To Live) indica el tiempo de vida general para los registros de recurso. Se coloca en la primera línea del archivo, antes que el registro SOA. Se usa por los servidores caché para saber cuando tienen que actualizar los registros de las zonas descargadas y guardadas en memoria. Si $TTL es cero, significa que el registro o registros no pueden almacenarse en caché. $TTL se expresa normalmente en segundos y puede estar comprendida entre 0 y 2147483647 (unos 68 años).
U02. Configuración de un servidor DNS: Bind
48
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Directiva $TTL (2) ●
El tiempo de vida también se puede indicar en otras unidades usando los siguientes sufijos: – – – – –
●
s m h d w
→ segundos. → minutos. → horas. → días. → semanas.
El tiempo asignado por $TTL es utilizado por los registros de recursos que no lo tienen definido.
U02. Configuración de un servidor DNS: Bind
49
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Directiva $ORIGIN ●
●
●
La directiva $ORIGIN establece el nombre de dominio por omisión. Es decir, mediante esta directiva se indica el nombre de dominio que se añadirá a los nombres de los hosts que acompañan a los registros de recurso que no acaban en punto (.). No es necesario usar esta directiva si la zona Por ejemplo: si tenemos declarada se corresponde con el nombre de dominio que se quiere utilizar.
$ORIGIN iesalboran.com.
entonces esi2-pc06
IN A
172.26.8.6
es equivalente a escribir esi2-pc06.iesalboran.com. U02. Configuración de un servidor DNS: Bind
IN A
172.26.8.6 50
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Registro SOA ●
●
●
El registro SOA (Start Of Authority) define el comienzo de una zona de autoridad. Es un registro de uso obligatorio y el primero que deberemos escribir. Su sintaxis es la siguiente: nombre_de_dominio IN SOA servidor responsable (parámetros)
–
–
nombre_de_dominio: indica el nombre de dominio a resolver. Si coincide el nombre de dominio con el de zona, se puede escribir en su lugar el comodín @. servidor: indica el nombre de la máquina que hace de DNS. Se suele usar ns seguido del nombre de dominio. Por ejemplo, ns.iesalboran.com.
U02. Configuración de un servidor DNS: Bind
51
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Registro SOA (2) –
–
responsable: cuenta de correo o alias en la que el administrador del servicio recibirán las incidencias que se produzcan. parámetros: se especificarán en orden. ●
●
Número de serie: se suele elegir la fecha en la que se produjo la última actualización. Por ejemplo, si el 30 de enero de 2006 se hicieron dos actualizaciones en el número de serie se podría indicar 3001200602. Periodo de refresco: los servidores esclavos hacen la resolución de nombres a partir de la información proporcionada por los servidores maestros. Esta información es actualizada cada vez que transcurre el tiempo indicado en este parámetro.
U02. Configuración de un servidor DNS: Bind
52
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Registro SOA (3) –
parámetros: (continuación) ●
●
●
Frecuencia de reintentos: tiempo que debe esperar el DNS esclavo para solicitar de nuevo la actualización en caso de que hubiera fallado antes. Tiempo de expiración: tiempo máximo que se mantendrá la información sin actualizar en el servidor esclavo en caso de que el maestro no responda a las solicitudes. Transcurrido este tiempo la información de la zona se perderá. TTL mínimo: cantidad asignada por el servidor a los registros de recurso en caso de no usar la directiva $TTL. Su valor máximo será de 3 horas.
U02. Configuración de un servidor DNS: Bind
53
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Registro SOA (4) ●
Ejemplo: @
IN SOA
ns root.localhost. ( 3001200602; Numero de serie 21600; Periodo de refresco en segundos (6 horas) 10800; Frecuencia de reintentos (3 horas) 604800; Tiempo de expiracion (1 semana) 21600; Tiempo de vida de registros en caché (6 h) );
U02. Configuración de un servidor DNS: Bind
54
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Registro NS ●
● ●
El registro NS (Name Server) indica el nombre de los servidores de nombres de dominio que tienen autoridad sobre la zona definida. Se escribir a continuación del registro SOA. Su sintaxis es la siguiente: nombre_de_dominio IN NS servidor_con_autoridad_sobre_la_zona
●
Por ejemplo: iesalboran.com. IN NS ns.iesalboran.com.
también se puede escribir como IN NS ns
U02. Configuración de un servidor DNS: Bind
55
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Registro A ●
●
El registro A (Address) indica las asociaciones entre nombres de dominio y las correspondientes direcciones IP. Su sintaxis es la siguiente: nombre_de_dominio IN A dirección_IP
●
Por ejemplo: esi2-pc06.iesalboran.com. IN A 172.26.8.6
también se puede escribir como esi2-pc06 IN A 172.26.8.6
U02. Configuración de un servidor DNS: Bind
56
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Registro MX ●
●
El registro MX (Mail eXchanger) es el registro consultado por un servidor de correo para conocer la IP de otro servidor de correo. Su sintaxis es la siguiente: nombre_de_dominio IN MX prioridad dirección_IP
●
Por ejemplo: iesalboran.com. IN MX 10
U02. Configuración de un servidor DNS: Bind
correo.iesalboran.com.
57
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
El archivo de conf. de zona Registro CNAME ●
●
El registro CNAME (Canonical NAME) sirve para identificar el verdadero nombre de un alias. Un ejemplo real lo encontramos con Google. www.google.es. 47225 www.google.com. 604188 www.l.google.com. 13 www.l.google.com. 13 www.l.google.com. 13
–
IN IN IN IN IN
CNAME CNAME A A A
www.google.com. www.l.google.com. 66.249.91.147 66.249.91.99 66.249.91.104
www.google.es es un alias de www.google.com, que a su vez es alias de www.l.google.com. A este último nombre de dominio se le asignan varias direcciones IP para balancear la carga entre la máquinas.
U02. Configuración de un servidor DNS: Bind
58
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Verificar archivos de configuración ●
●
●
[email protected]
La mayor causa de errores está en los fallos en la sintaxis de los ficheros de configuración. Es imprescindible escribir correctamente todas las llaves, puntos y comas, comillas... Existen dos herramientas para corregir este tipo de errores: – –
named-checkconf named-checkzone
U02. Configuración de un servidor DNS: Bind
59
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Verificar archivos named-checkconf ●
[email protected]
named-checkconf [archivo] [-z] Herramienta para comprobar la sintaxis de los archivos de configuración. – –
Si no se indica ningún fichero, comprueba por defecto el archivo /etc/bind/named.conf. Ejemplo: ●
Falla el arranque del servicio.
$ sudo /etc/init.d/bind9 restart * Stopping domain name service... bind * Starting domain name service... bind ●
[ OK ] [fail]
Comprobamos el fichero.
$ named-checkconf /etc/bind/named.conf /etc/bind/named.conf:15: '}' expected near ';' U02. Configuración de un servidor DNS: Bind
60
Andrés Rosique Hernández
Instalación y mantenimiento de servicios de Internet
Verificar archivos named-checkzone ●
[email protected]
named-checkzone zona nombreFichero Herramienta para comprobar la sintaxis y la integridad de los archivos de zona. –
Ejemplo: ●
Comprobamos la zona.
$ named-checkzone iesalboran.com /etc/bind/db.iesalboran /etc/bind/db.iesalboran:1: no TTL specified; using SOA MINTTL instead zone iesalboran.com/IN: loaded serial 3005200601 OK ●
Nos ha aparecido un aviso (warning) indicando que no se ha especificado un TTL. Si no se ha especificado, como ocurre aquí, Bind asigna de forma automática el MINTTL dado en el registro SOA.
U02. Configuración de un servidor DNS: Bind
61
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Glosario ●
●
●
DNS: Domain Name System (sistema de nombres de dominio). FQDN: Fully Qualified Domain Name (“nombre completo” de un dominio). TLD: Top Level Domains.
U02. Configuración de un servidor DNS: Bind
62
Andrés Rosique Hernández
[email protected]
Instalación y mantenimiento de servicios de Internet
Bibliografía ●
Libros: –
●
Enlaces: – – – –
●
Martín Romero, A. y Martín Romero, J. Servicios de Internet. Instalación y mantenimiento. Mira Editores, 2006.
http://es.wikipedia.org y http://en.wikipedia.org. http://www.root-servers.org/. https://www.nic.es/. http://maps.google.es/maps/ms?ie=UTF8&hl=es&msa=0&msid=1
Otros: – –
Apuntes del curso Redes de área local. Aplicaciones y Servicios. Linux. CNICE, 2007. Apuntes del curso Software libre y educación (curso avanzado): servicios de red, gestores de contenido y seguridad. Thales-CICA, 2004-2005.
U02. Configuración de un servidor DNS: Bind
63