ntpd an Localhost binden?

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Benutzeravatar
xcomm
Beiträge: 804
Registriert: 21.09.2003 05:12:01
Wohnort: Europe
Kontaktdaten:

ntpd an Localhost binden?

Beitrag von xcomm » 09.09.2009 10:58:58

Hi Gemeinde,

ich versuche den ntpd nur an 127.0.0.1 lauschen zu lassen.

Dazu habe ich folgendes auskommentiert:

Code: Alles auswählen

###restrict -4 default kod notrap nomodify nopeer noquery
###restrict -6 default kod notrap nomodify nopeer noquery
Folgendes verbleibt in der /etc/ntp.conf:

Code: Alles auswählen

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 192.53.103.103           # ntp1.ptb.de
server 192.53.103.104           # ntp2.ptb.de
server 193.0.0.228              # rolex.ripe.net
restrict 127.0.0.1
restrict ::1
Irgendwie hört er aber immer noch auf alles. ;-)

Code: Alles auswählen

 ...
udp        0      0 0.0.0.0:123             0.0.0.0:*                           8127/ntpd       
...    
udp6       0      0 :::123                  :::*                                8127/ntpd 
Was fehlt da noch?

Danke, xcomm

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Re: ntpd an Localhost binden?

Beitrag von cosmac » 10.09.2009 11:43:06

hi,

je nach Version des ntpd geht das nicht oder vielleicht mit der Option "-I $interface" oder "-L $interface".

"ntpd -?" zeigt die verfügbaren Optionen.
Beware of programmers who carry screwdrivers.

Benutzeravatar
xcomm
Beiträge: 804
Registriert: 21.09.2003 05:12:01
Wohnort: Europe
Kontaktdaten:

Re: ntpd an Localhost binden?

Beitrag von xcomm » 16.09.2009 13:41:09

Hi Cosmac,

besten Dank für Deine Antwort!

Irgendwie bekomme ich es aber nicht hin.

Code: Alles auswählen

vi /etc/default/ntp
 NTPD_OPTS='-g -L -I lo'

 /etc/init.d/ntp restart

Code: Alles auswählen

netstat -naptu | grep :123
...
udp        0      0 0.0.0.0:123             0.0.0.0:*                           8127/ntpd       
...   
udp6       0      0 :::123                  :::*                                8127/ntpd 

Code: Alles auswählen

ntpd - NTP daemon program - Ver. 4.2.4p6
USAGE:  ntpd [ -<flag> [<val>] | --<name>[{=| }<val>] ]...
  Flg Arg Option-Name    Description
   -4 no  ipv4           Force IPv4 DNS name resolution
   -6 no  ipv6           Force IPv6 DNS name resolution
   -a no  authreq        Require crypto authentication
   -A no  authnoreq      Do not require crypto authentication
   -b no  bcastsync      Allow us to sync to broadcast servers
   -c Str configfile     configuration file name
   -f Str driftfile      frequency drift file name
   -g no  panicgate      Allow the first adjustment to be Big
   -i Str jaildir        Jail directory
   -I Str interface      Listen on interface
   -k Str keyfile        path to symmetric keys
   -l Str logfile        path to the log file
   -L no  novirtualips   Do not listen to virtual IPs
   -n no  nofork         Do not fork
   -N no  nice           Run at high priority
   -p Str pidfile        path to the PID file
   -P Num priority       Process priority
   -q no  quit           Set the time and quit
   -r Str propagationdelay Broadcast/propagation delay
   -U Num updateinterval interval in seconds between scans for new or dropped interfaces
   -s Str statsdir       Statistics file location
   -t Str trustedkey     Trusted key number
   -u Str user           Run as userid (or userid:groupid)
   -v Str var            make ARG an ntp variable (RW)
   -V Str dvar           make ARG an ntp variable (RW|DEF)
   -x no  slew           Slew up to 600 seconds
   -v opt version        Output version information and exit
   -? no  help           Display usage information and exit
   -! no  more-help      Extended usage information passed thru pager

Options are specified by doubled hyphens and their name
or by a single hyphen and the flag character.
Danke, xcomm

davinci91
Beiträge: 13
Registriert: 20.08.2009 21:31:03

Re: ntpd an Localhost binden?

Beitrag von davinci91 » 21.09.2009 22:32:32

Möchtest du damit bezwecken, dass der Server im Notfall sich seine eigene Zeit gibt und somit, falls keine anderer Server im Netz verfügbar bleibt?

Wenn ja solltest du in der ntp.conf folgendes eintragen:

Code: Alles auswählen

  	
server 127.127.1.1
fudge 127.127.1.1 stratum 8
Die IP 127.127.1.1 zeigt auf den lokalen Host und in diesem speziellen Fall auf das Modul, welches die Systemuhr repräsentiert. Bei Debian ist dieses Modul bereits fertig mit im Paket enthalten. Es muss also nicht nochmal mit Unterstützung für dieses Modul neu übersetzt werden. Bei den meisten anderen Distributionen wird das wohl ebenfalls der Fall sein.
Mit der Zeile fudge 127.127.1.1 stratum 8 sagen wir dem Daemon, dass er den Server mit der IP 127.127.1.1 als einen Stratum 8-Server betrachten soll, was er dann auch tut. Der lokale NTP-Server meldet sich, wenn er sich mit der Systemuhr synchronisiert hat, als ein Stratum 9-Server.
Ein sehr sehr gutes Howto findest du auf dieser Page

