¿Cómo evitar que ntpd escuche en 0.0.0.0:123?

29

ntpd escucha en numerosas interfaces de forma predeterminada, solo quiero que escuche en 127.0.0.1:123 ya que solo quiero que el localhost sincronice la hora.

Cómo hacer eso, intenté editando / etc / default / ntp en Debian Wheezy:

NTPD_OPTS='-4 -I 127.0.0.1'

Pero todavía escucha globalmente en 0.0.0.0:123

¿Algunas ideas?

JohnnyFromBF
fuente
Tengo curiosidad por saber cuál es tu objetivo final aquí. La sincronización con localhost no tiene mucho sentido y no funcionará de manera predeterminada sin una fudgedeclaración. ¿Qué estás intentando lograr?
Ladadadada
@Ladadadada Tenemos un servidor ntp aquí dentro de la LAN. Nuestros clientes de Linux deberían tener la hora correcta, pero en lugar de ejecutar un cronjob por hora ntpdate -B timeserver, queríamos ejecutar un ntpd en cada cliente con solo 127.0.0.1:123 que pregunta al servidor de tiempo en la LAN. ¿Hay algo malo con eso?
JohnnyFromBF
44
En un cliente, el puerto de escucha solo se utiliza para consultar el estado actual del daemon. Las serverlíneas en ntpdlas configuraciones de su cliente definen con quién se sincroniza. Si su serverlínea (s) dice 127.0.0.1, tiene un problema. Si apuntan a su servidor de tiempo central, todo debería estar bien.
Ladadadada

Respuestas:

34

Elimine todas las opciones -Io inserte lo siguiente en su :--interface/etc/default/ntp/etc/ntp.conf

interface ignore wildcard
interface listen 127.0.0.1
interface listen ::1
# NOTE: if you want to update your time using remote machines,
# add at least one remote interface address:
#interface listen 2001:db8::1
#interface listen 192.0.2.1

Un extracto de la ntpd(1)página del manual sobre la -iopción:

Esta opción también implica no abrir otras direcciones, excepto comodines y localhost. Considere usar el comando de interfaz de archivo de configuración, que es más versátil.

Vea también la página del manual de Debian (no pude encontrarla en Arch Linux) de ntp.conf(5).

Lekensteyn
fuente
66
ntp necesita vincularse en una interfaz enrutable para poder sincronizarse con servidores de tiempo. Vea la respuesta de meepmeep a continuación.
organic-mashup
17

Con ntp escuchando solo en 127.0.0.1, parece que no puede iniciar la conexión a un servidor ntp público:

$ ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
ks370079.kimsuf **.INIT.**       16 -    -   64    0    0.000    0.000   0.000

Debe estar vinculado a una dirección IP enrutable para que funcione.

meepmeep
fuente
Gracias por esta observación y su ejemplo que muestra cómo verificar que este sea el caso.
ColinM
6

Completo /etc/ntp.conf ese protocolo neutral (IPv4 e | IPv6)

driftfile /var/lib/ntp/ntp.drift

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

server 0.pool.ntp.org
server 1.pool.ntp.org
server 2.pool.ntp.org
server 3.pool.ntp.org

restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery

restrict lo

interface ignore wildcard
interface listen lo

fuente
6

Si desea reducir la cantidad de servicios de escucha por razones de seguridad, puede considerar openntpd, ya que no requiere un servidor de escucha para actuar como cliente. Se considera un poco menos preciso que ntpd; es confiable en unos pocos cientos de ms, pero esto es adecuado para la mayoría de los propósitos.

imitador
fuente