Vous êtes sur la page 1sur 11

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de D...

Pgina 1 de 11

Publicaciones

Bolet n

Web-DNS. Actualizacin descentralizada del Servidor de Nombres de Dominio de la Universidad de Sevilla


Daniel Daza y Gustavo Rodrguez

1.- Que es Web-DNS


Web-DNS es una aplicacin basada en Web para la gestin descentralizada de la Base de Datos del Servidor DNS de la Universidad de Sevilla.

2.-Introduccin. Un poco de historia


El mantenimiento del servidor primario del DNS de la Universidad de Sevilla (dominio us.es), est encomendado al Centro de Proceso de Datos (CPD) que tiene la responsabilidad de la gestin del espacio de direcciones IP propio y la asignacin de stas, a las distintas redes de rea local que forman la Red Informtica de la Universidad de Sevilla (RIUS). Una caracterstica peculiar de sta Universidad es la dispersin geogrfica que presentan sus campus, de los que existen tres de gran tamao con ms de 15.000 alumnos y varias facultades y escuelas, dos de tamao medio con ms de 3.000 alumnos y otros cinco con una sola escuela o facultad, pero con un nmero mnimo de 1.500 alumnos; lo que hace un total de veinticinco escuelas o facultades, a los que hay que aadir otros centros de menor tamao, que proporcionan servicios a la comunidad universitaria. Por otro lado si bien existe en algunos campus, personal que puede realizar labores de apoyo informtico, la mayor parte de los centros carecen de l, por lo que las tareas han de hacerse por el propio personal del CPD. La Universidad de Sevilla no ha sido ajena al BOOM general que se ha producido en la demanda de conexiones a la red en los ltimos aos, aumentado ms si cabe en nuestro caso, por la coincidencia con la dotacin de una infraestructura de comunicaciones basada en ATM, que ha permitido al usuario la obtencin de un ancho de banda apreciable. En un principio el usuario que quera conectarse a la red, solicitaba al CPD una direccin IP y para ello rellenaba un formulario, en el que indicaba los datos ms esenciales de la maquina (tipo, modelo, nmero de serie, direccin ethernet, etc.) y los suyos propios (nombre, telfono, etc.). Estos datos se completaban con otros aadidos por los responsables del servicio (direccin IP, mscara de red, gateway, etc.) y el conjunto constitua el documento formal de control que permita la conexin. Sin embargo, era el propio usuario el que explcitamente tena que solicitar que se diera de alta la mquina en el DNS, aunque posteriormente en cualquier momento poda solicitarlo.

Como es natural cuando la demanda no era grande, no haba muchos problemas derivados de la recepcin y el proceso manual de las solicitudes, pero en el caso de que se diera una actuacin sobre el DNS (alta, baja, modificacin), si haba que afrontar la posibilidad de errores al manipular los ficheros de la Base de Datos del DNS.

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de D... Pgina 2 de 11

Al aparecer en la red la posibilidad de acceder a la informacin por medio de navegadores Web, se dise una pgina en el servidor del CPD con un formulario similar al de papel cuyo acceso, en un principio, se restringi por medio de un nombre de usuario y una palabra de paso y posteriormente mediante la colocacin del formulario en un Servidor Web seguro. A este sistema solo podan acceder el personal de apoyo de cada Campus y el personal del CPD. Cada solicitud generaba un correo que formalizaba la peticin. Con esto se consigui reducir el tiempo de llegada de la solicitud. Una vez recibida la peticin, esta deba ser procesada manualmente. Se tenan que comprobar los datos de la peticin y modificar la Base de Datos del Servidor DNS con toda la problemtica que esto lleva consigo: realizacin de una copia de seguridad, actualizacin "a mano" de los ficheros de la Base de Datos, reinicializar el servidor de DNS para que los cambios tuvieran efecto, comprobar el correcto funcionamiento, archivar la peticin y comunicar que la peticin se haba realizado.