Ich habe meinen ntp Server nach diesem Howto konfiguriert und siehe da:

Code: Alles auswählen

/etc netstat -naptu | grep :123
udp        0      0 192.168.5.65:123        0.0.0.0:*                           1776/ntpd       
udp        0      0 127.0.0.1:123           0.0.0.0:*                           1776/ntpd      
udp        0      0 0.0.0.0:123             0.0.0.0:*                           1776/ntpd       
Ich hoffe das ich dir damit helfen konnte.

Schönen Abend noch.

Benutzeravatar
xcomm
Beiträge: 804
Registriert: 21.09.2003 05:12:01
Wohnort: Europe
Kontaktdaten:

Re: ntpd an Localhost binden?

Beitrag von xcomm » 22.09.2009 17:45:54

Hi Davinici91,

danke für Deinen Beitrag und den interessanten Artikel!

Ich habe auch meine auskommentierten Zeilen besser wieder reingenommen, da ntp ja wohl default allow all benutzt.;-)

Code: Alles auswählen

restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
Das mit der eigenen Zeit mit hohem stratum als Fallback ist sehr interessant, obwohl es nicht meine eigentliche Absicht war.

Wenn ich nach Syslog schaue, sehe ich, dass der Dienst, über restrict die meisten Interfaces durch seine Accesskontrolle schliesst.

Code: Alles auswählen

Sep 22 14:51:42 foo ntpd[8127]: ntpd exiting on signal 15
Sep 22 14:51:44 foo ntpd[31265]: ntpd 4.2.4p4@1.1520-o Mon May 11 19:58:14 UTC 2009 (1)
Sep 22 14:51:44 foo ntpd[31266]: precision = 1.000 usec
Sep 22 14:51:44 foo ntpd[31266]: Listening on interface #0 wildcard, 0.0.0.0#123 Disabled
Sep 22 14:51:44 foo ntpd[31266]: Listening on interface #1 wildcard, ::#123 Disabled
Sep 22 14:51:44 foo ntpd[31266]: Listening on interface #2 lo, ::1#123 Enabled
Sep 22 14:51:44 foo ntpd[31266]: Listening on interface #3 eth0, someip6::4#123 Enabled
Sep 22 14:51:44 foo ntpd[31266]: Listening on interface #4 eth0,  someip6:fcde:22ff:fe1e:16d1#123 Enabled
Sep 22 14:51:44 foo ntpd[31266]: Listening on interface #5 eth0, fe80::fcde:22ff:fe1e:16d1#123 Enabled
Sep 22 14:51:44 foo ntpd[31266]: Listening on interface #6 lo, 127.0.0.1#123 Enabled
Sep 22 14:51:44 foo ntpd[31266]: Listening on interface #7 eth0,  someip#123 Enabled
Sep 22 14:51:44 foo ntpd[31266]: kernel time sync status 0040
Sep 22 14:51:44 foo ntpd[31266]: frequency initialized -25.918 PPM from /var/lib/ntp/ntp.drift
Sep 22 14:54:58 foo ntpd[31266]: synchronized to 192.53.103.104, stratum 1
Das eigentliche Ziel meiner Frage war, warum der ntpd weiterhin auf das Wildcard Interface 0.0.0.0:123 lauscht.

Code: Alles auswählen

netstat -naptu | grep ":123"
udp        0      0 someip:123       0.0.0.0:*                           31266/ntpd      
udp        0      0 127.0.0.1:123           0.0.0.0:*                           31266/ntpd      
udp        0      0 0.0.0.0:123             0.0.0.0:*                           31266/ntpd      
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
udp6       0      0 fe80::fcde:22ff:fe1:123 :::*                                31266/ntpd      
udp6       0      0 someip6:fcde::123 :::*                                31266/ntpd      
udp6       0      0 someip6::4:123    :::*                                31266/ntpd      
udp6       0      0 ::1:123                 :::*                                31266/ntpd      
udp6       0      0 :::123                  :::*                                31266/ntpd 

Sicher, ich öffne die Ports nicht in der Firewall, aber wenn ich einen Client und keinen Server konfiguriere, benötige ich nicht, dass er WorldWide lauscht.
Und der internen Access-Control von ntpd muss ich auch nicht 100% trauen.

Danke, xcomm

P.S.: Ihr benutzt alle diese Pools, ich finde die doch recht fraglich, nachdem ich mal meine Zeit aus der Ukraine bezogen habe. ;-)

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Re: ntpd an Localhost binden?

Beitrag von cosmac » 23.09.2009 02:20:32

Die Geschichte mit der eigenen Systemuhr als Referenz hat hier schon mal einen Ausfall über knapp 2 Tage sauber überbrückt.

Unter de.pool.ntp.org sollte eigentlich kein Server aus der Ukraine auftauchen. Aber selbst wenn: Server aus pool.ntp.org werden laufend überwacht¹ und wenn sie einige Zeit um mehr als 100 ms daneben liegen, aus dem Pool gekickt. Außerdem kann man ja mehrere Server angeben. Dann ignoriert der ntpd die schlechteren von sich aus.

1) z.B. http://www.pool.ntp.org/scores/134.34.3.18
Beware of programmers who carry screwdrivers.

Antworten