[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

¡Esta es una revisión vieja del documento!


En proceso de traducción. Victor

Sincronice su red con NTP

NTP ( Network Time Protocol ) permite la sincronización de reloj entre sistemas informáticos. El siguiente HOWTO describe:

  • configurando un servidor NTP en Slackware Linux;
  • Sincronizar PCs cliente con su servidor NTP local.

Introducción

Cuando varios usuarios manipulan datos compartidos en diferentes PC clientes en una red, es importante que todas estas máquinas estén sincronizadas. Esto es especialmente importante si comparte archivos a través de NFS, o si usa NIS para la autenticación centralizada. Obtendrás todo tipo de errores extraños si tus relojes no están sincronizados. Desafortunadamente, los relojes a bordo de los clientes no son lo suficientemente precisos.

Ahí es donde NTP ( Network Time Protocol ) es útil. Permite que las máquinas en red ajusten sus relojes para estar perfectamente sincronizados. Una serie de servidores de hora públicos en Internet permiten la recepción de la hora exacta. Desde este punto, podemos usar NTP de varias maneras.

  • El comando ntpdate realiza una corrección inicial del reloj del BIOS.
  • Este ajuste de una sola vez no es suficiente para un servidor que se supone que funciona 24/7, ya que su reloj se alejará gradualmente de la hora exacta. En ese caso, tenemos que configurar el daemon ntpd (envío con el paquete ntp ). Este demonio se pone en contacto con los servidores de hora públicos a intervalos regulares y procede con correcciones incrementales del reloj local.
  • El daemon ntpd puede a su vez configurarse como un servidor de tiempo para las máquinas cliente locales.

Es una buena práctica usar ntpdate para el ajuste inicial y ntpd para la sincronización de tiempo regular.

Consideraciones de Firewall

Los servicios NTP utilizan el puerto UDP 123. Abra este puerto si desea permitir que las máquinas remotas se conecten a su servidor NTP.

Sincronice un servidor LAN o un servidor público con un servidor NTP en Internet

Crear un archivo de registro vacío:

# touch /var/log/ntp.log

Visite http://www.pool.ntp.org y elija una lista de servidores de acuerdo a su país.

Configure el servicio NTP editando /etc/ntp.conf. Puede hacer una copia de seguridad del archivo ntp.conf existente y comenzar desde cero.

En el siguiente ejemplo, la lista de cuatro servidores se elige para la ubicación de mi empresa (Francia):

# /etc/ntp.conf

driftfile /etc/ntp/drift
logfile /var/log/ntp.log

server 0.fr.pool.ntp.org
server 1.fr.pool.ntp.org
server 2.fr.pool.ntp.org
server 3.fr.pool.ntp.org

server 127.127.1.0
fudge 127.127.1.0 stratum 10

restrict default nomodify nopeer notrap
restrict 127.0.0.1 mask 255.0.0.0

Aquí hay una pequeña explicación para algunas opciones:

  • La orden fudge 127.127.1.10 stratum 10 es un servidor “ficticio” que actúa como IP de reserva en caso de que la fuente de tiempo externa se vuelva momentáneamente inaccesible. Cuando esto suceda, NTP continuará trabajando y se basará en este servidor “interno”.
  • NTP tiene su propio arsenal de reglas para limitar el acceso al servicio, que se puede usar independientemente de un firewall. Las ordenes restrict en la configuración anterior evitan que las computadoras distantes cambien la configuración de los servidores (primera declaración restrict ), y la máquina está configurada para confiar en sí misma (segunda declaración restrict ).
  • Una declaración de “restrict” sin ningún argumento, pero seguida del nombre de host se reduce a “permitir todo”.

Gestiona el servicio NTP

Antes de iniciar el servicio, proceda a un ajuste inicial del reloj de su sistema:

# ntpdate pool.ntp.org
El comando ntpdate normalmente se considera obsoleto, pero aún así es útil cuando se realizan ajustes de tiempo importantes. La forma “ortodoxa” sería utilizar el comando ntpd -g , el reemplazo oficial de ntpdate , pero su uso fallará si el reloj de su sistema está apagado durante más de media hora..

Activar el servicio NTP:

# chmod +x /etc/rc.d/rc.ntpd

Gestionar el servicio NTP:

# /etc/rc.d/rc.ntpd start|stop|restart|status

Ahora muestre la lista de servidores a los que está conectada su máquina:

# ntpq -p
remote           refid      st t when poll reach   delay   offset jitter
==============================================================================
*panopea.unstabl 213.251.128.249  2 u   30   64  377   56.136  -249.48 80.680
+88-190-17-126.r 145.238.203.14   2 u   29   64  377   77.571  -205.94 94.278
+62.210.255.117  192.93.2.20      2 u   29   64  377   77.097  -249.57 85.641
-ntp.univ-poitie 145.238.203.10   3 u   29   64  377   57.747  -191.58 107.002
LOCAL(0)        .LOCL.          10 l  164   64  374    0.000    0.000 0.001

El pequeño asterisco * que precede a una de las líneas anteriores significa que su máquina está efectivamente sincronizada con el servidor NTP correspondiente.

La primera sincronización puede demorar unos minutos, a veces hasta media hora.

Sincronice su (s) PC (s) cliente (s) con su servidor NTP local

En una LAN, se considera una buena práctica sincronizar solo una máquina, el servidor, con un servidor público NTP, y las PC cliente con el servidor local. Esto ahorra ancho de banda y quita cierta carga de los servidores NTP públicos.

Como arriba, proceder a un ajuste inicial del reloj del sistema:

# ntpdate pool.ntp.org

Crear un archivo de registro vacío:

# touch /var/log/ntp.log

Ahora configure NTP para sincronizar con el servidor LAN. Reemplace la IP del ejemplo ( 192.168.2.1 ) con la IP de su servidor real:

# /etc/ntp.conf

driftfile /etc/ntp/drift
logfile /var/log/ntp.log

server 192.168.2.1

server 127.127.1.0
fudge 127.127.1.0 stratum 10

restrict default ignore
restrict 127.0.0.1 mask 255.0.0.0
restrict 192.168.2.1 mask 255.255.255.255
  • Las tres declaraciones “restrict” significan que estamos bloqueando todo el tráfico NTP, excepto el cliente y el servidor.

Activar e iniciar el servicio NTP:

# chmod +x /etc/rc.d/rc.ntpd
# /etc/rc.d/rc.ntpd start

Como se indicó anteriormente, use el comando ntpq -p para verificar si la sincronización fue correcta:

# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*192.168.2.1     81.19.16.225     3 u  916 1024  377    0.367    7.897   2.552
 LOCAL(0)        .LOCL.          10 l  10h   64    0    0.000    0.000   0.000
Una vez más, es posible que deba esperar unos minutos antes de que se realice la primera sincronización.

Supervisar el rendimiento de ntpd

Notará que el archivo de registro /var/log/ntp.log no contiene ninguna información sobre la precisión real del reloj de su sistema. Si es importante para usted, puede registrar las estadísticas de correcciones de tiempo aplicadas por el daemon NTP al reloj del sistema. Para hacer esto, agrega las siguientes líneas a/etc/ntp.conf:

statsdir /var/log/ntp/
statistics loopstats
filegen loopstats file loops type day link enable

Tienes que crear el statsdir manualmente. Una vez que los cambios de configuración estén en efecto, ntpd creará archivos llamados loops.YYYYMMDD en ese directorio. A continuación se muestra una línea de ejemplo de uno de estos archivos:

56690 3950.569 0.001199636 2.297 0.001830770 0.571576 10

El primer y segundo número son la hora UTC (expresada como Modified Julian Date y los segundos transcurridos desde la medianoche). El tercer y cuarto número son las compensaciones de tiempo (en segundos) y de frecuencia (en partes por millón). El quinto y sexto número son sus respectivas incertidumbres.

Para supervisar el rendimiento de ntpd , puede examinar el gráfico del desplazamiento del reloj o el desplazamiento de la frecuencia en función del tiempo:

$ awk '{printf("%f %f %f\n", $1+$2/86400, $3, $5)}' /var/log/ntp/loops.* > time
$ awk '{printf("%f %f %f\n", $1+$2/86400, $4, $6)}' /var/log/ntp/loops.* > freq
$ gnuplot
gnuplot> set xzeroaxis
gnuplot> plot 'time' with yerror
gnuplot> plot 'freq' with yerror

Con suficientes datos, el examen visual del gráfico le permitirá ver las particularidades en el rendimiento “ntpd”, en caso de que surjan. Por ejemplo, en el caso ilustrado en la siguiente figura, la rápida disminución del desplazamiento de frecuencia se debió al reemplazo de la unidad de alimentación de la máquina.

Sources

  • Originally written by Niki Kovacs
  • Performance monitoring section contributed by Dominik Drobek

 es:howtos:network_services:ntp ()
Esta traducción es más antigua que la página original y podría estar obsoleta. Ver lo que ha cambiado.