3.- Necesidades
Se plante la posibilidad de agilizar todo lo posible este proceso. Conseguir al mismo tiempo simplificarlo y reducir la posibilidad de errores. Crear una aplicacin que automatizara todo lo posible la parte manual del proceso. Lo ideal seria que desde los centros perifricos en los que fuera posible, se pudiera actualizar directamente la Base de Datos del Servidor DNSde manera automtica, pero manteniendo dos criterios: que dicha actualizacin fuera segura y fcil de realizar. Crear una aplicacin que accediera a la Base de Datos, pero aislando la complejidad del formato de la misma de manera que fuera fcil realizar las actualizaciones y al mismo tiempo, que las actualizaciones fueran correctas, sin errores e inmediatas. Para los casos en que se tuviera que modificar los datos de un sistema y ste se encontrara en un Centro que no dispusiera de personal de apoyo, se podra seguir realizando la peticin mediante el formulario en papel, pero en vez de actualizar la Base de Datos del DNS manualmente, la realizara algn miembro del Grupo de Comunicaciones del CPD utilizando la aplicacin. Insistiendo en el criterio de la seguridad, se pretenda adems de impedir que personas desconocidas pudieran manipular los datos del Servidor DNS, garantizar que las personas que accedieran a la aplicacin solo pudieran manipular la informacin que les afectara directamente. Cada centro perifrico tiene un rango de direcciones asignadas, ciertas subredes sobre las que tienen una responsabilidad ms directa. No debera ser posible que desde un Centro Perifrico se pudieran hacer modificaciones que afectaran a otro Campus o ms aun a la generalidad de la Red de la Universidad. Por otra parte se exiga que el proceso manual continuara siendo posible, para casos especiales, aquellos que no contemplara la aplicacin o simplemente para el control por parte de los gestores del Servidor DNS. Otro requisito era que se siguiera teniendo constancia de las modificaciones que se realizan sobre la Base de Datos del Servidor DNS, en forma de correo para su posterior archivo en papel. En general estos fueron los requisitos previos que se tuvieron en cuenta al desarrollar la aplicacin, pero luego surgieron otros. Por ejemplo, se planteo lo til que seria tener una base de Datos que guardara las direcciones Ethernet asociadas a las direcciones IP. Hasta ese momento, sta informacin solo constaba en los archivos en papel de cada peticin y dicha informacin no es posible almacenarla en la base de datos del Servidor DNS. Tambin se planteo que dicha aplicacin pudiera ser utilizada como herramienta de consulta de la Base de Datos del DNS y poder realizar por ejemplo: listados por subredes, consultas por nombres de Host, estadsticas de ocupacin de subredes, o obtener esa informacin que siempre resulta tan importante a la hora de configurar el protocoloTCP/IP en una maquina, como es su gateway de salida y su mscara de red.

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de D... Pgina 3 de 11

4.- Solucin
De stas necesidades surge la aplicacin Web-DNS. sta consta de una serie de pginas Web con formularios de entrada de datos, pginas Web de salida de resultados, programas CGI y tres ficheros de configuracin. La aplicacin es muy modular: hay un proceso CGI para cada accin tpica (un CGI para dar de alta, un CGI para realizar consultas por direccin IP, etc.) por lo que resultara muy fcil ampliarla con nuevas funciones. A la aplicacin se accede desde uno de los Servidores Web Seguros del CPD de la Universidad de Sevilla, de tal forma que su uso est restringido a determinados usuarios que desde los centros perifricos realizan las actualizaciones y a los miembros del grupo de Comunicaciones del CPD. De manera fcil y a travs de mens, el usuario puede realizar las tareas tpicas que se pueden realizar con cualquier aplicacin de Base de Datos: altas, bajas, modificaciones, consultas, listados y estadsticas. Cualquier persona que tenga acceso al Servidor Seguro, puede acceder a la aplicacin en modo consulta, en este caso, adems de los operadores de los Centros Perifricos, todo el personal del Centro de Proceso de Datos.

5.- Entorno Tecnolgico


