Инструменты пользователя

Инструменты сайта


Боковая панель

Связь

ntp

Настройка сервера времени

ntpd - (Network Time Protocol (NTP) daemon) для FreeBSD 7.2

#включим ntpd при загрузке сервера
> echo 'ntpd_enable="YES"' >> /etc/rc.conf
> man ntpd
...
FILES
     /etc/ntp.conf   the default name of the configuration file
     /etc/ntp.drift  the default name of the drift file
     /etc/ntp.keys   the default name of the key file

SEE ALSO
     ntp.conf(5), ntpdate(8), ntpdc(8), ntpq(8)
...

> ee /etc/ntp.conf
#
#ntp.time.in.ua 62.149.0.30
server 62.149.0.30 prefer iburst
#tick.usask.ca 128.233.3.100
server 128.233.3.100 iburst
#ntp2.imvp.ru 62.117.76.141
server 62.117.76.141 iburst
#ntp0.mao.kiev.ua 194.44.35.24
server 194.44.35.24  iburst
#
server 0.freebsd.pool.ntp.org iburst maxpoll 9
server 1.freebsd.pool.ntp.org iburst maxpoll 9
server 2.freebsd.pool.ntp.org iburst maxpoll 9


#опция prefer задает предпочитаемый сервер.
#опция iburst позволяет ntpd ускорить начальный процесс синхронизации.

# NTP drift file - хранит информацию об отклонениях времени
driftfile /etc/ntp.drift
# Log ntpd
logfile /var/log/ntpd.log

#default: deny for all
restrict default ignore
# allow for localhost
restrict 127.0.0.1
# allow our network
restrict 10.26.95.0 mask 255.255.255.0 nomodify notrap
restrict 195.x.x.x mask 255.255.255.224 nomodify notrap
restrict 194.x.x.x mask 255.255.255.248 nomodify notrap

# сервера с которыми мы синхронизируемся
# должны иметь возможность менять время нашего сервера
restrict 62.149.0.30 noquery notrap
restrict 128.233.3.100 noquery notrap
restrict 62.117.76.141 noquery notrap
restrict 194.44.35.24 noquery notrap
restrict ntp2.time.in.ua noquery notrap
restrict не подходит к 0.ubuntu.pool.ntp.org, т.к. этот домен имеет несколько IP
# host 0.ubuntu.pool.ntp.org
0.ubuntu.pool.ntp.org has address 158.37.91.134
0.ubuntu.pool.ntp.org has address 85.10.240.253
0.ubuntu.pool.ntp.org has address 91.121.25.33
0.ubuntu.pool.ntp.org has address 123.108.225.6

Поэтому прописывать непосредственно 0.ubuntu.pool.ntp.org бесполезно так как он попадет по правило по умолчанию restrict default. Который в нашем случае все запрещает. Обойти это можно или прописав все IP данного пула в restrict или убрать restrict default ignore и использовать для защиты сервера времени фаервол.

Запускаем ntpd и командой sockstat смотрим процессы ntpd:

> /etc/rc.d/ntpd start
> sockstat | grep -v udp6 | grep ntpd
root     ntpd       65762 3  dgram  -> /var/run/logpriv
root     ntpd       65762 20 udp4   *:123                 *:*
root     ntpd       65762 22 udp4   10.26.95.254:123      *:*

Утилитой ntpq можно проверить какие сервера доступны для синхронизации:

> ntpq -c peers
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*ntp.time.in.ua  .GPS.            1 u   50   64   37    7.457  -28.883  16.186
 128.233.3.100   .STEP.          16 u    -   64    0    0.000    0.000   0.000
+ntp2.imvp.ru    .IMVP.           1 u   58   64   37  102.083  -28.363  16.256
+194.44.35.24    .PPS.            1 u   16   64   37    8.238  -32.665  16.859

Проверочный запрос к нашему серверу утилитой ntpdate FreeBSD. -q указывает не изменять время; -d отладочный режим без изменения времени

> ntpdate -q localhost
server 127.0.0.1, stratum 2, offset -0.000013, delay 0.02571
server ::1, stratum 2, offset -0.000016, delay 0.02574
10 Jan 01:14:48 ntpdate[81851]: adjust time server 127.0.0.1 offset -0.000013 sec

Трассировка NTP маршрута утилитой ntptrace

> ntptrace 
localhost: stratum 3, offset 0.001832, root distance 0.028646
mail.v.com.ua: stratum 2, offset 0.000255, root distance 0.008628
ntp.time.in.ua: stratum 1, offset 0.000001, root distance 0.000000, refid 'GPS'
Нужно разрешить в фаерволе 123 UDP порт.

Настройка клиентов сервера времени

Если вам нужно только синхронизировать ваши часы при загрузке машины, вы можете воспользоваться утилитой ntpdate FreeBSD. Это может подойти для некоторых настольных машин, которые часто перезагружаются и только требуют изредка синхронизироваться, но на большинстве машин должен работать ntpd.

  • Windows - просто указать IP и DNS нашего сервера NTP
  • Ubuntu (любой дистрибутив Debian):
    # aptitude install ntp
    # ntpq -c peers
         remote           refid      st t when poll reach   delay   offset  jitter
    ==============================================================================
     europium.canoni 193.79.237.14    2 u   43   64    7   58.812  -697293  14.720

    Правим /etc/ntp.conf для того чтобы синхронизация производилась с нашим сервером.

    # cp /etc/ntp.conf /etc/ntp.conf.orig
    # nano /etc/ntp.conf
    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
    
    # local NTP server
    server 10.26.95.254 prefer
    # Backup NTP server
    server ntp3.time.in.ua
    
    restrict default ignore
    
    restrict 127.0.0.1
    restrict ::1
    restrict 10.26.95.254
    # ntp3.time.in.ua = 80.91.187.10
    restrict 80.91.187.10
    
    # /etc/init.d/ntp restart
  • FreeBSD достаточно прописать в /etc/rc.conf
    ntpd_enable="YES" # Time(NTP) -server
    ntpdate_enable="YES"
    ntpdate_flags="-u x.x.x.254" # IP NTP server

    и запустить службу, предварительно настроив ./etc/ntp.conf(см. выше)

    > /etc/rc.d/ntpd start

periodic.conf status-ntpd

FreeBSD: 480.status-ntpd - выводит список известных NTP-серверу peer. Если стабильность работы NTP сервера важна - можно включить.

> ee /etc/periodic.conf
# 480.status-ntpd
daily_status_ntpd_enable="YES"                           # Check NTP status

ntpd Fedora, Debian

Параметры запуска демона в следующем конфигурационном файле:

  • Debian:
    ntp-server:~# cat /etc/default/ntp
    NTPD_OPTS='-g'
  • Fedora:
    # cat /etc/sysconfig/ntpd
    # Command line options for ntpd
    OPTIONS="-g"
    

Параметр -g позволит синхронизировать часы, даже если образовалась очень большая разница во времени.


ntp.txt · Последние изменения: 2017/10/15 18:18 — darkfire