GNU/Linux >> Tutoriales Linux >  >> Linux

Chrony:un cliente y servidor NTP alternativo para sistemas similares a Unix

En este tutorial, discutiremos cómo instalar y configurar Chrony , un cliente y servidor NTP alternativo para sistemas tipo Unix. Chrony puede sincronizar el reloj del sistema más rápido con una mejor precisión de tiempo y puede ser particularmente útil para los sistemas que no están en línea todo el tiempo. Chrony es gratuito, de código abierto y admite variantes de GNU/Linux y BSD como FreeBSD, NetBSD, macOS y Solaris.

Instalación de Chrony

Chrony está disponible en los repositorios predeterminados de la mayoría de las distribuciones de Linux. Si está en Arch Linux, ejecute el siguiente comando para instalarlo:

$ sudo pacman -S chrony

En Debian, Ubuntu, Linux Mint:

$ sudo apt-get install chrony

En Fedora:

$ sudo dnf install chrony

Una vez instalado, inicie chronyd.service daemon si aún no se ha iniciado:

$ sudo systemctl start chronyd.service

Haz que se inicie automáticamente en cada reinicio usando el comando:

$ sudo systemctl enable chronyd.service

Para verificar si Chronyd.service se ha iniciado, ejecute:

$ sudo systemctl status chronyd.service

Si todo está bien, verá un resultado similar al siguiente.

● chrony.service - chrony, an NTP client/server
Loaded: loaded (/lib/systemd/system/chrony.service; enabled; vendor preset: ena
Active: active (running) since Wed 2018-10-17 10:34:53 UTC; 3min 15s ago
Docs: man:chronyd(8)
man:chronyc(1)
man:chrony.conf(5)
Main PID: 2482 (chronyd)
Tasks: 1 (limit: 2320)
CGroup: /system.slice/chrony.service
└─2482 /usr/sbin/chronyd

Oct 17 10:34:53 ubuntuserver systemd[1]: Starting chrony, an NTP client/server...
Oct 17 10:34:53 ubuntuserver chronyd[2482]: chronyd version 3.2 starting (+CMDMON 
Oct 17 10:34:53 ubuntuserver chronyd[2482]: Initial frequency -268.088 ppm
Oct 17 10:34:53 ubuntuserver systemd[1]: Started chrony, an NTP client/server.
Oct 17 10:35:03 ubuntuserver chronyd[2482]: Selected source 85.25.84.166
Oct 17 10:35:03 ubuntuserver chronyd[2482]: Source 85.25.84.166 replaced with 2403
Oct 17 10:35:03 ubuntuserver chronyd[2482]: Selected source 91.189.89.199
Oct 17 10:35:06 ubuntuserver chronyd[2482]: Selected source 106.10.186.200

Como puede ver, ¡el servicio Chrony está iniciado y funcionando!

Configurar Chrony

Los clientes NTP necesitan saber a qué servidores NTP deben contactar para obtener la hora actual. Podemos especificar los servidores NTP en el servidor o piscina directiva en el archivo de configuración NTP. Por lo general, el archivo de configuración predeterminado es /etc/chrony/chrony.conf o /etc/chrony.conf dependiendo de la versión de distribución de Linux. Para una mayor confiabilidad, se recomienda especificar al menos tres servidores.

Las siguientes líneas son solo un ejemplo tomado de mi servidor Ubuntu 18.04 LTS.

[...]
# About using servers from the NTP Pool Project in general see (LP: #104525).
# Approved by Ubuntu Technical Board on 2011-02-08.
# See http://www.pool.ntp.org/join.html for more information.
pool ntp.ubuntu.com iburst maxsources 4
pool 0.ubuntu.pool.ntp.org iburst maxsources 1
pool 1.ubuntu.pool.ntp.org iburst maxsources 1
pool 2.ubuntu.pool.ntp.org iburst maxsources 2
[...]

Como puede ver en el resultado anterior, NTP Pool Project se ha establecido como el servidor de tiempo predeterminado. Para aquellos que se preguntan, el proyecto de grupo NTP es el grupo de servidores de tiempo que proporciona el servicio NTP para decenas de millones de clientes en todo el mundo. Es el servidor de tiempo predeterminado para Ubuntu y la mayoría de las otras distribuciones principales de Linux.

Aquí,

  • el estallido se utiliza para acelerar la sincronización inicial.
  • las fuentes máximas refiere el número máximo de fuentes NTP.

Asegúrese de que los servidores NTP que ha elegido estén bien sincronizados, sean estables y estén cerca de su ubicación para mejorar la precisión de la hora con las fuentes NTP.

Administrar Chronyd desde la línea de comandos

Chrony tiene una utilidad de línea de comandos llamada chronyc para controlar y monitorear el chrony demonio (chronyd).

Para comprobar si chrony está sincronizado, podemos usar el seguimiento comando como se muestra a continuación.

$ chronyc tracking
Reference ID : 6A0ABAC8 (t1.time.sg3.yahoo.com)
Stratum : 3
Ref time (UTC) : Wed Oct 17 11:48:51 2018
System time : 0.000984587 seconds slow of NTP time
Last offset : -0.000912981 seconds
RMS offset : 0.007983995 seconds
Frequency : 23.704 ppm slow
Residual freq : +0.006 ppm
Skew : 1.734 ppm
Root delay : 0.089718960 seconds
Root dispersion : 0.008760406 seconds
Update interval : 515.1 seconds
Leap status : Normal

Podemos verificar las fuentes de tiempo actuales que usa chrony con el comando:

$ chronyc sources
210 Number of sources = 8
MS Name/IP address Stratum Poll Reach LastRx Last sample 
===============================================================================
^- chilipepper.canonical.com 2 10 377 296 +102ms[ +104ms] +/- 279ms
^- golem.canonical.com 2 10 377 302 +105ms[ +107ms] +/- 290ms
^+ pugot.canonical.com 2 10 377 297 +36ms[ +38ms] +/- 238ms
^- alphyn.canonical.com 2 10 377 279 -43ms[ -42ms] +/- 238ms
^- dadns.cdnetworks.co.kr 2 10 377 1070 +40ms[ +42ms] +/- 314ms
^* t1.time.sg3.yahoo.com 2 10 377 169 -13ms[ -11ms] +/- 80ms
^+ sin1.m-d.net 2 10 275 567 -9633us[-7826us] +/- 115ms
^- ns2.pulsation.fr 2 10 377 311 -75ms[ -73ms] +/- 250ms

La utilidad Chronyc puede encontrar las estadísticas de cada fuente, como la tasa de deriva y el proceso de estimación de compensación, utilizando sourcestats comando.

$ chronyc sourcestats
210 Number of sources = 8
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
chilipepper.canonical.com 32 16 89m +6.293 14.345 +30ms 24ms
golem.canonical.com 32 17 89m +0.312 18.887 +20ms 33ms
pugot.canonical.com 32 18 89m +0.281 11.237 +3307us 23ms
alphyn.canonical.com 31 20 88m -4.087 8.910 -58ms 17ms
dadns.cdnetworks.co.kr 29 16 76m -1.094 9.895 -83ms 14ms
t1.time.sg3.yahoo.com 32 16 91m +0.153 1.952 +2835us 4044us
sin1.m-d.net 29 13 83m +0.049 6.060 -8466us 9940us
ns2.pulsation.fr 32 17 88m +0.784 9.834 -62ms 22ms

Si su sistema no está conectado a Internet, debe notificar a Chrony que el sistema no está conectado a Internet. Para hacerlo, ejecute:

$ sudo chronyc offline
[sudo] password for sk: 
200 OK

Para verificar el estado de sus fuentes NTP, simplemente ejecute:

$ chronyc activity
200 OK
0 sources online
8 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address

Como puede ver, todas mis fuentes NTP están inactivas en este momento.

Una vez que esté conectado a Internet, simplemente notifique a Chrony que su sistema está nuevamente en línea usando el comando:

$ sudo chronyc online
200 OK

Para ver el estado de las fuentes NTP, ejecute:

$ chronyc activity
200 OK
8 sources online
0 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address

Para obtener una explicación más detallada de todas las opciones y parámetros, consulte las páginas man.

$ man chronyc
$ man chronyd

Y, eso es todo por ahora. Espero que esto haya sido útil. En los tutoriales posteriores, veremos cómo configurar un servidor NTP local usando Chrony y configurar los clientes para usarlo para sincronizar la hora.

¡Estén atentos!


Linux
  1. Cómo configurar el servidor y el cliente NTP en Debian 9 Stretch Linux

  2. Cómo instalar el servidor y el cliente NTP en Ubuntu 18.04 LTS

  3. UnixBench:una suite de referencia para sistemas similares a Unix

  4. ¿Mapa de clave pública-privada Ssh para el cliente?

  5. Cómo instalar y configurar el servidor y el cliente NTP de Linux

Cómo configurar un servidor y cliente NTP en Ubuntu 20.04 LTS

Cómo configurar el servidor y el cliente NTP en Debian 10

Cómo configurar el servidor y el cliente NTP en Debian 11

Cómo instalar el servidor NTP y los clientes en Ubuntu 20.04 LTS

Cliente y servidor NIS

Cómo configurar el servidor y el cliente NTP en Ubuntu 20.04 LTS