La aplicacin se desarroll con herramientas muy simples: un editor de texto para hacer las pginas Web y los script, y un par de compiladores de C (Borland C 3.1 para DOS durante la programacin y depuracin y GNU C 2.7.2.3 para obtener la aplicacin definitiva). La primera versin de la aplicacin se realizo en unos 6 meses. Gracias a la modularidad y a la buena acogida por parte de los usuarios, se ha seguido ampliando las capacidades de la aplicacin a lo largo de estos dos ltimos aos. En cuanto a los requisitos para la instalacin y ejecucin de la aplicacin en el servidor, es aconsejable que tanto el Servidor primario DNS como el Servidor Web en el que se ejecute la aplicacin, estn en la misma maquina, ya que los CGI de la aplicacin acceden directamente a los ficheros de la Base de Datos. Si la aplicacin y el Servidor DNS no se encontraran en la misma maquina, se podra utilizar algn sistema que permitiera exportar el directorio de la Base de Datos para que fuera accesible por la aplicacin. La aplicacin se ha desarrollado para Sistemas tipo Unix. Por otra parte, dadas las necesidades de seguridad, el servidor Web debe de usar el protocolo SSL y autentificacin de cliente. En nuestro caso tanto el Servidor primario de DNScomo el Servidor Web seguro residen en un IBM Risc 6000con Sistema Operativo Aix versin 4.2, 128Megabytes de memoria, 1'5 Gigabytes de disco, Servidor Web Netscape Enterprise Server versin 2.01 e inicialmente Bind versin 8.1 aunque recientemente se ha cambiado a la versin 8.2.2. El Servidor Webejecuta exclusivamente la aplicacin Web-DNS. En cuanto a los requisitos en los clientes, a nivel de software: Una pila TCP/IP y disponer de un navegador de Web compatible con el protocoloSSL y que disponga capacidades de visualizacin deFrames (marcos) y ejecucin de JavaScript. En cuanto al hardware, cualquier ordenador que sea capaz de ejecutar dicho software. Lo ms habitual es el uso de PC con sistema operativo Windows 95 y Netscape Comunicator Versin 4.5 como navegador Web.

6.- Uso de Web-DNS


La aplicacin Web-DNS es muy fcil e intuitiva de usar. Al acceder a la misma mediante un navegador aparecen dos zonas bien diferenciadas. En la parte superior, el men de la aplicacin con los botones de todas las opciones disponibles, y en la parte inferior el formulario de Altas que aparece por defecto siempre al iniciar el programa Web-DNS. Pulsando sobre los distintos botones del men aparecern en la parte inferior

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de D... Pgina 4 de 11

las pginas con los formularios asociados a las distintas opciones del programa. La aplicacin consta de dos opciones de men: uno para realizar operaciones sobreHost, y otro para realizar operaciones sobre direcciones e intercambiadores de correo. Cuando se accede a la aplicacin Web-DNS, lo hacemos usando un cierto usuario. El Servidor Web seguro recibe el certificado del cliente e identifica el certificado con un nombre de usuario y ste nombre se le proporciona a la aplicacin. Dependiendo del usuario, Web-DNS nos permitir realizar ciertas acciones de acuerdo con el perfil definido en la aplicacin para ese usuario. Se han creado una serie de usuarios que se corresponden con los operadores que existen en los distintos Campus de la Universidad de Sevilla, adems de los que existen dentro del propio CPD. Dependiendo del usuario con el que se accede a la aplicacin, se pueden realizar modificaciones sobre ciertas redes y ciertos dominios. Esto permite mantener la seguridad de que una persona no pueda realizar modificaciones en redes o dominios que son responsabilidad directa de otras personas o son generales de toda la Red Universitaria. Si una persona intenta realizar una modificacin que no esta de acuerdo con su perfil, se genera un mensaje de error. Este mensaje aparece en el navegador y adems es notificado al CPD mediante un correo. Las restricciones de seguridad solo afectan a las altas, bajas y modificaciones. Para las dems operaciones, Web-DNS no comprueba la identidad y, por tanto, pueden realizarlas cualquier persona que pueda acceder al Servidor Web seguro (cualquier persona que disponga de un certificado de nuestra Autoridad de Certificacin). Si por ejemplo queremos realizar un alta de una maquina, se accede a la pgina respectiva, se rellenan los campos del formulario que se nos presenta y se pulsa el botn para enviar los datos. La aplicacin en el servidor, procesa los datos y si son correctos actualiza la Base de Datos del DNS y nos devuelve el resultado. Si los datos introducidos en el formulario no son correctos, se muestra una pgina de error informando al usuario de dicha circunstancia.

