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

Записки IT специалиста

Мы уже неоднократно поднимали вопрос важности синхронизации времени, особенно сейчас, когда даже в небольших сетях появляется все больше и больше служб критичных к точному времени. Это криптография, системы контроля доступа и видеонаблюдения, кассовые узлы. В этих условиях точности обычных аппаратных часов начинает не хватать и хотя во многих случаях допускается разбег времени не более пяти минут, лучше не ждать пока это случится (как всегда в самый неподходящий момент), а обеспечить свою инфраструктуру собственным сервером времени. В данной статье мы рассмотрим, как это сделать в системах основанных на Debian.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

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

Данную и все последующие команды следует выполнять с правами суперпользователя.

После установки часового пояса обновите список пакетов и установите пакет NTP-сервера:

apt update
apt install ntp

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

Начнем с вышестоящих серверов для синхронизации времени, рекомендуется выбирать ближайшие к вам сервера, их адреса можно получить на сайте ntppool.org. Затем найдем в конфигурационном файле следующую секцию:

NTP-server-debian-ubuntu-001.png

И заменим значения на следующие:

pool 0.ru.pool.ntp.org iburst
pool 1.ru.pool.ntp.org iburst
pool 2.ru.pool.ntp.org iburst
pool 3.ru.pool.ntp.org iburst

В нашем примере приведены настройки для использования российских серверов времени. Ниже зададим настройку для синхронизации с аппаратными часами на случай отсутствия синхронизации с серверами в интернет:

server 127.127.1.0
fudge 127.127.1.0 stratum 10

Первая строка задает адрес аппаратных часов — 127.127.1.0, вторая указывает приоритет — stratum — он выбран таким образом, чтобы при наличии интернета NTP-сервер не синхронизировался с аппаратными часами. У серверов входящих в пулы ntp.org значение stratum равно двум.

Затем перейдем к списку контроля доступа, который состоит из сетевых адресов отсортированных по возрастанию адресов и масок. Запись по умолчанию — default соответствует адресу 0.0.0.0 с маской 0.0.0.0, если в записи не указана маска, то автоматически подставляется значение 255.255.255.255, что соответствует конечному хосту.

Читайте также:  Все конфигурационные файлы linux

Кроме адресов строки списка содержат флаги, флаги указывают на те или иные ограничения, если строка не содержит флагов — это означает полный доступ к серверу. По умолчанию список контроля доступа, следующий:

NTP-server-debian-ubuntu-002.png

Разберем его подробнее. Первые две строки задают значения по умолчанию, т.е. для любых клиентов, в сетях IPv4 и IPv6:

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

Перечисленные флаги имеют значения:

  • kod — отправка клиенту, посылающему нежелательные запросы, пакета KoD (Kiss O’Death), получатель такого пакета обязан выполнить предписанную ему проверку и изменить свое поведение, в противном случае такой клиент будет отключен от сервера.
  • notrap — запрет приема управляющих сообщений
  • nomodify — запрет приема сообщений, изменяющих состояние сервера
  • nopeer — запрет установки одноранговых отношений с другими NTP-серверами
  • noquery — запрет любых запросов для синхронизации времени поступающих с других серверов
  • limited — запрет обслуживания, если интервал между пакетами от клиента превышает разрешенные значения

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

restrict 127.0.0.1
restrict ::1

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

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

restrict 192.168.111.0 mask 255.255.255.0 nomodify notrap

Если нужно запретить доступ к серверу времени, то следует использовать флаг ignore. Допустим, мы хотим запретить доступ для всех клиентов доменной сети, кроме эмулятора PDC:

restrict 192.168.122.0 mask 255.255.255.0 ignore #доменная сеть
restrict 192.168.122.101 nomodify notrap #PDC

Расположение строк не имеет значения, так как при запуске сервера все адреса будут отсортированы по возрастанию адреса/маски.

После внесения изменений следует перезапустить службу:

Проверить ее статус можно командой:

Состояние синхронизации с вышестоящими серверами можно узнать командой:

Которая выдаст нам следующий вывод:

NTP-server-debian-ubuntu-003.png

На что следует обратить внимание? Прежде всего на символы слева от адреса сервера:

  • * — сервер выбран для синхронизации
  • + — сервер пригодный для синхронизации
  • — синхронизация с этим сервером не рекомендуется
  • x — сервер недоступен

Затем на колонку refid — показывающее вышестоящий сервер синхронизации и колонку offset, которое показывает расхождение ваших часов с эталоном, при положительном значении наши часы спешат, при отрицательном отстают.

Читайте также:  Данные о диске линукс

В колонке st указывается stratum — приоритет сервера, а delay содержит задержку ответа от сервера. Как видим, в нашем случае служба времени выбрала для синхронизации сервер с приоритетом 1, который синхронизируется от GPS-часов, несмотря на более высокий уровень задержки при работе с ним.

Ну и не забудьте разрешить доступ к вашему NTP-серверу в брандмауэре, добавив в правила iptables строку:

iptables -A INPUT -p udp --dport 123 -j ACCEPT

При необходимости можно ограничить доступ сетевым интерфейсом:

iptables -A INPUT -i ens33 -p udp --dport 123 -j ACCEPT
iptables -A INPUT -s 192.168.111.0/24 -p udp --dport 123 -j ACCEPT

Как видим, настроить собственный сервер времени очень и очень просто, можно просто установить пакет и работать. Но гораздо лучше разобраться с настройками, хотя бы на базовом уровне, после чего для вас конфигурация NTP перестанет быть «китайской грамотой» и вы будете понимать, как именно работает ваш сервер.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Подпишись на наш Telegram-канал

Или подпишись на наш Телеграм-канал:

Источник

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

Network Time Protocol. This will make your system date match actual date, by synchronizing with network time servers.

<i data-lazy-src=

Читайте также:  Vnc for linux ubuntu

Дата и временя в Debian

Изображение баннера

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

В этой статье вы узнаете как настраивать дату и время вручную. И, что более важно — как синхронизировать их с ntp сервером.

Узнать текущее системное время

Узнать текущее системное время можно командой date

Узнать текущее время BIOS

Узнать текущее системное время BIOS можно командой hwclock

date и hwclock могут показывать совершенно разное время

Исправить текущее время

Сначала нужно задать время командой date

Также можно вводить «date MMDDhhmmCCYY» без секунд, тогда секунды выставляются на ноль.

После выполнения date нужно внести новое установленное время в BIOS:

Теперь осталось только проверить сохранились ли изменения

Синхронизация с ntp

Проверьте установлен ли ntp командой

Если ntp не установлен выполните

Проверьте запускается ли ntpd автоматически командой

systemctl list-unit-files | grep ntpd.s

Если ntpd неактивен (disabled) выполните

systemctl start ntpd
systemctl enable ntpd

Проверить добавлен ли сервис ntp в зону public в firewall можно командой

sudo firewall-cmd —get-services | grep ntp

Если ещё не добавлен, то чтобы разрешить UDP траффик от ntp выполните

firewall-cmd —permanent —add-service=ntp
firewall-cmd —reload

Отредактируйте файл ntp.conf с настройками сервера

Найдите свою временную зону на сайте www.ntppool.org

Я нашёл зону Helsinki и добавляю строки

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

Теперь нужно перезапустить ntpd

Проверить откуда берётся время можно командой

remote refid st t when poll reach delay offset jitter ============================================================================== time.cloudflare 10.79.8.177 3 u 14 64 7 3.987 -0.366 0.016 37.228.129.2 193.66.253.94 2 u 16 64 7 5.301 -1.639 1.908 ivanova.ganneff 237.17.204.95 2 u 13 64 7 5.296 3.850 0.266 ntp23.kashra-se 192.168.100.15 2 u 12 64 5 32.935 -2.213 0.192

Выставить время BIOS по только что полученному времени можно командой

Заставить систему синхронизовать время с ntp

sudo ntpdate -u 0.fi.pool.ntp.org

Вместо 0.fi.pool.ntp.org поставьте нужный вам сервер. Например, для России подойдёт один из

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

Timezone

Узнать текущую временную зону

Local time: Mon 2023-07-17 23:28:19. EEST Universal time: Mon 2023-07-17 20:28:19 UTC RTC time: Mon 2023-07-17 20:28:19 Time zone: Europe/Helsinki (EEST, +0300) System clock synchronized: yes NTP service: n/a RTC in local TZ: no

Изменить временную зону можно командой set-timezone

timedatectl set-timezone «America/Denver»

timedatectl | grep «Time zone»

Time zone: America/Denver (MDT, -0600)

Источник

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