NTP Server
NTP utiliza el Algoritmo de Marzullo con la escala de tiempo UTC, incluyendo soporte para características como segundos intercalares. NTPv4 puede mantenerse a tiempo con hasta 10 milisegundos (1/100 segundos) a través de Internet, y puede llegar a acercarse hasta 200 microsegundos (1/5000 segundos) o más en redes de área local sobre condiciones ideales.
NTP es uno de los protocolos de internet más viejos que siguen en uso (desde antes de 1985). NTP fue diseñado originalmente por Dave Mills de la Universidad de Delaware, el cual lo sigue manteniendo, en conjunto con un equipo de voluntarios.
El demonio NTP de Unix es un proceso de nivel de usuario que se ejecuta continuamente en la máquina que soporta NTP, y la mayor parte del protocolo está implementado en este proceso de usuario. Para obtener el mejor rendimiento de NTP, es importante tener un reloj NTP estándar con lazo de seguimiento de fase implementado en el kernel del Sistema operativo, en vez de sólo usar la intervención de un demonio NTP externo: todas las versiones actuales de Linux y Solaris soportan esta característica.
Server Procedimiento:
Se debe actualizar el indice de paquetes del repositorio. A continuación se desgargan los paquetes y se realiza la instalación del los mismos.
< apt-get update
< apt-get install -udV ntp ntpdate ntp-server
< apt-get install ntp ntpdate ntp-server
Se debe modificar el archivo de configuración /etc/ntp.conf para permitir que los equipos en la red del servidor se puedan conectar con el mismo. La red donde se encuentra el servidor es la 10.0.0.0/24. La línea que se agrega es la que se encuentra en rojo. La edición del archivo se puede realizar con el nano o con el vi.
< sudo nano /etc/ntp.conf
El archivo debe quedar de la siguiente forma:
< cat /etc/ntp.conf
> # /etc/ntp.conf, configuration for ntpd > > driftfile /var/lib/ntp/ntp.drift > > statsdir /var/log/ntpstats/ > > statistics loopstats peerstats clockstats > filegen loopstats file loopstats type day enable > filegen peerstats file peerstats type day enable > filegen clockstats file clockstats type day enable > > # You do need to talk to an NTP server or two (or three). > #server ntp.your-provider.example > > # pool.ntp.org maps to more than 300 low-stratum NTP servers. > # Your server will pick a different set every time it starts up. > # *** Please consider joining the pool! *** > # *** <http://www.pool.ntp.org/join.html> *** > server pool.ntp.org iburst > server ntp.ubuntu.com iburst > > # By default, exchange time with everybody, but don't allow configuration. > # See /usr/share/doc/ntp-doc/html/accopt.html for details. > restrict -4 default kod notrap nomodify nopeer noquery > restrict -6 default kod notrap nomodify nopeer noquery > > # Local users may interrogate the ntp server more closely. > restrict 127.0.0.1 > restrict ::1 > > # Clients from this (example!) subnet have unlimited access, > # but only if cryptographically authenticated > #restrict 192.168.123.0 mask 255.255.255.0 notrust > restrict 10.0.0.0 mask 255.255.255.0 nomodify notrap > > # If you want to provide time to your local subnet, change the next line. > # (Again, the address is an example only.) > #broadcast 192.168.123.255 > > # If you want to listen to time broadcasts on your local subnet, > # de-comment the next lines. Please do this only if you trust everybody > # on the network! > #disable auth > #broadcastclient
Finalizada la edición del archivo se debe reiniciar el servicio.
< sudo sh /etc/init.d/ntp restart > * Stopping NTP server ntpd [ OK ] > * Starting NTP server ntpd [ OK ]
Para verificar el estado del servicio, se puede realizar la siguiente consulta. Que listara el equipo contra el que se esta sincronizando el servidor.
< sudo ntpq -p > remote refid st t when poll reach delay offset jitter > ============================================================================== > mail.monssa.com 200.189.40.8 3 u 2 64 1 18.270 -1.365 0.001 > europium.canoni 193.79.237.14 2 u - 64 1 234.377 -14.298 0.001
Cliente Procedimiento:
Se debe actualizar el indice de paquetes del repositorio. A continuación se desgargan los paquetes y se realiza la instalación del los mismos.
< apt-get update
< apt-get install -udV ntp ntpdate
< apt-get install ntp ntpdate
Se debe modificar el archivo de configuración para que el equipo se conecte con el servidor que se puso en marcha en el paso anterior.
Para realizar esto se debe editar el archivo "/etc/ntp.conf" del equipo cliente.
< sudo nano /etc/ntp.conf
Debe quedar de la siguiente forma. Se editaron las zonas con el texto en rojo.
< cat /etc/ntp.conf > # /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help > > driftfile /var/lib/ntp/ntp.drift > > # Enable this if you want statistics to be logged. > #statsdir /var/log/ntpstats/ > > statistics loopstats peerstats clockstats > filegen loopstats file loopstats type day enable > filegen peerstats file peerstats type day enable > filegen clockstats file clockstats type day enable > > # You do need to talk to an NTP server or two (or three). > server 10.0.0.1 > > # Access control configuration; see /usr/share/doc/ntp-doc/html/accopt.html for > # details. The web page <http://support.ntp.org/bin/view/Support/AccessRestrictions> > # might also be helpful. > # > # Note that "restrict" applies to both servers and clients, so a configuration > # that might be intended to block requests from certain clients could also end > # up blocking replies from your own upstream servers. > # By default, exchange time with everybody, but don't allow configuration. > restrict -4 default kod notrap nomodify nopeer noquery > restrict -6 default kod notrap nomodify nopeer noquery > restrict 10.0.0.1 > > # Local users may interrogate the ntp server more closely. > restrict 127.0.0.1 > restrict ::1 > > # Clients from this (example!) subnet have unlimited access, but only if > # cryptographically authenticated. > #restrict 192.168.123.0 mask 255.255.255.0 notrust > > # If you want to provide time to your local subnet, change the next line. > # (Again, the address is an example only.) > #broadcast 192.168.123.255 > > # If you want to listen to time broadcasts on your local subnet, de-comment the > # next lines. Please do this only if you trust everybody on the network! > #disable auth > #broadcastclient
Finalizada la edición del archivo se debe reiniciar el servicio.
< sudo sh /etc/init.d/ntp restart > * Stopping NTP server ntpd [ OK ] > * Starting NTP server ntpd [ OK ]
Para verificar el estado del servicio, se puede realizar la siguiente consulta. Que listara el equipo contra el que se esta sincronizando el servidor.
< sudo ntpq -p > remote refid st t when poll reach delay offset jitter > ============================================================================== > ntp.example.com 91.189.94.4 3 u 60 64 377 0.131 -25.893 6.083
Donde ntp.example.com es el servidor 10.0.0.1 de la red.