El men de mantenimiento de Host, consta de consta de 8 opciones: Altas : Desde ste formulario se realizan las altas de Host en el Servidor DNS. Adems tambin se utiliza para crear nuevos Aliasde Host y aadir nuevas direcciones IP aHost ya existentes en la Base de Datos delDNS. Bajas : ste formulario se utiliza para realizar bajas de Host. Ya sea dar de baja una direccin IP de un Host (si est tuviera varias direcciones) o dar de baja completamente el Host. Tambin desde est formulario se pueden dar de baja nombres de Alias de Host. Modificaciones : Desde ste formulario se realizan las modificaciones en la direccinIP de un Host y/o modificaciones en el nombre de un Host. Tambin se pueden hacer modificaciones en el nombre de un Alias de un Host y modificaciones en la direccin Ethernet de una DireccinIP. Consultas : Con ste formulario se realizan consultas por direccin IP, direccinEthernet y varios tipos de consulta por nombre (de Host o de Alias). Listados : De igual forma, desde ste formulario se realizan los listados por direccionesIP y direcciones Ethernet.

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de D... Pgina 5 de 11

Logs : Desde sta opcin se puede consultar los ficheros histricos de acciones y errores que se generan al ejecutar la aplicacin. Por ejemplo, cada vez que un usuario realiza un alta o una consulta, o cada vez que al usar la aplicacin, se produce un error, se guarda en el histrico la accin, el usuario, fecha y hora y la direccin IP desde donde se realiz. Los usuarios normales solo pueden consultar los logs de acciones o errores que han provocado ellos mismos, mientras que los administradores pueden consultar todo el Histrico. Estadsticas: Desde sta opcin se pueden obtener estadsticas grficas de la Base de Datos del Servidor DNS sobre los dominios, subredes e intercambiadores de Correo. Peticiones : Est opcin es una puerta abierta que permite a los usuarios que no tienen derechos para realizar una cierta accin con la aplicacin Web-DNS, que soliciten una peticin completando est formulario, y un miembro del grupo de comunicaciones del CPD la comprobar y realizar. El men demantenimiento de direcciones de Correo, tiene 5 opciones: Altas : Desde ste formulario se realizan las altas de Direcciones de Correo. Se puede crear la relacin de un Host real o una Direccin de Correo virtual con un Host que actuara como Intercambiador de Correo del Host o Direccin. Bajas : De igual forma, ste formulario se utiliza para realizar bajas de Direcciones de Correo. Modificaciones : Desde ste formulario se pueden realizar modificaciones en las Direcciones de correo: se pude modificar los nombres y dominios de la Direccin de Correo, del Intercambiador de Correo o el valor de preferencia. Consultas : Con ste formulario se realizan consultas de Direcciones de Correo. La utilidad de ste formulario est en que si se utiliza la consulta de Host para buscar Direcciones de Correo virtuales, stos no aparecern ya que no existen como Host reales (no tienen direccin IP). Se puede utilizar est consulta para estos casos. Logs : Igual que en el men de mantenimiento de Host.

7.- Funcionamiento de Web-DNS


Asociado a cada formulario existe un programaCGI. Estos programas son Shell-Script que a su vez llaman a programas binarios escritos en C. Los Shell-Script se encargan fundamentalmente de crear un entorno adecuado para la ejecucin de los binarios. Se definen parmetros de entorno con las rutas a los ficheros de la Base de Datos del DNSy de configuracin del Web-DNS. Adems, se encargan de generar la estructura general del documento HTML que se devuelve al navegador; llaman al binario y dependiendo del resultado de ste, se enva el correo al grupo de Comunicaciones de CPD con los datos del formulario y se imprimen dichos datos. Los binarios se encargan del resto: reciben los parmetros del formulario y los comprueban. Si son correctos, se realiza una copia de seguridad de los ficheros afectados, se actualizan los Serial de los ficheros a modificar y se realiza la modificacin en la Base de Datos. Una vez realizado esto, se genera el ncleo del documento HTML que se le enviara al usuario y el contenido del correo. El correo con los datos de la peticin se enva tanto a la persona que la produjo como a los miembros del Grupo de comunicaciones del CPD. Si los datos son incorrectos, generan el ncleo de la pginaHTML con el mensaje de error.

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de D... Pgina 6 de 11

