Language:
switch to room list switch to menu My folders
Go to page: [1]
↑↑↑ Old messages ↑↑↑            ↓↓↓ New messages ↓↓↓
[#] Wed Mar 15 2017 23:51:58 CST from "Phantasticum Usuarius" <Lab_IT_Y_TI@pacific3.fi-p.unam.mx> to et_imagunarium@machina.ityti

Subject: Setting the date and time in a GNU Linux /Debian independently of desktop environment

[Reply] [ReplyQuoted] [Headers] [Print]

Ajuste de la fecha y la hora en un GNU Linux / Debian 

independiente del entorno de escritorio (usando comandos)

 DR©Lab_IT_Y_TI


Tener a tiempo el reloj de la computadora es importante, y crítico en la interacción a través de Internet, por ejemplo, tal vez no pueda acceder a su cuenta de correo de manera segura si el cliente no tiene la fecha y hora correcta (tanto con https como con ssl). La razón es: varios algoritmos de cifrado utilizan la hora i, y los certificados de seguridad están fechados ii. Otro ejemplo, si actualiza paquetes en mala hora, puede crear confusión de versiones en su sistema.

Al usuario de un máquina personal, por lo general sólo el interesa poner la hora correcta al arrancar la operación del sistema y confiar en el reloj de su equipo durante la jornada. Sin embargo, la hora se pierde cuando traslada su máquina a otra zona horaria, o bien, se agotó la batería interna. Pero también se pierde poco a poco por el corrimiento natural del reloj de la máquina, cuando dicho reloj no es precisamente un reloj atómico. Dicho corrimiento se nota más en las máquinas configuradas para ejecutar servidores, las cuales no se reinician diario.

Entonces, conviene considerar las diferentes situaciones y opciones para determinar cuales paquetes instalar y usar. Cuando uno opta por la puesta a tiempo automática mediante uno de los paquetes, que implantan el protocolo NTP ("Network Time Protocol") iii , incluidos en los repositorios de Debian, tiene tres posibilidades (2016): ntp, chrony, y openntpd. Una comparación detallada entre ellos puede verse aquí .

Una instalación de Debian con el ambiente de escritorio Xfce no incluye, de manera predeterminada, sincronización automática de la hora con los servidores NTP . Además, uno puede tener alguna razón para no utilizar el daimón iv ntpd, por ejemplo, una máquina con pocos recursos disponibles v, o sobre todo, evitar algunos riesgos de seguridad vi,vii introducidos por redundancia en ntpd. En realidad, el paquete ntp (en minúsculas) es un proyecto sometido a planes de reemplazo, por programas más eficientes, seguros y/o precisos, en pleno desarrollo viii.

Si con todo lo anterior aún desea, o requiere, una sincronización automática con el paquete ntp, lo puede instalar como se le indica en la liga en la nota ix, o con synaptic. Si desea especificar unos url de servidores de hora, que utiliza ntpd, diferentes a los predeterminados, modifique el archivo «/etc/ntp.conf».

Las otras dos implantaciones del protocolo NTP, incluidas en los repositorios de Debian (2016) son chrony y opennptd x. De las tres, la que tiene mayor fama de invulnerabilidad, y una menor velocidad de actualización, es openntpd. El paquete chrony parece estar en le justo medio. Como sólo es posible ejecutar a un tiempo un daimón de sincronización, conviene primero escoger cual instalará.

Si escoge chrony, el archivo de configuración está en /etc/chrony/chrony.conf, y conviene que le añada la línea

server 200.23.51.102 offline minpoll 8 offline minpoll 8


antes de los servidores NTP de Debian. La IPv4 200.23.51.102 es la que corresponde al CENAM.

Después de agregar la línea, o reinicia la máquina, o bien, reinicia chrony con el comando:

phantasticum@machina:~$ sudo invoke-rc.d chrony restart

Para ayuda local sobre chrony use:

phantasticum@machina:~$ info chrony


o puede consultar el manual completo aquí.
___________________


En cambio, si no desea instalar ningún daimón NTP, puede poner la hora correcta cada vez que lo desee mediante un cliente NTP tal como ntpdate, chronyc, o rdate. Mientras chronyc se incluye en el paquete chrony junto con el daimón chronyd, ambos ntpdate y rdate requieren instalación, pues no se incluyen en la configuración básica de Debian:

phantasticum@machina:~$ sudo apt-get update

phantasticum@machina:~$ sudo apt-get install ntpdate


Ahora lo puede ejecutar de la siguiente manera:

phantasticum@machina:~$ sudo ntpdate cronos.cenam.mx

28 Apr 22:41:33 ntpdate[26040]: step time server 200.23.51.102 offset -31.255855 sec



donde « cronos.cenam.mx » le reportará la «Hora Oficial de México». Note que la lista actual (2016) de servidores de hora NTP en México es bastante reducida, ya que mantener un servidor de hora tiene algún costo y ocasiona cierto tráfico xi.

El comando rdate actual puede aplicar tanto el protocolo SNTP xii (si se le indica con la opción -n), como el protocolo TP ("Time Protocol) xiii (si no se le indica otra cosa). Para el protocolo TP, requiere un servidor de hora NIST xiv, los cuales constituyen un conjunto de servidores destinados a extinción, por lo que se aconseja usar rdate sólo incluyendo la opción “-n” , tal y como se ilustra aquí adelante:

Instale, si es necesario, el paquete rdate:


phantasticum@machina:~$ sudo apt-get update

phantasticum@machina:~$ sudo apt-get install rdate


Luego, ejecute xv:

phantasticum@machina:~$ sudo rdate -ncv cronos.cenam.mx



Note, el servidor de hora del CENAM responde sólo con la opción "-n".
________________

Si no desea acceder a Internet para establecer la hora de su sistema, puede escribir la hora local más exacta que conozca, tal como la hora de su teléfono celular, mediante el programa date.

phantasticum@machina:~$ sudo date --set="20:42:03"

[sudo] password for phantasticum:

Mon Feb 2 20:42:03 CDT 2016


Y si desea modificar la fecha antes de inscribir la hora (observe el formato de la fecha y note que la hora queda en ceros) xvi:

phantasticum@machina:~$ sudo date --set="2 Feb 2015"

Mon Feb 2 00:00:00 CST 2015


o puede escribir la fecha con el formato más conveniente para ordenar registros xvii (YY-MM-DD), junto con la hora:

phantasticum@machina:~$ sudo date --set="2014-03-18"

Tue Mar 18 00:00:00 CDT 2014


También puede poner la fecha y hora con una sola orden, el comando «date --set» sabe si se trata de la hora o de la fecha por el formato del dato, no por su posición en la cadena. Los siguientes comandos son equivalentes:

usuarius@machina:~$ sudo date --set="09:58 2015-04-09"

Thu Apr 9 09:58:00 CDT 2015

usuarius@machina:~$ sudo date --set="2015-04-09 9:58"

Thu Apr 9 09:58:00 CDT 2015



El programa date es uno de los útiles básicos (GNU core utilities) de «GNU Linux», y por ende, se incluye en cualquier instalación de Debian.

Con dicho comando date, puede también consultar la fecha y hora su sistema:


phantasticum@machina:~$ date -R

Thu, 28 Apr 2016 22:29:11 -0500


phantasticum@machina:~$ date

Thu Apr 28 22:29:15 CDT 2016



donde -0500 es la diferencia entre la hora local y la hora universal coordinada UTC xviii,xix y CDT indica "Central Day Time", la zona horaria de esta ciudad.

________________________________________________________

A manera de ejercicio, puede realizar el siguiente experimento:

1) Obtenga con el comando date la fecha actual de su sistema en operación.

2) Ponga, con el comando date, el reloj de su sistema cliente en una fecha suficientemente antigua, digamos, 5 años antes de la fecha obtenida en 1).

