NTP-сервер

Network Time Protocol (NTP) — сетевой протокол для синхронизации внутренних часов компьютера с использованием сетей с переменной латентностью.
NTP использует для своей работы протокол UDP. Система NTP чрезвычайно устойчива к изменениям латентности среды передачи. NTP — один из старейших используемых протоколов. NTP разработан Дэвидом Л. Миллсом (David L. Mills) из университета Дэлавера в 1985 году и в настоящее время продолжает совершенствоваться. Текущая версия — NTP 4.
NTP использует иерархическую систему «часовых уровней» (stratum). Уровень 1 синхронизирован с высокоточными часами, например, с системой GPS, ГЛОНАСС (Единая Государственная шкала времени РФ) или атомным эталоном времени. Уровень 2 синхронизируется с одной из машин уровня 1, и так далее.
Скопипастил здесь

Всё что будет написано ниже проверено и 100% работает на Debian 7.3
Исходные данные
192.168.100.1 — внутренний IP(eth1)
192.168.100.0/24 — IP клиента
server1 — имя данного сервера
Установим:
 [root@server1 ~] # apt-get install ntp ntpdate
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
  libopts25 lockfile-progs
Предлагаемые пакеты:
  ntp-doc
НОВЫЕ пакеты, которые будут установлены:
  libopts25 lockfile-progs ntp ntpdate
обновлено 0, установлено 4 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 729 kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 1 765 kB.
Хотите продолжить [Д/н]? 
...
...
...
Настраивается пакет libopts25 (1:5.12-0.1) …
Настраивается пакет ntp (1:4.2.6.p5+dfsg-2) …
[ ok ] Starting NTP server: ntpd.
Настраивается пакет ntpdate (1:4.2.6.p5+dfsg-2) …
Настраивается пакет lockfile-progs (0.1.17) …
[Втр 2014/01/21 14:16][root@server1 ~] #
Лог в отдельный файл:
# cat /etc/default/ntp 
NTPD_OPTS='-g -l /var/log/ntplog'
Настройки в файле /etc/ntp.conf
[root@server1 /etc] # cat /etc/ntp.conf
# /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help

driftfile /var/lib/ntp/ntp.drift

interface ignore all
interface listen eth1

# собственно сервера с которыми будут синхронизироваться этот сервер
server 0.ru.pool.ntp.org iburst
server 1.debian.pool.ntp.org iburst
server 2.debian.pool.ntp.org iburst
server 3.debian.pool.ntp.org iburst

restrict ru.pool.ntp.org
restrict 0.debian.pool.ntp.org
restrict 1.debian.pool.ntp.org
restrict 2.debian.pool.ntp.org
restrict 3.debian.pool.ntp.org

# By default, exchange time with everybody, but don't allow configuration.
restrict default kod nomodify notrap
restrict -6 default kod nomodify notrap

# Local users may interrogate the ntp server more closely.
restrict 127.0.0.1
restrict ::1

# для 192.168.100.0/24 разрешаем все, кроме трапов и модификаций
restrict 192.168.100.0 mask 255.255.255.0 nomodify notrap

broadcast 192.168.100.255

disable auth
broadcastclient

# чем выше уровень-тем меньше число. 0 - это атомные часы,
# 1 - это синхронизированные с ними, 2 - с первым, и так далее.
server  127.127.1.1
fudge   127.127.1.1     stratum 3
ВАЖНО!!! использовать именно 127.127.1.1, потому как сказано в/usr/share/doc/ntp-doc/html/refclock.html:
Reference clock addresses are of the form 127.127.t.u, where t is an integer denoting the clock type and u indicates the unit number in the range 0-3. While it may seem overkill, it is in fact sometimes useful to configure multiple reference clocks of the same type, in which case the unit numbers must be unique.
clock type, unit number1 /usr/share/doc/ntp-doc/html/refclock.html#list: Type 1 Undisciplined Local Clock (LOCAL)
перегружаем NTP-сервер:
[root@server1 ~] # service ntp restart
[ ok ] Stopping NTP server: ntpd.
[ ok ] Starting NTP server: ntpd.
Проверим:
[root@server1 ~] # ntpdate -q localhost
server ::1, stratum 3, offset 0.000008, delay 0.02565
server 127.0.0.1, stratum 3, offset 0.000010, delay 0.02567
21 Jan 15:31:19 ntpdate[3055]: adjust time server ::1 offset 0.000008 sec
Windows XP:
C:\Documents and Settings\Администратор>net time /setsntp:192.168.100.1
Команда выполнена успешно.


C:\Documents and Settings\Администратор>net stop w32time
Служба "Служба времени Windows" останавливается.
Служба "Служба времени Windows" успешно остановлена.


C:\Documents and Settings\Администратор>net start w32time
Служба "Служба времени Windows" запускается.
Служба "Служба времени Windows" успешно запущена.


C:\Documents and Settings\Администратор>net time /querysntp
Текущее значение SNTP: 192.168.100.1

Команда выполнена успешно.
далеко не лишним будет добавить строку, благодаря которой сервер ntp будет отвечать только на «нужном» интерфейсе
interface ignore wildcard
interface listen 192.168.100.0
проверим
# netstat -tulnp | grep 123
udp   0   0 192.168.100.255:123   0.0.0.0:*   27543/ntpd
udp   0   0 192.168.100.1:123     0.0.0.0:*   27543/ntpd
udp   0   0 127.0.0.1:123         0.0.0.0:*   27543/ntpd
Рубрики: *nix, Debian, DHCP, NTP | 2 | 22 513 | Распечатать эту статью