Una de las caractersticas ms interesantes de Web-DNS es la generacin de formularios dinmicos. Los formularios de la aplicacin contienen campos con valores por defecto, como por ejemplo los sudominios o las subredes de RIUS. Si se crea un nuevo subdominio, habra que cambiar todas las pginas Web que contienen esa informacin. Los formularios no contienen esta informacin de manera esttica, sino que contienen variables que son resueltas en tiempo de ejecucin consultando el fichero named.conf. Cuando un usuario pulsa uno de los botones de acciones de los mens, no recibe directamente la pgina Web con el formulario, sino que un proceso CGI interpreta la pgina con el formulario resolviendo las variables que se encuentre. As, realizando los cambios oportunos en named.conf, siempre los formularios que recibe el usuario estn actualizados. Web-DNS permite dos modos de funcionamiento. Uno, para cada peticin de alta, baja o modificacin, una vez que se ha hecho la modificacin sobre los ficheros de la Base de Datos, se genera una seal de reinicializacin del demonio namedpara que los cambios tengan efecto inmediato. El otro modo, es diferido: se realizan las modificaciones oportunas sobre los ficheros de la Base de Datos, pero no se re-inicializa el named. Hay un proceso peridico en el sistema que re-inicializa el named para que se tengan en cuenta todos los cambios realizados. Nosotros utilizamos ste segundo sistema. Por otra parte, teniendo en cuenta que ste programa puede ser utilizado por varias personas al mismo tiempo, y que esto podra provocar problemas de concurrencia en el acceso a los ficheros de las Bases de Datos, se ha usado como mtodo de seguridad un semforo para la aplicacin. En este caso, se ha definido un semforo con dos posibles valores: verde y rojo, como los semforos de circulacin. Cuando un usuario realiza una peticin, se ejecuta el CGI asociado a la peticin. Nada mas iniciarse el CGI, intenta colocar el semforo en rojo para apropiarse en exclusividad de las Bases de Datos y que ningn otro usuario pueda realizar una modificacin mientras se este procesando la suya. Al terminar, se vuelve a colocar el semforo en verde y finaliza su ejecucin. Si un CGI intenta colocar el semforo en rojo y ya lo est (la Base de Datos esta en uso por otro usuario), el proceso espera hasta que se libera y pueda poner el semforo en rojo. Los registros SOA de los ficheros de la Base de Datos del DNS tienen un elemento llamado Serial. El Seriales un cdigo numrico que indica cuando fue la ultima vez que se modifico el fichero. El formato es aaaammddcc, dondeaaaa es el ao, mm es el mes, dd es el da y cc es l numero de versin dentro de ese da. Web-DNS cada vez que realiza una modificacin en algn fichero que tenga Serial, actualiza el valor del mismo. Adems realiza una copia de seguridad de todos los ficheros que modifica, con el mismo nombre pero aadindole al final del nombre el carcter '_' y el ao, mes y da de la actualizacin. Web-DNS siempre realiza copias de seguridad ante cualquier modificacin y nunca borra fsicamente ninguna lnea de los ficheros sino que comenta las lneas. Como el primer cdigo cc que se utiliza es el 01 y el mayor posible con dos dgitos es 99, se puede observar que solo son posibles un mximo de 99 modificaciones en un fichero de la Base de Datos del DNS en un da. De echo, en la actual implementacin, el programa no permite mas modificaciones sobre un fichero si ya se encuentra al mismo con el valor deserial a 96. Se reserva los siguientes valores para actualizaciones "a mano" de urgencia.

8.- Ficheros de configuracin de Web-DNS


Las versiones mas modernas del Bind tienen como principal fichero de configuracin a 'named.conf' (WebDNS tambin es capaz de manejar el fichero named.boot que se usa en versiones anteriores). Existen adems otros ficheros de configuracin para la propia aplicacin Web-DNS: 'dns.cfg': Contiene informacin necesaria para dar de alta en la Base de Datos delDNS. Por cada dominio y subred, se indica en que fichero delDNS hay que realizar el alta. Tambin incluye las distintas mscaras de red y los gateway de salida.

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de D... Pgina 7 de 11

'usersdns.cfg': Contiene la informacin referente a los perfiles de cada usuario con la aplicacin WebDNS. 'ethernet.cfg': Contiene la ruta donde se encuentra la Base de Datos de direcciones Ethernet y sus ficheros. Por analoga podramos decir que 'ethernet.cfg' es en la Base de Datos de direccionesEthernet lo que 'named.conf' es en la base de Datos del DNS. Puede darse el caso de que si usamos directivas 'include' en los ficheros directos de la Base de Datos del DNS, la informacin que nos proporciona 'named.conf' no sea suficiente para saber en que fichero tenemos que dar de alta una cierta direccin IP. Se usa 'dns.cfg' para obtener dicha informacin. Por cada dominio e intervalo de red, se indica en que fichero directo hay que realizar el alta. Adems, como informacin que se proporcionara en las consultas, tambin se guarda la mscara de red y elgateway respectivo del intervalo de red. El ficherodns.cfg solo se usa para altas y consultas (informacin sobre mscaras de red y gateways); para realizar bajas o modificaciones, Web-DNS solo necesita la informacin proporcionada por named.conf.Ejemplo de fichero dns.cfg: ;********************************************************************************** ; fichero dns.cfg de configuracin de Web-DNS ; ; FORMATO: ; SUBDOMINIO ; IP_INICIAL IP_FINAL MASCARA GATEWAY FICHERO_A_INSERTAR ; ;********************************************************************************** ; DOMINIO us.es ;********************************************************************************** ; us.es 150.214.9.0 150.214.9.255 255.255.255.192 150.214.9.1 vlan-default.hosts 150.214.130.0 150.214.130.255 255.255.255.0 150.214.130.1 filoygeo.hosts ... 150.214.186.64 150.214.186.127 255.255.255.192 150.214.186.65 cpd.hosts 150.214.186.128 150.214.186.255 255.255.255.128 150.214.186.129 enfrente.hosts ... 193.147.162.0 193.147.162.255 255.255.255.0 193.147.162.1 esi162.hosts ;********************************************************************************** ; DOMINIO fie.us.es ;********************************************************************************** fie.us.es 150.214.141.0 150.214.141.255 255.255.255.0 150.214.141.1 fie.us.hosts 150.214.142.0 150.214.142.255 255.255.255.0 150.214.142.1 fie.us.hosts ;********************************************************************************** ; DOMINIO cs.us.es ;********************************************************************************** cs.us.es 150.214.141.0 150.214.141.255 255.255.255.0 150.214.141.1 cs.us.hosts 150.214.142.0 150.214.142.255 255.255.255.0 150.214.142.1 cs.us.hosts ... El fichero 'usersdns.cfg' contiene los privilegios de los usuarios con la aplicacin. Adems incluye una seccin especial donde se indican rangos de direcciones IP reservadas que nadie puede manipular con la aplicacin Web-DNS (seccin NADIE). Con esto se evita la posibilidad de accidentes y que por ejemplo se pueda dar de baja las direcciones IP de los propios servidores DNSprimario y secundarios o de cualquier otra maquina que consideremos importante. Los usuarios que no aparecen reflejados en este fichero, se les permite realizar consultas, listados y estadsticas, pero ningn tipo de alta, baja o modificacin. Si un usuario realiza una peticin y al confrontarla con los datos de este fichero, se comprueba que no est permitido que pueda realizarla, se genera un Intento de Violacin de Seguridad. Dicho mensaje de error se enva al CPD mediante correo y salida impresa.

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de D... Pgina 8 de 11

Ejemplo de fichero usersdns.cfg: ;************************************************************************* ; Fichero de privilegios de los usuarios de la aplicacin Web-DNS ; ; NADIE puede dar de alta o de BAJA en los intervalos ... ; en opalo.us.es y en los servidores DNS (jade.us.es, onix.us.es) ; ;************************************************************************* nadie ALTA 150.214.130.10 150.214.130.10 150.214.130.15 150.214.130.15 150.214.186.69 150.214.186.69 BAJA 150.214.130.10 150.214.130.10 150.214.130.15 150.214.130.15 150.214.186.69 150.214.186.69 ; ;Operador de Informtica ; informtica ALTA 150.214.138.0 150.214.138.255 150.214.141.0 150.214.141.255 150.214.142.0 150.214.142.255 150.214.187.0 150.214.187.255 BAJA 150.214.138.0 150.214.138.255 150.214.141.0 150.214.141.255 150.214.142.0 150.214.142.255 150.214.187.0 150.214.187.255 ALTA-ALIAS fie.us.es cs.us.es lsi.us.es BAJA-ALIAS fie.us.es cs.us.es lsi.us.es ALTA-MX us.es us.es VIRTUAL fie.us.es fie.us.es VIRTUAL fie.us.es cs.us.es VIRTUAL cs.us.es cs.us.es VIRTUAL cs.us.es us.es VIRTUAL lsi.us.es lsi.us.es VIRTUAL lsi.us.es us.es BAJA-MX us.es us.es VIRTUAL fie.us.es fie.us.es VIRTUAL fie.us.es cs.us.es VIRTUAL cs.us.es cs.us.es VIRTUAL cs.us.es us.es VIRTUAL lsi.us.es lsi.us.es VIRTUAL lsi.us.es us.es E-MAIL pablo@fie.us.es ... ; ;operador CPD, Paco Lobato ; operador ALTA BAJA ALTA-ALIAS BAJA-ALIAS ALTA-MX VIRTUAL BAJA-MX VIRTUAL ; E-MAIL

