Sunteți pe pagina 1din 6

Network Time Protocol

Network Time Protocol (NTP) es un protocolo de Internet para sincronizar los relojes de los sistemas informticos a travs del ruteo de paquetes en redes con latencia variable. NTP utiliza UDP como su capa de transporte, usando el puerto 123. Est diseado para resistir los efectos de la latencia variable. Esquema de Sincronizacin Un servidor NTP primario, o Stratum 1, est conectado a un reloj de referencia de alta precisin. Esta referencia puede ser, por ejemplo, un reloj atmico, o un receptor de radio o GPS. Adems, este servidor cuenta con software para manejar el protocolo NTP. Otras computadoras, que funcionan como servidores Stratum 2, utilizan un software similar (usualmente el mismo), y consultan automticamente al servidor primario para sincronizar su reloj. A su vez, estos pueden sincronizar a otros servidores, que en este caso sern Stratum 3, y as podra seguirse hasta 16 niveles. La arquitectura tambin soporta que un cliente haga sus consultas a ms de un servidor y puede haber comunicaciones entre servidores de un mismo stratum. En la gura 1 puede verse un esquema de esta estructura. Cuanto ms alejado est una computadora del reloj de referencia, o sea, cuanto ms alto sea su Stratum, menos precisa ser la sincronizacin. Sin embargo, cualquier Stratum siempre ser suciente para que el reloj no se aleje ms de unos milisegundos de la hora real. Hasta ahora denimos que una mquina, que llamaremos cliente, puede sincronizarse con otra o con alguna referencia externa, y tambin puede comportarse como servidor, y utilizarse para sincronizar otras. Siempre que haya una asociacin entre dos mquinas, donde una se comporte como cliente, y otra como servidor, al cliente le corresponder el Stratum inmediatamente superior al del servidor. Hay otra posibilidad, donde dos o ms mquinas se conguran para comportarse entre s como clientes o servidores, segn quin est ms cerca de un reloj de referencia, o quien sea ms conable de acuerdo con el algoritmo que rige la sincronizacin por NTP. En este tipo de asociaciones, los servidores se llaman Peers. Para utilizar NTP en una organizacin, recomendamos instalar un servidor que se sincronice con varias fuentes externas. Este servidor ser la nica referencia horaria en la organizacin y todos los equipos estarn sincronizados con l. Opcionalmente, podra instalarse como fuente conable un receptor GPS1. Esta ltima opcin slo es recomendada en los casos en los que se requieran niveles de redundancia y conabilidad realmente altos. El servidor NTP instalado servir para que todos los equipos de la organizacin lo utilicen para ajustar sus relojes. Este ajuste ser de gran importancia ya que permitir a, entre otras, la correlacin de eventos entre diferentes equipos. La eleccin del equipo y el segmento de red donde se instale el servidor NTP queda a criterio de la administracin de la red. Generalmente, el lugar ms adecuado es la DMZ, o el lugar donde se encuentren los servidores que tienen contacto con el exterior. Sin embargo, como el protocolo NTP utiliza paquetes UDP para sincronizarse, y el cliente es quien enva un paquete para que el servidor responda, se podr situar el servidor NTP en cualquier punto de la red. Los clientes

internos de la red se podrn sincronizar directamente con este servidor. En el caso en que la organizacin posea gran cantidad de mquinas, o est distribuida en varios sitios remotos, ser conveniente la instalacin de varios servidores, para que cada uno sirva de sincronizador a un rea especca de cobertura. Otras opciones para la utilizacin de un servidor NTP en una organizacin, son la instalacin de software de NTP en el rewall, o en un Router. Se suele recomendar, por razones de seguridad, la conveniencia de no acumular servicios diferentes en el mismo equipamiento. Esta armacin puede tener sus excepciones cuando la poca envergadura de la red no justica mas servidores y trco pasando a travs del rewall.