3) Trate ahora de acceder a su cuenta de correo y observe el resultado

4) Restablezca la fecha de su máquina con ntpdate y repita el paso 3).

________________________________________________________

Finalmente, si desea probar un protocolo de sincronización más moderno, puede intentar tlsdate xx, mas no lo encontrará en los repositorios actuales de Debian.

i       La seguridad de HTTP se basa en SSL: "The client also includes a 32-byte random number (client_random) in the message, which is made up of a 4-byte GMT Unix time (seconds since 1970), plus another 28 random bytes".

iii
   «NTP: un proyecto de «Network Time Foundation»     

iv
    Daimón, del griego δαίμων: 'espíritu, genio'; es un concepto diferente del concepto latino de demonio

v     El daimón ntpd contiene más de 
360,000 líneas de código

vi     ntpd y ataques DDoS:   "NTP users are strongly urged to take immediate action to ensure that their NTP daemons are not susceptible to being used in distributed denial-of-service (DDoS) attacks. Please also take this opportunity to defeat denial-of-service attacks by implementing Ingress and Egress filtering through BCP38."


xii   
NTPv4 Specification ietf rfc 5905
       
xiii   https://tools.ietf.org/html/rfc868

xiv  
NIST Internet Time Servers

xvi   La Ciudad de México utiliza CDT (Central Day Time) en el «horario de verano» y CST (Central Standard Time) en el «horario de invierno»

xvii  Con el formato año/mes/día los registros se pueden ordenar fácilmente por fechas ascendentes o descendentes