* * * * * * paco@cpd.us.es

* *

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de D... Pgina 9 de 11

Web-DNS, adems de ser una aplicacin de gestin de la Base de Datos del DNS, aade una Base de Datos de direcciones Ethernet que se relaciona con la Base de Datos del Servidor DNS. Esto nos permite por ejemplo que de igual forma que podemos realizar consultas por direcciones IP, tambin podamos consultar por direccin Ethernet. Simblicamente esta Base de Datos es una tabla en la que se almacenan el par (direccin IP, direccinEthernet). Fsicamente, esta tabla se implementa de una forma similar a como se implementa la Base de Datos del DNS, a partir de ficheros de texto planos. Por una parte existen una serie de ficheros directos, con los cuales, a partir de una direccinIP podemos obtener la direccin Ethernet, y una serie de ficheros inversos, con los cuales, a partir de una direccin Ethernet, podemos obtener la direccinIP. El fichero 'ethernet.cfg' nos proporciona la informacin necesaria para manipular la Base de Datos de direcciones Ethernet. Ejemplo de fichero ethernet.cfg: ;************************************************************************* ; ; Fichero de configuracin de Web-DNS ethernet.cfg ; ;************************************************************************* ; ; Directorio donde esta la Base de datos de Direcciones Ethernet ; directorio /etc/ethernet ; ; Ficheros directos (Bsqueda a partir de IP) ; Subred Fichero ; directo 150.214.9 9.dir 150.214.130 130.dir ... 193.147.179 179.dir ; ; Ficheros inversos (Bsqueda a partir de direcci n Ethernet) ; Nmero mgico Fichero ; inverso 0 0.inv 1 1.inv ... 96 96.inv Como se puede ver en el fichero de configuracin, los ficheros directos se obtienen a partir de la subred de la IP. Los ficheros inversos, se obtienen calculando un nmero mgico a partir de la direccinethernet. La forma de calcular ste nmero a partir de una direccin ethernet genrica x1:x2:x3:x4:x5:x6 es mediante una funcin Hashing de la forma: (x1+x2+x3+x4+x5+x6) modulo 97 Esta formula siempre da un nmero comprendido entre 0 y 96, distribuyendo homogneamente el resultado en dicho intervalo. El nmero 97 se decidi por ser un nmero primo lo suficientemente mayor que l nmero de subredes que actualmente dispone la Red de la Universidad de Sevilla. Por ejemplo, si queremos saber la direccin IP de la direccin ethernet 00:01:02:03:04:05, el nmero mgico sera (0+1+2+3+4+5) modulo 97 = 15 y por tanto el fichero inverso donde buscar seria el 15.inv. Como se puede observar, es muy fcil hacer modificaciones "a mano" en los ficheros directos de la Base de Datos de direcciones ethernet, pero ms complejo en los ficheros inversos. Teniendo presente esto, se han incluido una serie de script en la aplicacin, que se ejecutan desde terminal para poder realizar modificaciones en la Base de Datos de direcciones ethernet de forma manual. Ejemplos de ficheros directos e inversos de la Base de Datos de direcciones Ethernet (189.dir y 36.inv):

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de ... Pgina 10 de 11

; Direcciones Ethernet de la red 150.214.189 ; 150.214.189.1 00:00:0c:01:6d:d5 150.214.189.4 00:e0:29:0f:2b:12 ... 150.214.189.253 00:e0:29:0f:2b:10 150.214.189.254 00:00:c0:09:cd:e9