Modos NTP NTP soporta tres modos distintos para pasar una seal de tiempo desde un ordenador a otro. En las operaciones tradicionales de cliente/servidor, un ordenador se apoyar en otro para obtener el tiempo. El cliente puede aceptar una seal de tiempo desde el servidor, pero no al contrario. El modo simtrico es parecido a las operaciones cliente/servidor, sin embargo, en l, la direccin de transmisin puede ser cambiada. Si el servidor de tiempo cae, el cliente original pasa a ser servidor y acta como una fuente para otros equipos. En otras palabras, las mquinas son pares.

La Figura muestra un grupo de tres pares que sirven el tiempo de forma redundante. Este grupo se emplea como interfaz final para la recepcin de clientes. Pero normalmente, slo grandes redes harn bien utilizando el modo asimtrico y consultando a mltiples servidores de tiempo en Internet. Todos los servidores retransmiten en el tercer modo NTP. Cada servidor retransmite un paquete vivo y le dice a los clientes la IP para enviar su peticin NTP; esto guarda la configuracin manual.

El Servicio Muchos sistemas Linux y Unix incluyen ntpd, el cual utiliza el fichero de configuracin /etc/ntp.conf. En el caso ms simple, que es lo tpico en la mayora de los sistemas Linux, este fichero tiene el nombre o la direccin IP del servidor de referencia. Para eliminar la necesidad de actualizar los servidores NTP continuamente que sus clientes utilizan como fuente de tiempo, el proyecto NTP en [2] ejecuta un alias DNS denominado pool.ntp.org. Resuelve un grupo de servidores pblicos. El Listado 1 muestra cmo puede ser de simple la configuracin. El servicio slo escoge una de las tres direcciones IP que el ntpd extrae del fichero. Los ordenadores deberan poner el tiempo lo antes posible en el proceso de arranque, incluso si no tienen un demonio local NTP. El comando ntpd-q se encarga temporalmente de esto lanzando al servidor NTP para conseguir el tiempo correcto. Luego el programa sale automticamente. Muchas distribuciones usan este mtodo en sus procesos de arranque. La llamada ntpdate proporciona resultados similares, pero esta herramienta no posee toda la delicadeza de que dispone su hermano mayor. El comando generalmente se considera anticuado, aunque an se utiliza con relativa frecuencia. Tiempo de Problemas En la sincronizacin del tiempo pueden ocurrir varios problemas. Para evitarlos ntpd tiene diversos trucos. Si el ordenador tiene el tiempo equivocado, el programa necesita impedir la sincronizacin rpidamente. Por ejemplo, si una tarea programada se estuviera ejecutando y ntpd decide retrasar el reloj, esta tarea programada se ejecutar de nuevo. El servicio necesita asegurar la continuidad, proporcionando incrementos lineales de tiempo sin saltos hacia adelante o hacia atrs. Para conseguirlo, establece el reloj en pasos pequeos, para ser ms preciso, incrementa o decrementa el tiempo del sistema un segundo por medio milln de

