Actualización 05/2020: Se ha añadido systemd-timesyncd que ya sincroniza el reloj del sistema a través de la red. Este simple cliente NTP debería ser apropiado para la mayoría de instalaciones. De todas maneras, dejo el procedimiento que en su día utilicé.
Vamos a configurar un equipo como servidor y el resto de equipos como clientes, para ello vamos a utilizar NTP.
Tanto en el equipo servidor como en los equipos clientes, instalamos NTP:
sudo pacman -S ntpConfigurando NTP como servidor
Modificamos el fichero de configuración:
sudo nano /etc/ntp.confY modificamos los servidores a los que nos vamos a conectar. Para elegirlos podemos consultar NTP Pool Project, y localizar la zona donde se encuentre nuestro país.
Sustituimos los servidores propuestos en el fichero y pegamos los que hemos seleccionado anteriormente:
# Associate to Arch's NTP pool
server 3.es.pool.ntp.org iburst
server 0.europe.pool.ntp.org iburst
server 2.europe.pool.ntp.org iburstA continuación, verificamos las líneas de restricción que nos permiten que otros clientes consulten el servidor de tiempo:
# Permit time synchronization with our time source, but do not
# permit the source to query or modify the service on this system.
restrict -4 default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquerySolo permitiremos que nuestra red sea la que pueda sincronizar con el servidor NTP:
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrapEn caso de que el servidor se desconecte de Internet va a poder seguir proporcionando la hora a la red si incluimos el reloj local como backup:
server 127.127.1.0
fudge 127.127.1.0 stratum 10Especificamos la ubicación de los parámetros del log NTP:
driftfile /var/lib/ntp/ntp.drift
logfile /var/log/ntp.logAhora seleccionamos nuestra zona horaria:
sudo timedatectl set-timezone Europe/MadridY comprobamos con:
sudo timedatectl statusSincronizamos manualmente:
ntpd -qgY por último, añadimos el servicio al inicio y lo arrancamos:
sudo systemctl enable ntpd
sudo systemctl start ntpdConfigurando NTP para los clientes
Modificamos el archivo de configuración:
sudo nano /etc/ntp.confAñadimos la IP del equipo que realiza las funciones de servidor NTP y el resto de servidores:
# Associate to Arch's NTP pool
server 192.168.1.70 prefer
server 3.es.pool.ntp.org iburst
server 0.europe.pool.ntp.org iburst
server 2.europe.pool.ntp.org iburstY por último añadimos el servicio al inicio y lo arrancamos:
sudo systemctl enable ntpd
sudo systemctl start ntpdSeleccionamos nuestra zona horaria:
sudo timedatectl set-timezone Europe/MadridY activamos NTP:
sudo timedatectl set-ntp trueComprobamos con:
ntpd -qgLas columnas delay, offset y jitter deben mostrar una fluctuación distinta de cero. Los servidores ntpd que se estén sincronizando aparecerán con un asterisco como prefijo. Pueden pasar varios minutos antes de que ntpd seleccione un servidor para sincronizarse, prueba a comprobar pasados 17 minutos (1024 segundos).
sudo timedatectl status Local time: sáb 2017-08-26 07:20:38 UTC
Universal time: sáb 2017-08-26 07:20:38 UTC
RTC time: n/a
Time zone: n/a (UTC, +0000)
Network time on: yes
NTP synchronized: yes
RTC in local TZ: noAlternativa: OpenNTPD
En lugar del anterior, podemos usar OpenNTPD, bastante más sencillo de configurar.
sudo pacman -S openntpdSi estamos utilizando un cortafuegos, por ejemplo UFW, permitimos el tráfico:
sudo ufw allow 123/udpY modificamos el archivo ntpd.conf:
sudo nano /etc/ntpd.confPara el servidor:
server 0.europe.pool.ntp.org
server 1.europe.pool.ntp.org
server 2.europe.pool.ntp.org
server 3.europe.pool.ntp.org
listen on 127.0.0.1Para los clientes:
server 192.168.1.70Activamos y arrancamos:
sudo systemctl enable openntpd.service
sudo systemctl start openntpd.serviceSeleccionamos nuestra zona horaria:
sudo timedatectl set-timezone Europe/Madridy comprobamos con:
sudo timedatectl status Local time: sáb 2020-05-02 16:30:29 CEST
Universal time: sáb 2020-05-02 14:30:29 UTC
RTC time: n/a
Time zone: Europe/Madrid (CEST, +0200)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
¿Te ha sido útil?
Ayúdame a mejorar con tu puntuación y comentarios.
💬 Comentarios
Los comentarios están gestionados por GitHub Discussions. Necesitas una cuenta de GitHub para participar. ¡Es gratis y rápido!