; Direcciones Ethernet cuyo nmero mgico es 36 ; 00:00:c0:3c:43:69 150.214.189.165 00:a0:c9:4c:a2:d5 150.214.189.116 ... 08:00:2b:e6:5d:93 150.214.189.17 Con todo esto logramos que el concepto de direccin Ethernet aparezca unido y ligado a la Base de Datos del DNS como si verdaderamente esa informacin se almacenara en ella.

9.- Conclusiones y lneas de trabajo


Que un operador desde un centro perifrico rellene un formulario en una pgina Web con los datos de un alta de una direccin IP y vea que sta se produce al instante y sin tener que esperar varios das o poder realizar consultas complejas por nombre, realizar listados, o analizar las estadsticas de ocupacin de las subredes o de aquellos Host que actan como intercambiadores de correo, ha sido un gran avance. Web-DNS ha supuesto una descarga de trabajo en las personas encargadas del mantenimiento del Servidor de Nombres de la Universidad de Sevilla sin que se haya perdido el control y la seguridad sobre el mismo. En estos momentos, estamos trabajando en una nueva aplicacin: elproyecto Pajarito (se llama pajarito porque "te lo canta todo"). La idea que subyace es la de confrontar la informacin que tenemos en Web-DNS con la realidad. Pajarito obtiene del Web-DNS una tabla de direcciones IP, Ethernety nombre de Host; y por otra, va SNMP realiza una consulta a un router y obtiene otra tabla con direccionesIP y Ethernet. La aplicacin cruza ambas tablas y nos da todas las incongruencias. Por ejemplo: Host de los que no se dispone de su direccin ethernet o es distinta a la que se tiene guardada en la Base de Datos del Web-DNS. Host que sin estar dados de alta en el DNS tienen trfico IP, o el caso contrario, Host que estn dados de alta en elDNS pero que no tienen trfico IP y desde cuando no lo tienen. Adems se va a trabajar en migrar la aplicacin Web-DNS a otros sistemas operativos y servidores Web distintos de Aix y Netscape Enterprise Server (inicialmente Solaris yApache+Mod_SSL). Por otra parte, todos los que lean ste articulo y estn interesados, pueden usar una versin de demostracin sobre una Base de Datos de pruebas, que se encuentra en http://www.cpd.us.es/dns . Hay dos usuarios definidos: 'dns' y 'dns1', con palabra de paso. El usuario 'dns' tiene derechos para acceder a todas las redes y dominios, mientras que 'dns1' solo puede acceder al dominio "us.es" y subredes 150.214.13.x y 150.214.14.x . Para saber la palabra de paso, pueden ponerse en contacto con nosotros mediante correo electrnico.

10.- Bibliografa
http://www.ietf.org/rfc/rfc1035.txt RFC (Request for comment) 1035: Domain Names-Implementation and specification de P. Mockapetris. La referencia oficial sobre DNS. "Los secretos de Internet" de John R. Levine y Carol Boroudi (Anaya multimedia, 1995). Una referencia mucho ms prctica sobre DNS. http://www.w3.org/pub/WWW Word Wide Consortium (W3C). Todo sobre laWeb.

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

RedIRIS - Web-DNS. Actualizacin descentralizada del Servidor de Nombres de ... Pgina 11 de 11

http://www.w3.org/hypertext/WWW/MarkUp/html3/CoverPage.html Especificacin oficial del Lenguaje HTML en su versin 3. "HTML Creacin de pginas Web" de Alonso lvarez Garca (Anaya multimedia, 1996). Una referencia practica sobre el lenguaje HTMLy construccin de programas CGI. http://developer.netscape.com/docs/manuals/javascript.html Referencias sobre el lenguajeJavaScript. http://www.iec.csic.es/criptonomicon/cgi/ Ideas muy prcticas sobre construccin de programas CGI seguros. http://home.netscape.com/eng/security/certs.html Referencia sobre Certificados digitales y protocolo SSL. "UNIX. Programacin avanzada" de Francisco Javier Mrquez (RA-MA, 1996). Un libro muy til para laprogramacin de sistemas Unix. Daniel Daza Muoz
daniel [at] cpd [dot] us.es

Gustavo Rodrguez Rodrguez


gusrodri [at] cpd [dot] us.es

Centro de Proceso de Datos (CPD) http://www.cpd.us.es Universidad de Sevilla

http://www.rediris.es/difusion/publicaciones/boletin/52/enfoque2.html

08/06/2013

Vous aimerez peut-être aussi