Servidor de tiempo NTP en linux Debian

El objetivo de este servicio es la sincronización de tiempo de la mayor parte de los equipos conectados dentro de la red.

La implantación de un servicio de sincronización ofrece obvias ventajas dentro de las siguientes áreas:
  • Correo electrónico y listas de distribución: Fiabilidad en las fechas de recepción de mensajes.
  • Proxy-caché: Es fundamental que en el intercambio de documentos entre servidores los diversos tiempos asociados al documento (última modificación, tiempo en la caché, etc…) sean precisos para que los documentos puedan considerarse consistentes de acuerdo con la política de refresco y expiración de documentos de la caché.
  • Seguridad en red: La detección de problemas de seguridad frecuentemente exige poder comparar logs de acceso de máquinas diferentes, para lo que es imprescindible la coincidencia horaria de las mismas.
  • En general, para un estudio detallado de cualquier servicio distribuido es muy útil el disponer de datos horarios precisos entre los equipos implicados, bien sea para la detección de problemas de hardware y/o software, así como para el estudio estadístico de los mismos.
¿QUE ES NTP?

NTP es un protocolo usado para sincronizar los relojes de host conectados entre sí mediante redes IP. Los mensajes NTP son llevados entre los hosts mediante los protocolos UDP/IP. Utilizando el puerto 123. Se basa en una arquitectura de servidores de tiempo y clientes en niveles llamados stratum.

Si las necesidades de ciertos procesos requiriesen un control más preciso del tiempo, se considerará la instalación de un stratum 1 conectado a un equipo GPS que permitirá cambiar la estructura de servidores a los stratum 2 y 3.

Este protocolo suministra mecanismos para sincronizar máquinas con una precisión del orden de nanosegundos sin ambigüedad en la fecha, Su funcionamiento se basa en la comparación periódica del tiempo del cliente con respecto al tiempo del servidor. Para lograr esto, se envían mensajes NTP a intervalos regulares. Ciertos campos de este mensaje NTP son modificados por el servidor de tiempo y por la máquina local (cliente) con marcas de tiempo correspondientes al momento de salida del mensaje, momento de llegada al servidor y momento de salida del servidor, que junto con el momento de llegada al cliente permite ajustar el tiempo del host cliente.

Como instalar y configurar un servidor NTP en debían Linux

Lo primero que vamos hacer es instalar el programa que nos sirve para bridar el servicio de tiempo, este programa se llama NTP y lo instalaremos por medio del siguiente comando:

sudo apt-get install ntp

Antes de empezar a editar el archivo de configuración del NTP, debemos sincronizar la hora con el servidor externo que utilizaremos para sincronizar la hora, este paso se hace para garantizar que nuestro servidor tenga la hora exacta. Esta sincronización inicial la vamos hacer con el siguiente comando:

ntpdate cronos.cenam.mx

Nota: en ocasiones el bash no nos deja ejecutar este comando, para esto debemos instalarlo asi:

sudo apt-get install ntpdate

Cronos.cenam.mx es el nombre de uno de los servidores externos de tiempo con el cual estaremos sincronizados, (se configuran varios servidores externos por si alguno falla) como también podemos ver en el comando hay una letra que es la “-u” esta se utiliza cuando se tiene inconvenientes con el firewall.

También podemos observar cual es el comportamiento de la ejecución del comando, en la cual se puede ver que corrige la fecha y la hora, también la dirección del servidor y el tiempo que tarda en actualizar


Ahora lo que vamos hacer es editar el archivo de configuración de nuestro servidor NTP. Este archivo lo vamos a editar con el siguiente comando:

gedit /etc/ntp.conf


A continuación nos aparecerá una ventana con unos parámetros que están configurados por defecto. Nosotros vamos a mostrar por pantallazos el archivo de configuración y subrayaremos lo que vamos a modificar.

Primer pantallazo

En el primer pantallazo encontramos una linea subrayada de color rojo en esta línea estamos indicando que nuestro servidor NTP se sincronizara con el servidor externo cronos.cenam.mx

Segundo pantallazo
En la parte de arriba encontramos subrayado con color verde otros servidores que trae configurado en archivo por default y en este ejemplo lo dejaremos también configurado con estos servidores de tiempo.

Y en la parte de abajo con color amarillo encontramos una línea que permite que todos los host de mi red puedan sincronizarse con el servidor NTP que va hacer el equipo al cual le estamos configurando este archivo.

Tercer pantallazo

La línea marcada de color verde le indica a los host de la red que cuando vayan a tener acceso al servidor de tiempo lo hagan con una autentificación y la línea con color rojo se coloca la dirección de broadcast de nuestra red.

Ahora el paso a seguir es iniciar el daemon del servidor NTP, este lo haremos con el siguiente comando:

/etc/init.d/ntp restart



Con la ejecución de este ultimo comando terminamos de configurar nuestro servidor de tiempo NTP ahora lo que procedemos hacer es a configurar nuestro cliente NTP.

Como instalar y configurar un cliente NTP

Ahora vamos a instalar y configurar un cliente NTP para nuestro servidor. La distribución que utilizaremos para configurar el cliente es Ubuntu.

Lo primero que vamos a hacer es probar si nuestro servidor quedo bien configurado y vamos a sincronizar la hora con el servidor interno que acabamos de configurar. Esta sincronización inicial la vamos hacer con el siguiente comando:

ntpdate –u 194.168.1.4

194.168.1.4 es la dirección IP del servidor NTP que acabamos de configurar y que desde ahora es el que nos sincronizara la hora mientras que el se sincroniza con uno externo.

Como podemos observar la hora y la fecha se sincronizan con la que tiene el servidor NTP.

Luego procedemos a instalar el NTP con el comando:

apt-get install ntp

Como podemos ver es el mismo software que utilizamos para configurar en servidor NTP, es que este software nos sirve tanto para configurarlo como servidor o cliente.

Ahora lo que vamos hacer es editar el archivo de configuración de nuestro cliente NTP. Este archivo lo vamos a editar con el siguiente comando:

gedit /etc/ntp.conf


A continuación nos aparecerá una ventana con unos parámetros que están configurados por defecto. Nosotros vamos a mostrar lo único que hay que configura en el archivo de configuración del NTP
Podemos ver en la imagen subrayado con rojo hay una linea donde se especifica el servidor NTP con el cual este cliente quiere sincronizar la hora y la fecha.

Ahora solo queda reiniciar nuestro daemon y esto lo hacemos con el siguiente comando:

/etc/init.d/ntp start

Ahora ya esta nuestro cliente sincronizado con nuestro servidor local. Una forma de de saber que este enlace esta bien hecho es mediante la ejecución del comando:

ntpdate 194.168.1.4


Como podemos ver en la imagen hay un error y dice que este enlace ya se está usando, lo que significa que nuestra conexión con el servidor NTP esta bien hecha y que cuando intentamos utilizar esta conexión de nuevo, nos arroja el mensaje que vemos en la imagen.

Pero si en cambio ejecutamos el comando con –u ahí si nos sincroniza por que como explique anteriormente este comando tiene privilegios frente al firewall.

Fuente  HUMANLIKS
Por: Andry Johan Arroyave

0 comentarios: