Свой ntp сервер linux

Установка NTP на Ubuntu 18.04

Если вы когда-нибудь задавались вопросом о том, как работает автоматический переход на зимнее/летнее время либо задумывались, как компьютер берет из интернета информацию о точном времени, настраивая внутренние часы, то сегодняшняя статья — для вас. А еще для тех, кому необходимо настроить синхронизацию часов на сервере, работающем под управлением операционной системы Ubuntu 18.04, и на компьютере-клиенте, где установлен аналогичный дистрибутив Linux.

Речь пойдет об NTP — протоколе сетевого времени. Именно он повсеместно применяется для решения таких задач. После прочтения статьи вы сможете:

  • Установить NTP-сервер и настроить его для работы на серверной версии Ubuntu 18.04.
  • Установить клиентское приложение NTP на машине-клиенте с Ubuntu 18.04, а также убедиться в том, что синхронизация с сервером происходит так, как положено.

Установка NTP-сервера на Ubuntu 18.04

Все действия, которые необходимо совершить для достижения цели — то есть, для установки NTP-сервера и синхронизации времени — будут описаны пошагово. Повторять их следует в такой же последовательности, ничего не упуская.

Шаг 1: Обновление списка репозиториев

Сначала рассмотрим как установить NTP сервер Ubuntu 18.04. Но установку любого ПО в Ubuntu предваряет выполнение следующей команды:

Она необходима для того, чтобы ОС обновила список репозиториев и имела актуальный перечень программных файлов, установленных на жестком диске.

Шаг 2: Установка NTP-сервера

Когда компьютер закончит выполнение предыдущей команды, самое время дать ему следующее задание. Оно заключается в установке протокола NTP на Ubuntu 18.04 c длительным сроком поддержки. Команда выглядит так:

После ее получения система проверит, доступны ли ей установочные файлы и сообщит о том, какой объем памяти будет занимать программа. На экране появится запрос на инсталляцию, который нужно подтвердить, нажав клавиши Y и ENTER, либо отклонить нажатием N и Enter (в том случае, если вы решили отложить все это дело на потом).

После завершения не помешает убедиться в том, что установка прошла успешно. Сделать это можно, спросив систему, какая именно версия NTP доступна на компьютере в данный момент:

Шаг 3: Настройка пулов NTP-сервера

Работа NTP-сервера по умолчанию строится на четырех «родных» пулах для Ubuntu. Их адреса прописаны в файле конфигурации /etc/ntp.conf . Нет прямой необходимости что-либо здесь менять, однако, есть смысл заменить пулы на те, которые расположены ближе к физическому месту нахождения сервера.

Воспользовавшись ссылкой https://support.ntp.org/bin/view/Servers/NTPPoolServers, вы можете подобрать наиболее предпочтительные для вас пулы. Мы же воспользуемся еврпейскими пулами NTP.

Читайте также:  Astra linux сетевой экран

Чтобы переписать адреса пулов, нужно открыть упомянутый файл конфигурации в текстовом редакторе. Для этого служит следующая команда:

Список пулов удобнее всего скопировать со страницы сайта и вставить в файл вместо тех, что были там раньше:

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

Затем придется сохранить файл и закрыть его. Однако, сами по себе изменения в силу не вступят — чтобы сервер синхронизировался с новыми пулами, следует перезапустить службу NTP, а затем проверить ее статус. Делают это при помощи двух команд:

sudo systemctl restart ntp
sudo systemctl status ntp

Если брандмауэр UWF активен, компьютеры-клиенты не смогут получать информацию с нашего сервера. Чтобы предоставить им доступ, нужно разрешить ему работу со службой NTP, выполнив одну из указанных команд:

sudo ufw allow ntp
sudo ufw allow 123 / udp

С новыми настройками брандмауэр заработает только после перезагрузки:

Проверить, все ли сделано правильно, можно с помощью такой команды:

Если на вашем экране появилось то же самое, что вы видите на скриншоте, значит, установка и настройка NTP-сервера оказалась успешной. Теперь можно перейти к аналогичным действиям на машине-клиенте.

Установка и настройка NTP-клиента в Ubuntu 18.04

В этом разделе будет описан способ установки NTP-клиента на Ubuntu 18.04, который выполняет роль клиента и должен синхронизировать время Ubuntu с нашим сервером, настроенным ранее.

Шаг 1: Обновление репозиториев

Начало ничем не отличается — следует выполнить команду для обновления списка репозиториев и файлов.

После завершения можно приступать к следующему шагу.

Шаг 2: Установка Ntpdate

Ntpdate — это утилита, которая позволяет синхронизировать время компьютера (локальное) с серверным (глобальным). При этом используются ресурсы NTP. Для инсталляции программы в систему предназначена команда

Чтобы машина-клиент воспринимала NTP-сервер по его названию, нужно отредактировать файл /etc/hosts, внеся в него IP-адрес NTP-сервера и соответствующее имя хоста. Работа с файлом осуществляется при помощи текстового редактора:

IP-адрес и имя хоста должны выглядеть следующим образом:

Шаг 3: Проверка синхронизации времени

Такую проверку выполняют в ручном режиме с помощью команды

sudo ntpdate имя_хоста_ntp_сервера

Поскольку в предыдущем шаге мы присвоили хосту имя, то в нашем случае эта команда будет выглядеть немного иначе:

В ответ система отобразит временной сдвиг.

Для синхронизации времени между клиентом и сервером NTP понадобится отключить службу timesynchd на компьютере-клиенте. Для этого используют следующую команду:

sudo timedatectl set-ntp off

Шаг 4: Установка NTP-клиента

Следующий этап — установка NTP-клиента. Выполняют её командой:

Как и в случае с сервером, система запросит разрешения на продолжение установки. Чтобы согласиться, нужно нажать букву Y клавиатуре и ENTER.

Шаг 5: Настройка NTP-клиента

Теперь наша цель — использовать настроенный ранее NTP-сервер в качестве NTP-сервера для клиентской машины. Чтобы это стало возможным не обойтись без редактирования файла /etc/ntp.conf.

Когда файл откроется, нужно пролистать его в конец и сделать там небольшую приписку, указав bionic как имя хоста для NTP-сервера:

server bionic prefer iburst

После этого обязательно сохраняем изменения и закрываем файл. Для активации новых настроек следует перезапустить службу NTP:

Читайте также:  What is fsck in linux

sudo systemctl restart ntp

Шаг 6: Проверка синхронизации времени

Получить информацию о том, как происходит синхронизация, и происходит ли она вообще, можно командой

Выводы

На этом — все. Установка NTP Ubuntu 18.04 была завершена успешно. Мы настроили как серверную часть, так и клиентскую для синхронизации с NTP-сервером. Свои вопросы и пожелания пишите в комментариях.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Похожие записи

Оцените статью

Об авторе

Больше восьми лет назад мною было принято решение объявить бойкот оконной монополии и установить на свой компьютер Ubuntu. С тех пор это моя основная ОС. Иногда в порядке эксперимента «подселяю» к ней собратьев из семьи Linux. Увлекаюсь фотографией и горным туризмом. В свободное от работы время пишу статьи для losst.ru.

9 комментариев к “Установка NTP на Ubuntu 18.04”

это пока да. но потом придёт какой-нибуть дрянелькин и решит что управлять страной не по плечу и займётся тем что никому не нужно и будет управлять не только временим а геометрию часовых поясов перекраивать. а за ним придёт какой нибуть грёбпутин и решит что всё дерьмо надо как-то разгребать и начнёт так жэ с того что мало кому нужно, выправлять время. но это так об истории а вопрос далее.
спасибо автору за статью! да достаточно хороша, но немножко не полная. действительно сайт посвещён только операцыонке линуксов, но по скольку эта статья касается серверных задач, надо жэ предполагать что сети состоят не только из одних линуксов. но хотябы в скользь упомянуть и про другие настройки остальных операцыонок. к примеру для виндовозников подобный сервер в сети не совсем полезен. к примеру в командной строке виндовозни команда net time \\host к подобному серваку на линуксе обратиться можэт и дажэ достаточно хорошо с ним синхронизируется. но вот стандартная служба с этим линуксовым сервером времени работать не будет. по скольку эта самая виндовозная служба работает с серверами времени через http. вопрос? как на линуксе организовать http сервер времени для синхронизацыи всех машин под любой операцыонкой?
всем всего хорошего! Ответить

Обратите внимание за запись в /etc/ntp.conf # If you want to provide time to your local subnet, change the next line.
# (Again, the address is an example only.)
#broadcast 192.168.123.255 Но для виндов лучше в настройках обновления времени через по Интернет указать локальный сервер NTP. Или в DNS локальной сети узлу time.windows.com, который перегружен и часто недоступен, сопоставить IP сервера NTP. Вторым вариантом м.б. все запросы по udp по порту 123 от потребителей локальной сети заворачивать на порт 123 компьютера, на котором установлен сервер NTP. Ответить

Здравствуте ! Занимательно! Но у вас при вводе sudo vim /etc/ntp.conf. работает не vim , а nano. Ответить

Источник

Установка и настройка NTP-сервера в Linux

Протокол сетевого времени NTP (Network Time Protocol) используется для синхронизации времени в вашей системе с централизованным NTP-сервером. В этой статье рассмотрим установку и настройку NTP сервера.

Читайте также:  Manjaro linux как установить пакет

Установка NTP

В первую очередь нужно установить пакет NTP при помощи менеджера пакетов. Например, в RedHat или CentOS используется yum:

Настройка NTP-сервера

Установка ограничений в ntp.conf
В файл /etc/ntp.conf нужно добавить две строки restrict. Они разрешают синхронизацию с источником данных о времени, но не разрешают источнику опрашивать сервис на нашей системе или изменять его параметры.

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

Первая строка разрешает другим клиентам опрашивать ваш сервер времени. В ней заданы следующие параметры:

noquery – запрещает получение данных о состоянии ntpd
notrap – запрещает использование управляющих сообщений.
nomodify – запрещает все запросы ntpq, которые пытаются изменить параметры сервера.
nopeer – запрещает все пакеты, которые пытаются установить синхронизацию с узлом.
kod – отправка пакета об отказе в обслуживании “Kiss-o-death” для исключения нежелательных запросов, затем отключение от сервера.

Значение -6 во второй строке устанавливает аналогичные параметры для IPV6. Более подробная информация о параметрах приведена в соответствующей man-странице

Проверьте что у вас в фале конфигурации прописаны внешние NTP-сервера. При желании измените их на свои

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

Ограничение круга клиентов

Чтобы с вашим NTP-сервером могли синхронизироваться только машины вашей сети, добавьте в файл /etc/ntp.conf следующую строку (указав актуальные для вашей сети значения):

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

Если на локальном узле требуется полный доступ с возможностью изменения параметров, нужно добавить такую строку:

Резервное использование локальных часов

Чтобы при отключении от Интернета NTP-сервер определял время по своим локальным системным часам, в файле конфигурации нужно прописать соответствующие параметры.

Протокол NTP использует иерархию, называемую Stratum. Sratum 0 – это эталонные часы, Stratum 1 – серверы, получающие время от них напрямую (не по сети). Начиная со Stratum 2 и далее серверы получают время по сети от серверов предыдущего уровня. С каждым уровнем точность времени снижается. Лучше всего выбирать для синхронизации серверы уровня 2, так как несмотря на более высокую точность Stratum 1 они сильнее загружены, и задержка получения пакетов от них может быть слишком большой.

В двух следующих строках мы командой server указываем использование локального узла в качестве сервера времени, а командой fudge задаем его уровень в иерархии Stratum и исключаем обновление, когда доступ к Интернету есть.

server 127.127.1.0 # локальные часы fudge 127.127.1.0 stratum 10

Установка параметров журнала

Укажите в файле конфигурации расположение файла погрешности (driftfile) и файла журнала (logfile):

driftfile /var/lib/ntp/ntp.drift logfile /var/log/ntp.log

Файл погрешности используется для записи отклонений ваших часов от необходимого значения. С течением времени NTP должен постепенно снижать это отклонение.

Запуск NTP-сервера

После задания необходимых параметров в файле конфигурации ntp.conf нужно запустить службу ntp.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Похожие записи:

Источник

Оцените статью
Adblock
detector