Un punto esencial cuando trabajamos con servidores, sin importar el tipo de sistema operativo usado, es la hora; y, aunque parezca que no tiene una importancia real en el sistema juega un rol vital que permite que muchos servicios y procesos estén sincronizados. Esto se ve reflejado en una óptima entrega de la información a los usuarios o máquinas del dominio.
Si la hora del servidor está desconfigurada y se deben ejecutar copias de seguridad a una hora especifica esto puede causar un error; ya que, si la hora del sistema falla por algunos segundos, la tarea no se completará, o si el servidor registra el acceso de personal y falla en minutos estará reportando una hora errónea al registro de acceso de dicha persona.
Para evitar este tipo de fallos, podemos hacer uso del servidor NTP; el cual está desarrollado para permitir la sincronización exacta de la hora del servidor local con la hora de internet tomando como base la ubicación geográfica. Es por esta razón que hoy en Solvetic veremos cómo instalar este servidor NTP en Ubuntu 18.04 y así estar seguros de que la hora registrada será la correcta.
Con NTP será posible sincronizar los relojes de todos los sistemas dentro de la red local con la red mundial; ya que el servidor NTP sincroniza la hora local contactando a varios servidores distribuidos en todo el mundo. NTP admite sistemas operativos Unix, VMS y Windows.
Los servicios de sincronización de hora NTP se encuentran disponibles en la red de Internet gracias a lo cual contamos con las mejores opciones y alternativa para establecer una conexión con la zona horaria correcta ya que la subred pública NTP incluye miles de servidores en la mayoría de los países y en todos los continentes del mundo.
La subred NTP esta basada en una jerarquía de niveles, donde a cada nivel se le asigna un número denominado estrato de la siguiente forma:
- Los servidores Stratum 1 (primarios) del nivel más bajo se sincronizan directamente con los servicios de hora nacional a través de un módem por satélite, radio o teléfono.
- Los servidores Stratum 2 (secundarios) se sincronizan con los servidores Stratum 1 y así sucesivamente, de modo que los clientes NTP y los servidores con un número relativamente pequeño de clientes no se sincronizan con los servidores primarios públicos.
El protocolo usado por NTP es resistente a paquetes perdidos, repetidos o falsificados con lo cual se garantiza que la hora definida es la correcta y real; ya que la versión 4 de NTP admite alrededor de cuatro docenas de relojes de referencia a través de módem por satélite, radio y teléfono incluyendo dispositivos de audio para señales de instrumentación.
Todos los controladores de reloj de referencia requieren que el reloj de referencia solo use la hora universal coordinada (UTC) y el kernel del sistema operativo realiza los ajustes de zona horaria.
1. Cómo instalar y configurar el servidor NTP en Ubuntu 18.04 Linux
Por defecto, el paquete NTP se encuentra disponible en el repositorio predeterminado de Ubuntu 18.04 LTS, de modo que para instalarlo debemos ejecutar el siguiente comando:
sudo apt install ntp -y
Una vez instalado, será necesario configurar NTP para sincronizar la hora desde el servidor público NTP, para ello debemos editar el archivo ntp.conf de la siguiente forma:
sudo nano /etc/ntp.confAlli veremos lo siguiente:
Será necesario reemplazar las siguientes líneas:
pool 0.ubuntu.pool.ntp.org iburst pool 1.ubuntu.pool.ntp.org iburst pool 2.ubuntu.pool.ntp.org iburst pool 3.ubuntu.pool.ntp.org iburstEstas deben ser reemplazadas por la ubicación geográfica actual, el listado completo se encuentra disponible en el siguiente enlace:
Alli veremos lo siguiente:
Debemos tomar el hostname en base a la zona deseada y establecerlo en el archivo que hemos abierto en Linux así. Guardamos los cambios usando la combinación de teclas siguiente:
Ctrl + O
Salimos del editor usando las teclas:
Ctrl + X
Ahora vamos a reiniciar el servicio NTP y aplicar los cambios ejecutando la siguiente línea:
sudo systemctl restart ntpProcedemos a comprobar el estado de NTP ejecutando lo siguiente:
sudo systemctl status ntp
2. Cómo instalar y configurar el cliente NTP en Ubuntu 18.04 Linux
El siguiente paso es instalar y configurar el cliente NTP con el fin de sincronizar el tiempo con el servidor NTP, pero antes debe ser necesario configurar el archivo /etc/hosts para que el servidor NTP se puede resolver a través del nombre de host.
Accedemos a este archivo usando algún editor:
sudo nano /etc/hostsAllí añadiremos la siguiente sintaxis en base a la dirección IP del servidor:
192.168.***.*** ntp-server-host
Guardamos los cambios con las teclas siguientes:
Ctrl + X
Salimos del editor con las teclas:
Ctrl + O
Ahora vamos a instalar NTP y ntpdate con los siguientes comandos:
sudo apt install ntpdate ntp -y
De forma manual comprobaremos la sincronización con el servidor NTP ejecutando lo siguiente:
sudo ntpdate ntp-server-host
A continuación, vamos a deshabilitar el servicio timesyncd predeterminado del sistema Ubuntu con el siguiente comando:
sudo timedatectl set-ntp offAhora, vamos a editar el archivo /etc/ntp.conf y configurar alli el propio servidor NTP que hemos configurado como servidor NTP preferido para la sincronización horaria, para ello ejecutamos lo siguiente:
sudo nano /etc/ntp.confAlli agregamos, en este caso, la siguiente línea al final:
server ntp-server-host prefer iburst
Guardamos los cambios y salimos del editor.
Procedemos a reiniciar el servicio para aplicar los cambios ejecutando:
sudo systemctl restart ntpPor último, vamos a hacer uso del comando ntpq con el fin de enumerar la cola de sincronización de tiempo NTP en nuestro servidor Ubuntu 18:
ntpq -pAlli veremos la ubicación que hemos definido para el servidor NTP.
Así, tendremos la certeza de que la sincronización de la hora de nuestro servidor es correcta y así garantizamos que todos los servicios estarán en orden.