segundos por segundo, o un 0,05 por ciento. Y contina hacindolo hasta que el ordenador se encuentre sincronizado. Utilizando esta aproximacin, corregir el tiempo para un solo segundo cuesta 2000 segundos (esto es, ms de media hora). Para establecer el tiempo correcto tan pronto como sea posible, ntpd recurre a unos acuerdos. Si nota una desviacin de ms de 128 milisegundos, da saltos para configurar el tiempo de una vez. Luego utiliza la solucin de rotacin normal para poner a punto el tiempo por ajustes de milisegundos Fuentes de Tiempo Incorrectas Si tiene varios servidores en Internet como fuentes de tiempo, necesita algn tipo de proteccin contra los tiempos errneos. Un cliente NTP resuelve este problema comparando mltiples servidores de tiempo, y averigua cul de estos servidores es el ms cercano al UTC. Adems, sincroniza con uno de estos servidores. Es decir, el mejor algoritmo para esta tarea puede devolver resultados errneos alguna vez, como ocurre, por ejemplo, si varios servidores estn negociando. Hay un plan de contingencia para dominar esta situacin: si el servicio NTP nota un cierto grado de inexactitud (ms de 1000 segundos por ausencia), no corregir el tiempo. NTP puede manejar situaciones donde la conexin de red o el servidor de tiempo configurado estn cados. En este caso, el demonio mide la precisin del sistema, cronometra y corrige el tiempo basado en sus conclusiones, incluso si un tiempo de referencia no est temporalmente disponible. Conexiones Lentas Otro problema potencial es la variacin de la latencia de las conexiones en la conexin del servidor NTP. Una conexin ISDN o DSL sin una carga pesada tiene una latencia de unos cuantos miles de milisegundos, pero si una subida alta o una descarga estn en progreso sobre esta conexin, dicha latencia puede aumentar rpidamente a mltiples segundos en una u otra direccin. Como el servidor NTP no tiene ningn modo de averiguar variaciones de latencia, puede poner el reloj del sistema en la sucesin rpida. ntpd tiene un filtro especial para manejar esta clase de situacin, aunque habitualmente no est habilitado. Si necesita una solucin para este problema, puede habilitar el filtro aadiendo el siguiente comando tinkerhuffpuff 7200 a/etc/ntp.conf. Los clientes que se conectan a una red esperan trabajar sin mucho esfuerzo de configuracin, sera preferible utilizar la configuracin automtica de NTP. Existen varias soluciones para esta configuracin automtica. La alternativa menos flexible es la adoptada por Apple en sus ordenadores Mac. Si la administracin permite el servicio NTP, ste usa un servidor fijo por defecto. La coleccin de servidores de tiempo del proyecto NTP es una alternativa mucho ms sensible y ms simple. La versin 4 adems apoya la configuracin autnoma con el demonio utilizando muchas identidades para preguntar a los ordenadores de la red y encontrar automticamente el servidor NTP apropiado. Seguridad Los administradores siempre andan preocupados por la seguridad de la red y ms an en el caso de NTP. Bsicamente hay dos tipos distintos de ataques: dentro o fuera del protocolo.

Trabajando con el protocolo, un atacante puede suplantar una seal de tiempo incorrecta para cubrir las entradas de los registros o incluso lanzar un ataque de denegacin de servicio. Los administradores aadirn entradas restrict al fichero de configuracin simplemente para proteger al host (ver Listado 1). La nica proteccin contra seales de tiempo incorrectas es la criptografa. ntpd proporciona varias opciones . Como ntpd normalmente se ejecuta como el usuario con ID 0 (root), puede ser un destino potencial. Un buffer overflow sera todo lo necesario para obtener el control del sistema. La nica solucin es utilizar la opcin ntpd -q, esto es, utilizar una tarea programada para estar seguros de que el programa no est permanentemente ejecutndose.

Alternativas Para NTP NTP puede proporcionarle el tiempo de manera precisa, y el servicio es fcil de manejar. Sin embargo, hay un nmero de herramientas alternativas con funcionalidades similares. Una herramienta denominada RDate, por ejemplo, utiliza el protocolo de tiempo que se estandariz en el RFC 868 . RDate utiliza TCP o UDP en el puerto 37. RDate siempre emplea un valor binario para el tiempo del sistema en vez de un formato legible. Junto al formato RDate legible por el ordenador, se encuentra tambin el protocolo Daytime (RFC 867), que utiliza TCP o UDP en el puerto 13 para transferir una cadena de tiempo. Este formato es muy til para los errores y las depuraciones. Tanto con Rdate como con Daytime debe dejar abiertos los puertos en el cortafuego. Si abrir los puertos no es una de sus opciones, su nica alternativa es utilizar un puerto no bloqueado. El programa HTPDate se conecta a un servidor HTTP o HTTPS y coge el tiempo enviado por el servidor en su respuesta HTTP como referencia de tiempo. Pero si planea utilizar HTPDate, necesitar asegurarse de que est utilizando un servidor de confianza.

I.S.C. ERICK ALEJANDRO AK BAQUEIRO

http://es.wikipedia.org/wiki/Network_Time_Protocol http://www.linux-magazine.es/issue/13/NTP.pdf http://www.arcert.gov.ar/webs/tips/NTPv1.0.pdf

S-ar putea să vă placă și