2º Practica – DNS en Centos
El objetivo de la presente práctica es que el alumno se familiarice con el proceso de asignación de nombres a direcciones IP, tanto en redes que utilizan un servidor de nombres como en aquellas que no operan de dicha forma. Para ello la práctica se desarrollara en dos fases diferentes:
A) Configuración de dominios sin utilización de DNS.
En esta fase el alumno deberá configurar cada uno de los equipos que conforman su red de forma que desde cada una de las estaciones, pueda accederse a sistemas remotos utilizando los nombres asignados a cada uno de ellos. Para llevar a cabo dicho proceso debe configurar adecuadamente los siguientes ficheros
/etc/hosts
/etc/networks
/etc/host.conf
/etc/nsswitch.conf
de forma que puedan alcanzarse sistemas tanto de su dominio como de dominios externos.
Empezamos configurando el nombre de la máquina que llamamos pasarela. Si tecleamos en el terminal el comando “hostname”, nos devuelve el nombre de la maquina que en este caso y antes de la configuración es “localhost.localdomain”.
Para llevar a cabo la modificación del nombre, editamos el archivo “ /etc/sysconfig/network ”
$ vim /etc/sysconfig/network
en donde introducimos las siguiente línea
HOSTNAME=pasarela.red2.redes.dis.ulpgc.es
y en la estación introducimos la siguiente línea
HOSTNAME=estacion.red2.redes.dis.ulpgc.es
a continuación reiniciamos el servicio de red.
$ /etc/init.d/network restart
y comprobamos que el nombre se ha reestablecido correctamente tecleando en el terminal “hostname”
Pasarela:
$ hostname
estacion.red2.redes.dis.ulpgc.es
Estación;
$ hostname
estacion.red2.redes.dis.ulpgc.es
Ya tenemos los nombres de los equipos configurados, ahora procedemos a introducir el las direcciones de los equipos con sus direcciones IP, para ello editamos el archivo “ /etc/hosts "
$ vim /etc/hosts
en donde introducimos las siguientes líneas:
172.16.2.1 pasarela.red2
172.16.1.2 pasarela.red2
172.16.2.2 estacion.red2
donde la pasarela es el nombre de la maquina que tiene 2 tarjetas de red, puede verse que este dato queda detallado en el archivo de configuración ya que la “estacion.red2” tiene 2 direcciones IP, una la de la red interna, y la otra la de la red externa.
Hacemos lo mismo en el archivo “ /etc/hosts “ de la maquina llamada estación, donde introduciremos las siguientes líneas:
172.16.2.1 pasarela.red2
172.16.2.2 estacion.red2
Para comprobar que ya se han realizado los cambios oportunos, podemos comprobarlos haciendo un ping a los nombres de las maquinas:
$ ping estacion.red2
$ ping pasarela.red2
y podemos ver que recibimos respuesta
PING pasarela.red2 (172.16.2.1) 56(84) bytes of data.
64 bytes from pasarela.red2 (172.16.2.1): icmp_seq=1 ttl=64 time=0.025 ms
64 bytes from pasarela.red2 (172.16.2.1): icmp_seq=2 ttl=64 time=0.025 ms
64 bytes from pasarela.red2 (172.16.2.1): icmp_seq=3 ttl=64 time=0.024 ms
B) Configuración y puesta en marcha de los servidores DNS para su dominio con las siguientes características:
b-1) Servidor Primario del propio dominio
Como servidor de DNS se hará uso del software dedicado a ello llamado BIND9, para ello vamos a proceder a su instalación con el gestor de paquetes de Centos, con la instalación del software Bind también se instalara el Chroo-Bind.
Una vez instalado procedemos a la configuración de los archivos presentes en el servidor primario que es la maquina llamada pasarela, el servidor secundario estará presente en la estación.
En la pasarela deberemos de configurar los siguientes archivos:
• Named.conf (/etc/named.conf)
• db.red2 (/var/named/db.red2)
• db.172.16.2 (/var/named/db.172.16.2)
• named.root (/var/named/named.root)
• db.127.0.0 (/var/named/db.127.0.0)
La ruta detallada anteriormente sería donde estarían esos archivos normalmente, pero en nuestro caso y tras la instalación de Chroot-Bind, los ficheros presentes en /var/named, y /etc/ reamente son enlaces a ficheros presentes en /var/named/chroot/var/named, de esta forma encapsulamos todos esos archivos en la carpeta chroot para mayor seguridad.
Antes de comenzar con la labor de la realización de los archivos de configuración hay que decir que es recomendable la elaboración escalonada de estos, ya que si ocurriese algun problema y el servidor no arranca nos sería difícil el averiguar el problema.
También haremos uso del archivo de log para poder monitorear la inicializacion, y funcionamiento del servidor de DNS, para poder ver este archivo lo haremos con el siguiente comando:
$ tail -80 /var/log/messages |grep named
Inicialmente tendremos que crear y configurar el archivo /etc/named.conf, que si recordamos este archivo en esa ruta es un enlace al fichero original presente en /var/named/chroot/etc/named.conf, de esta forma procedemos a crearlo y a crear el enlace:
$ vim /var/named/chroot/etc/named.conf
$ ln /var/named/chroot/etc/named.conf /etc/named.conf
En este archivo estará la configuración inicial de arranque del servicio, a continuación se explica el contenido presente en nuestro caso:
named.conf
options{
directory "/var/named";
};
zone "." IN {
type hint;
file "named.root";
};
zone "red2.redes.dis.ulpgc.es" IN {
type master;
file "db.red2";
allow-transfer{172.16.2.2;};
};
zone "2.16.172.in-addr.arpa" IN {
type master;
file "db.172.16.2";
allow-transfer {172.16.2.2;};
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "db.127.0.0";
};
La declaración options define opciones de configuración de servidor globales y configura otras declaraciones por defecto. Puede ser usado para especificar la ubicación del directorio de trabajo named, los tipos de consulta permitidos y mucho más.
En este caso y como configuración inicial se usa para especificar el directorio de trabajo.
Una declaración zone define las características de una zona tal como la ubicación de su archivo de configuración y opciones específicas de la zona. Esta declaración puede ser usada para ignorar las declaraciones globales options.
En nuestro caso vemos varias declaraciones zone, estas son las zonas presentes en nuestra red, tenemos declaraciones de zona directas e inversas así como la declaración local o localhost y la zona de los root servers que son los servidores raices mundiales.
La declaración zone viene determinada por un dominio inmediatamente a continuación de la palabra zone y luego en su interior varias opciones, dependiendo de estas opciones podemos especificar un tipo de zona que puede ser master, slave o hint:
- type master: El tipo master significa que esta zona se administra en este servidor de nombres. Es algo que requiere un archivo de zona muy bien configurado.
- type slave: El tipo slave significa que esta zona se transfiere de otro servidor de nombres. Hay que usarlo junto con masters.
- type hint: La zona del tipo hint se utiliza para indicar los servidores de nombres raíz. Es una definición de zona que no se modifica.
En nuestro archivo de configuración podemos ver las diferentes zonas declaradas:
- zone “.” = zona encargada de indicar los servidores raíz, cuyo archivo de configuración se encuentra en /var/named/named.root.
- zone “red2.redes.dis.ulpgc.es” = zona que describe el dominio red2.redes.dis.ulpgc.es y todos las máquinas presentes en ese dominio, el archivo de configuración se encuentra en /var/named/db.red2.
- zone "2.16.172.in-addr.arpa" = se encarga de la resolución inversa de la zona red2.redes.dis.ulpgc.es cuyo archivo de configuración está presente en /var/named/db.172.16.2.
- zone "0.0.127.in-addr.arpa" = se encarga de la resolución inversa de la zona local o de localhost cuyo archivo de configuración esta presente en /var/named/db.127.0.0.
A continuación se detallan los ficheros de configuración de zona:
/var/named/chroot/var/named/named.root
; <<>> DiG 9.5.0b2 <<>> +bufsize=1200 +norec NS . @a.root-servers.net
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7033
;; flags: qr aa; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 20;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;. IN NS;; ANSWER SECTION:
. 518400 IN NS D.ROOT-SERVERS.NET.
. 518400 IN NS E.ROOT-SERVERS.NET.
. 518400 IN NS F.ROOT-SERVERS.NET.
. 518400 IN NS G.ROOT-SERVERS.NET.
. 518400 IN NS H.ROOT-SERVERS.NET.
. 518400 IN NS I.ROOT-SERVERS.NET.
. 518400 IN NS J.ROOT-SERVERS.NET.
. 518400 IN NS K.ROOT-SERVERS.NET.
. 518400 IN NS L.ROOT-SERVERS.NET.
. 518400 IN NS M.ROOT-SERVERS.NET.
. 518400 IN NS A.ROOT-SERVERS.NET.
. 518400 IN NS B.ROOT-SERVERS.NET.
. 518400 IN NS C.ROOT-SERVERS.NET.;; ADDITIONAL SECTION:
A.ROOT-SERVERS.NET. 3600000 IN A 198.41.0.4
A.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:503:ba3e::2:30
B.ROOT-SERVERS.NET. 3600000 IN A 192.228.79.201
C.ROOT-SERVERS.NET. 3600000 IN A 192.33.4.12
D.ROOT-SERVERS.NET. 3600000 IN A 128.8.10.90
E.ROOT-SERVERS.NET. 3600000 IN A 192.203.230.10
F.ROOT-SERVERS.NET. 3600000 IN A 192.5.5.241
F.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:500:2f::f
G.ROOT-SERVERS.NET. 3600000 IN A 192.112.36.4
H.ROOT-SERVERS.NET. 3600000 IN A 128.63.2.53
H.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:500:1::803f:235
I.ROOT-SERVERS.NET. 3600000 IN A 192.36.148.17
J.ROOT-SERVERS.NET. 3600000 IN A 192.58.128.30
J.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:503:c27::2:30
K.ROOT-SERVERS.NET. 3600000 IN A 193.0.14.129
K.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:7fd::1
L.ROOT-SERVERS.NET. 3600000 IN A 199.7.83.42
M.ROOT-SERVERS.NET. 3600000 IN A 202.12.27.33
M.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:dc3::35;; Query time: 110 msec
;; SERVER: 198.41.0.4#53(198.41.0.4)
;; WHEN: Tue Feb 26 15:05:57 2008
;; MSG SIZE rcvd: 615
En este archivo están presente las direcciones de los servidores raiz mundiales, este archivo puede conseguirse desde Internet y es aconsejable ya que conseguiríamos la lista actualizada de los servidores.
En nuestro caso hemos usado el archivo que viene ya con la instalación de Bind que está presente en /usr/share/bind/doc/sample/named.root.
/var/named/chroot/var/named/db.red2
$ORIGIN red2.redes.dis.ulpgc.es.
$TTL 86400
@ IN SOA pasarela root (
1 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimumIN NS pasarela // servidor dns primario
localhost IN A 127.0.0.1
pasarela IN A 172.16.2.1
Podemos ver al principio del archivo de configuración varias etiquetas, estas etiquetas nos permiten:
- $ORIGIN = Anexa el nombre del dominio a registros no cualificados, tales como aquellos con el nombre de host solamente. Cualquier nombre utilizado en registros de recursos que no terminen en un punto (.) tendrían el dato que tenga la etiqueta $ORIGIN anexado.
- $TTL = Ajusta el valor Time to Live (TTL) predeterminado para la zona. Este es el tiempo, en segundos, que un registro de recurso de zona es válido. Cada recurso puede contener su propio valor TTL, el cual ignora esta directiva.
En este caso el dominio que especifica la zona es red2.redes.dis.ulpgc.es. es muy importante el punto al final ya que esto indica que ese es el dominio.
A continuación especificamos el nombre del host del servidor de nombres que tiene autoridad para este dominio, que en este caso es pasarela y fijémonos que no tiene punto al final esto es porque al no ponerle el punto, realmente el nombre del host sería pasarela.red2.redes.dis.ulpgc.es.
Lo que aparece a continuación es la dirección de correo del responsable de zona en este caso y siguiendo las indicaciones anteriores sería root.red2.redes.dis.ulpgc.es.
Los registros que aparecen a continuación son llamados registros de recursos, en esta sección del archivo, especificamos todas las maquinas presentes en el dominio, en este caso al tener solamente un servidor primario estará detallado como se especifica en el archivo, con un resgistro NS para indicar que es un servidor de nombres y a continuación con un registro A para indicar cual es su dirección IP.
Y así con todos los archivos de configuración:
/var/named/chroot/var/named/db.172.16.2
$ORIGIN 2.16.172.in-addr.arpa.
$TTL 86400
@ IN SOA pasarela.red2.redes.dis.ulpgc.es. root.red2.redes.dis.ulpgc.es. (
1 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimumIN NS pasarela.red2.redes.dis.ulpgc.es.
1 IN PTR pasarela.red2.redes.dis.ulpgc.es.
2 IN PTR estacion.red2.redes.dis.ulpgc.es.
/var/named/chroot/var/named/db.127.0.0
$ORIGIN 0.0.127.in-addr.arpa.
$TTL 86400
@ IN SOA pasarela.red2.redes.dis.ulpgc.es. root.red2.redes.dis.ulpgc.es. (
1 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimumIN NS pasarela.red2.redes.dis.ulpgc.es.
1 IN PTR localhost.
Las zonas de resolución inversa son altamente recomendables ya que de esta forma aseguramos que esa máquina es la propietaria de ese dominio.
Los registros de recursos que aparecen en los archivos de configuración de resolución inversa indican:
- Registro NS indica que es un servidor de nombres
- Registro PTR indica con el número más a la izquierda, que ese es el número de máquina para ese dominio, es decir, en nuestro caso al resolver inversamente 172.16.2.1, vemos que pertenece a la maquina pasarela.red2.redes.dis.ulpgc.es.
A continuación tenemos que hacer los enlaces de los ficheros que están presentes en /var/named/chroot/var/named/ y poner estos enlaces en /var/named/, para ello lo haremos con los siguientes comandos:
$ ln /var/named/chroot/var/named/named.root /var/named/named.root
$ ln /var/named/chroot/var/named/db.red2 /var/named/db.red2
$ ln /var/named/chroot/var/named/db.172.16.2 /var/named/db.172.16.2
$ ln /var/named/chroot/var/named/db.127.0.0 /var/named/db.127.0.0
Ya podemos reiniciar el servidor y ya funcionaría el servidor DNS.
$ /etc/init.d/named restart
Para que todas las maquinas de la red usen este nuevo servidor de nombres tenemos que modificar el archivo /etc/resolv.conf y poner que use el servidor de nombres presente en la maquina llamada pasarela.
/etc/resolv.conf
Nameserver 172.16.2.1
b-2) Al menos un Servidor Secundario del propio dominio
En nuestro caso el servidor secundario estará presente en la maquina llamada estación.
Para la configuración de un servidor secundario tenemos que realizar una instalación del servidor DNS Bind y proceder a incluir los siguientes archivos de configuración:
Los únicos archivos que debemos de crear, teniendo en cuenta que en la estación tambien se ha instalado el Chroot-Bind, son:
• /var/named/chroot/etc/named.conf
• /var/named/chroot/var/named/db.127.0.0
• /var/named/chroot/var/named/named.root
/var/named/chroot/etc/named.conf
options {
directory "/var/named";
};
zone "." IN {
type hint;
file "named.root";
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "db.127.0.0";
};
zone "red2.redes.dis.ulpgc.es" IN {
type slave;
file "slaves/db.red2";
masters { 172.16.2.1; };
};
zone "2.16.172.in-addr.arpa" IN {
type slave;
file "slaves/db.172.16.2";
masters {172.16.2.1; };
};
/var/named/chroot/var/named/named.root
; <<>> DiG 9.5.0b2 <<>> +bufsize=1200 +norec NS . @a.root-servers.net
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7033
;; flags: qr aa; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 20;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;. IN NS;; ANSWER SECTION:
. 518400 IN NS D.ROOT-SERVERS.NET.
. 518400 IN NS E.ROOT-SERVERS.NET.
. 518400 IN NS F.ROOT-SERVERS.NET.
. 518400 IN NS G.ROOT-SERVERS.NET.
. 518400 IN NS H.ROOT-SERVERS.NET.
. 518400 IN NS I.ROOT-SERVERS.NET.
. 518400 IN NS J.ROOT-SERVERS.NET.
. 518400 IN NS K.ROOT-SERVERS.NET.
. 518400 IN NS L.ROOT-SERVERS.NET.
. 518400 IN NS M.ROOT-SERVERS.NET.
. 518400 IN NS A.ROOT-SERVERS.NET.
. 518400 IN NS B.ROOT-SERVERS.NET.
. 518400 IN NS C.ROOT-SERVERS.NET.;; ADDITIONAL SECTION:
A.ROOT-SERVERS.NET. 3600000 IN A 198.41.0.4
A.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:503:ba3e::2:30
B.ROOT-SERVERS.NET. 3600000 IN A 192.228.79.201
C.ROOT-SERVERS.NET. 3600000 IN A 192.33.4.12
D.ROOT-SERVERS.NET. 3600000 IN A 128.8.10.90
E.ROOT-SERVERS.NET. 3600000 IN A 192.203.230.10
F.ROOT-SERVERS.NET. 3600000 IN A 192.5.5.241
F.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:500:2f::f
G.ROOT-SERVERS.NET. 3600000 IN A 192.112.36.4
H.ROOT-SERVERS.NET. 3600000 IN A 128.63.2.53
H.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:500:1::803f:235
I.ROOT-SERVERS.NET. 3600000 IN A 192.36.148.17
J.ROOT-SERVERS.NET. 3600000 IN A 192.58.128.30
J.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:503:c27::2:30
K.ROOT-SERVERS.NET. 3600000 IN A 193.0.14.129
K.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:7fd::1
L.ROOT-SERVERS.NET. 3600000 IN A 199.7.83.42
M.ROOT-SERVERS.NET. 3600000 IN A 202.12.27.33
M.ROOT-SERVERS.NET. 3600000 IN AAAA 2001:dc3::35;; Query time: 110 msec
;; SERVER: 198.41.0.4#53(198.41.0.4)
;; WHEN: Tue Feb 26 15:05:57 2008
;; MSG SIZE rcvd: 615
/var/named/chroot/var/named/db.127.0.0
$ORIGIN 0.0.127.in-addr.arpa.
$TTL 86400
@ IN SOA estacion.red2.redes.dis.ulpgc.es root.red2.redes.dis.ulpgc.es (
1; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; MinimumIN NS pasarela.red2.redes.dis.ulpgc.es
IN NS estacion.red2.redes.dis.ulpgc.es
1 IN PTR localhost.
Para hacer uso tambien de este servidor de DNS, tenemos que crear los enlaces en sus respectivas carpetas y ademas modificar el archivo /etc/resolv.conf de todas las máquinas que deseen usar este servidor secundario.
$ ln /var/named/chroot/etc/named.conf /etc/named.conf
$ ln /var/named/chroot/var/named/named.root /var/named/named.root
$ ln /var/named/chroot/var/named/db.127.0.0 /var/named/db.127.0.0
/etc/resolv.conf
Nameserver 172.16.2.1
Nameserver 172.16.2.2
b-3) El servidor primario sólo debe permitir descargas de zona de sus correspondientes secundarios.
Para permitir que las descargas de zona de sus correspondientes secundarios tenemos que añadir las siguientes líneas en sus respectivos archivos de configuración:
DNS primario:
/var/named/chroot/etc/named.conf
zone "red2.redes.dis.ulpgc.es" IN {
type master;
file "db.red2";
allow-transfer{172.16.2.2;};
};
zone "2.16.172.in-addr.arpa" IN {
type master;
file "db.172.16.2";
allow-transfer {172.16.2.2;};
};
allow-transfer { slaves; }; Con este parámetro le damos permiso a los servidores esclavos de DNS que puedan hacer una copia de la zona de DNS para el dominio.
DNS secundario:
/var/named/chroot/etc/named.conf
zone "red2.redes.dis.ulpgc.es" IN {type slave;
file "slaves/db.red2";
masters { 172.16.2.1; };
};
zone "2.16.172.in-addr.arpa" IN {
type slave;
file "slaves/db.172.16.2";
masters {172.16.2.1; };
};
b-4) Las descargas de zonas deberán firmarse digitalmente (TSIG).
Aplicar una firma digital a las descargas de zona nos permite incrementar la seguridad, ya que anteriormente la descarga de zona se permitia a una IP determinada o a un rango de ella, y cualquiera podia suplantar esa IP, con el riesgo de seguridad que ello conlleva, con la firma digital se soluciona este problema.
Para generar una firma digital empleamos el siguiente comando, que nos permite la generacion de esta con unas características determinadas:
dnssec-keygen -a hmac-md5 -b 128 -n HOST red2
Este comando ademas de generar la firma digital, nos crea 2 archivos que tendrán que ser colocados en /var/named/chroot/var/named, estos 2 archivos con sus correspondientes rutas son:
- /var/named/chroot/var/named/Kred2.+157+55493.key
- /var/named/chroot/var/named/Kred2.+157+55493.private
estos archivos también deben de ser enlazados con el directorio /var/named/
$ ln /var/named/chroot/var/named/Kred2.+157+55493.key /var/named/Kred2.+157+55493.key
$ ln /var/named/chroot/var/named/Kred2.+157+55493.private /var/named/Kred2.+157+55493.private
A continuación procedemos a insertar la nueva configuración en los archivos named.conf
DNS primario
/var/named/chroot/etc/named.conf
zone "red2.redes.dis.ulpgc.es" IN {type master;
file "db.red2";
allow-transfer{key red2;};
};
zone "2.16.172.in-addr.arpa" IN {
type master;
file "db.172.16.2";
allow-transfer {key red2;};
};
key red2 {
algorithm hmac-md5;
secret "YonqS63NCb3GabZCEbZAZg==";
};
DNS secundario
var/named/chroot/etc/named.conf
key red2 {algorithm hmac-md5;
secret "YonqS63NCb3GabZCEbZAZg==";
};
server 172.16.2.1 {
keys {red2;};
};
Reiniciamos los servidores DNS y ya hacemos que las descargas de zona seas firmadas digitalmente.
$ /etc/init.d/named restart
b-5) Los servidores del propio dominio sólo deben responder de forma recursiva a máquinas del propio dominio.
DNS primario
/var/named/chroot/etc/named.conf
options{directory "/var/named"; // the default
allow-recursion {172.16.2.0/8;};
}
DNS secundario
/var/named/chroot/etc/named.conf
options {directory "/var/named";
allow-recursion { 172.16.2.0/8;};
};
b-6) Para aprovechar la cache de los servidores de nombre generales de la universidad, reduciendo el tráfico de red hacia el exterior y mejorando los tiempos de respuesta,todas la interrogaciones que realicen los servidores de nombres a petición de sus clientes deben llevarse a cabo a través de los servidores de nombres de la ULPGC anteriormente mencionados.
DNS primario
/var/named/chroot/etc/named.conf
options{directory "/var/named"; // the default
allow-recursion {172.16.2.0/8;};
forwarders {
193.145.138.100;
193.145.138.200;
};
};
DNS secundario
/var/named/chroot/etc/named.conf
options{directory "/var/named"; // the default
allow-recursion {172.16.2.0/8;};
forwarders {
193.145.138.100;
193.145.138.200;
};
};
b-7) Deberá realizarse el registro (log) de la actividad de los servidores en ficheros propios, separando al menos de forma independiente las interrogaciones al servidor y las transferencias de zona.
DNS primario
/var/named/chroot/etc/named.conf
logging {channel inter{
file "/var/log/inter" versions 3 size 15m;
print-time yes;
print-category yes;
};
channel zona{
file "/var/log/zone" versions 3 size 15m;
print-time yes;
print-category yes;
};
category queries {inter;};
category xfer-out {zona;};
};
DNS secundario
/var/named/chroot/etc/named.conf
logging {channel inter{
file "/var/log/inter" versions 3 size 15m;
print-time yes;
print-category yes;
};
channel zona{
file "/var/log/zone" versions 3 size 15m;
print-time yes;
print-category yes;
};
category queries {inter;};
category xfer-out {zona;};
};
la creación de los archivos de log, nos ha acarreado varios problemas, ya que por problemas de los permisos, no era posible la escritura de estos por parte del servidor de nombres, entonces para solucionarlo, se ha de cambiar el grupo del archivo, los permisos de escritura y reiniciar el servidor.
Viendo el archivo de log /var/log/messages fue por donde descubrimos este error ya que cuando lo consultamos nos aparece:
$ tail -80 /var/log/messages |grep named
Mar 20 17:56:10 pasarela named[11813]: logging channel 'zona' file '/var/log/zone': permission denied
Mar 20 17:56:10 pasarela named[11813]: logging channel 'inter' file
'/var/log/inter': permission denied
Los archivos los hemos creado con los siguientes comandos:
$ vim /var/named/chroot/var/log/zone
$ vim /var/named/chroot/var/log/inter
$ chgrp named /var/named/chroot/var/log/inter
$ chgrp named /var/named/chroot/var/log/zone
$ chmod 771 /var/named/chroot/var/log/inter
$ chmod 771 /var/named/chroot/var/log/zone$ /etc/init.d/named restart
Gracias por la atención..