El tiempo juega un papel importante en servidores linux especialmente cuando se utilizan en la banca, bolsas de valores y otros sectores financieros. Si queremos que todos nuestros servidores Linux tengan la hora correcta, entonces debemos configurar algunos cliente NTP que obtendrá la hora correcta siempre desde servidores NTP remotos y, si es necesario, realiza los ajustes necesarios para sincronizar la hora.
En este artículo, demostraremos cómo podemos sincronizar la hora con servidores NTP en Linux Server utilizando Chrony (NTP Client).
Instale Chrony en el sistema CentOS / RHEL / Fedora
Para instalar Chrony en CentOS, RHEL y Fedora System, ejecute el siguiente comando yum o dnf
~]# yum install chrony -y Or ~]# dnf install chrony -y
Instale Chrony en el sistema Debian/Ubuntu
Para instalar Chrony en sistemas Debian y Ubuntu, ejecute el siguiente comando apt,
~]$ sudo apt install chrony -y
Una vez que el chrony está instalado en el servidor Linux, ofrece dos programas,
- cronica : Es la interfaz de línea de comandos de chrony
- cronyd : Es el daemon para chrony que inicia y habilita el servicio chrony durante el reinicio.
Archivo de configuración de Chrony
El archivo de configuración para Chrony es “/etc/chrony.conf” , el archivo chrony.conf de muestra se enumera a continuación,
~]# cat /etc/chrony.conf
Donde:
- pool 0.europe.pool.ntp.org iburst es el servidor NTP remoto desde donde chrony obtendrá la hora.
- driftfile /var/lib/chrony/drift es el archivo de deriva que contiene datos de deriva
- makestep 1.0 3 es el parámetro que acelerará o ralentizará el reloj del sistema si el ajuste es mayor a 1 segundo pero solo para las primeras 3 actualizaciones del reloj
- keyfile /etc/chrony.keys, como sugiere el nombre, este archivo contiene claves para la autenticación NTP.
- logdir /var/log/chrony, es el archivo de registro que registra a Chrony.
Probando Chrony
Al igual que el comando ntpdate en la distribución NTP, podemos usar chronyd para sincronizar manualmente la hora de nuestro servidor Linux con el servidor NTP remoto.
Sintaxis: # chronyd -q ‘servidor {ntp_server_name} iburst’
Ejemplo:
~]# chronyd -q 'server 0.europe.pool.ntp.org iburst'
Como podemos ver en el resultado anterior, chrony ha corregido la hora del sistema, antes de ejecutar el comando chronyd, la hora del sistema estaba casi 2 horas por detrás de la hora exacta.
Iniciar y habilitar el servicio Chronyd
Ejecute los siguientes comandos para iniciar y habilitar el demonio chronyd para que esté disponible en los reinicios.
~]# systemctl iniciar cronyd
~]# systemctl habilitar cronyd
Ejecute el siguiente comando para verificar el estado del servicio chronys
~]# systemctl enable chronyd
Verificar y rastrear la sincronización de Chrony
Para verificar si la hora de su sistema está sincronizada usando chrony, emita el siguiente comando,
[[email protected] ~]# chronyc tracking Reference ID : 904C13DD (its.no-fun.de) Stratum : 3 Ref time (UTC) : Sun Jan 12 06:23:26 2020 System time : 0.000174314 seconds slow of NTP time Last offset : -0.000199483 seconds RMS offset : 0.000199483 seconds Frequency : 0.301 ppm fast Residual freq : -40.403 ppm Skew : 0.541 ppm Root delay : 0.172664896 seconds Root dispersion : 0.047364954 seconds Update interval : 64.8 seconds Leap status : Normal [[email protected] ~]#
Donde:
- El ID de referencia es el ID y el nombre del servidor con el que se sincroniza actualmente la hora de su sistema.
- Estrato, indica el número de saltos que nos alejamos del servidor con un reloj de referencia adjunto.
Verifique las fuentes de Chrony
Para obtener una lista de información sobre las fuentes de tiempo actuales que utiliza el chronyd, ejecute el siguiente comando:
~]# chronyc sources
Para obtener una lista de información más detallada sobre las fuentes, ejecute el siguiente comando
~]# chronyc sources -v
Verifique las estadísticas de la fuente Chrony
Para obtener una lista de la información sobre la velocidad de deriva y la estimación de compensación de cada fuente que utiliza el chronyd, ejecute el siguiente comando
~]# chronyc sourcestats -v
Configurar el servidor NTP de Chrony
Supongamos que desea configurar su servidor Linux como un servidor Chrony NTP para todos los sistemas internos. Para lograr esto, necesitamos descomentar dos líneas del archivo de configuración «/etc/chrony.conf”
- estrato local 10
- permitir 192.168.0.0/16
Ejecuta los siguientes comandos
~]# sed -i "s/#local stratum 10/local stratum 10/g" /etc/chrony.conf ~]# sed -i "s/#allow 192.168.0.0/16/allow 192.168.0.0/16/" /etc/chrony.conf
Cuando eliminamos el comentario de la línea «estrato local 10», nuestro servidor Linux se convierte en un servidor NTP chrony y continúa funcionando normalmente incluso si está desconectado de la red. Mientras que «permitir 192.168.0.0/26» indica que los clientes de esta red pueden conectarse a nuestro servidor Chrony NTP para sincronizar la hora.
Después de hacer cambios, reinicie el servicio chrony y rastree chrony
~]# systemctl restart chronyd ; watch chronyc tracking
Permita el servicio NTP en el firewall usando el siguiente comando,
~]# firewall-cmd --add-service=ntp –permanent ~]# firewall-cmd --reload
Eso es todo de este artículo, espero que tenga una idea de cómo podemos sincronizar la hora de nuestro sistema Linux con el servidor NTP usando el servicio chrony y, aparte de esto, también hemos aprendido cómo podemos configurar nuestro propio servidor Chrony NTP. Por favor, comparta sus valiosos comentarios y opiniones.