
Настройка NTP сервера на Debian
02.05.2015
NTP сервер достаточно полезная штука которая позволит раздать «время» компьютерам в локальной сети. Это очень полезно, особенно в случае использования программ семейства 1С, которые не очень любят если время на клиентах или на сервере различается. Самым простым и наиболее популярным сервером времени в nix системах я считаю NTP сервер. NTP сервер по идее уже идет при базовой установке системы, на всякий случай произведем установку перед настройкой сервера NTP на базе Debian 8.
Произведем установку сервера NTP:
apt-get install ntp ntpdate
Теперь настроем конфигурационный файл:
nano /etc/ntp.conf
Очень важно! 13 января 2014 года стало известно о возможности совершения массовых DDoS-атак через незащищенный демон ntpd. Поэтому вам следует без необходимости не разрешать доступ к вашему NTP серверу извне. В Debian 8 по умолчанию доступ из вне включен, но если у вас другой дистрибутив, то следует добавить в файл /etc/ntp.conf следующие строки:
disable monitor restrict -4 default kod nomodify notrap nopeer noquery restrict -6 default kod nomodify notrap nopeer noquery restrict -4 127.0.0.1 restrict -6 ::1
Примерный листинг файла конфигурации, с русскими комментариями:
#Список серверов для синхронизации времени server 0.ru.pool.ntp.org iburst prefer #Этот сервер будет основным для синхронизации server 1.ru.pool.ntp.org iburst server 2.ru.pool.ntp.org iburst server 3.ru.pool.ntp.org iburst #Отключим мониторинг disable monitor #Файл смещения driftfile /var/db/ntpd.drift #Файл логов NTP сервера logfile /var/log/ntpd.log #Разрешим изменять время нашего сервера через локальный интерфейс restrict 127.0.0.1 #Разрешим изменение времени с выбранных нами серверов restrict 0.ru.pool.ntp.org noquery notrap restrict 1.ru.pool.ntp.org noquery notrap restrict 2.ru.pool.ntp.org noquery notrap restrict 3.ru.pool.ntp.org noquery notrap #Наконец разрешим доступ к серверу времени только из нашей локальной сети restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap nopeer #Если необходимо, то откроем доступ отовсюду. (Это так же даст доступ к вашему NTP серверу из сети интернет, если сервер к нему подключен и к нему открыт доступ) #restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap nopeer
Выбираем пул серверов из временной зоны тут.
Теперь сохраняем файл конфигурации и перезапускаем наш демон:
service ntp restart
Проверьте файл логов на наличие ошибок, если все хорошо, то вам достаточно подождать минут 10-15, до того как сервер автоматически синхронизируется с выбранными серверами. Для того что бы это проверить, введите:
ntpq -c peers
Знак + перед адресом указывает на сервер с которым была последняя синхронизация. Так же можно синхронизироватся с самим собой:
ntpdate -q localhost
или синхронизироватся с выбранным сервером:
ntpdate адрес_сервера #Наприммер 0.ru.pool.ntp.org
Если вам нужно сменить временную зону, то необходимо заменить файл /etc/localtime, для этого достаточно удалить старый файл, и выбрать необходимую зону из каталога /usr/share/zoneinfo/. Напирмер у меня зона Екатеринбург, и я меняю ее на Москву:
rm /etc/localtime ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime
Синхронизация Windows с NTP сервером на Linux
Если ваш NTP сервер имеет стратум ниже 2 или 3, то Windows машины не будут синхронизироаться с вашим NTP сервером на Linux. Но и это достаточно просто решить. Для синхронизации Windows систем через NTP сервер установленный на Linux (Debian, Ubuntu и пр.) можно использовать командную строку:
net time \\IP_АДРЕС_СЕРВЕРА_NTP /set /yes
И рабочая станция под Windows синхронизируется с вашим NTP сервером на Linux системе. Как вариант, создать bat файл, и добавить его в автозагрузку Windows. После чего, синхронизация времени будет происходить после каждой загрузке ОС.