[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
ru:howtos:network_services:ntp [2013/03/16 09:16 (UTC)] streamthreaderru:howtos:network_services:ntp [2013/03/17 11:54 (UTC)] (текущий) bormant
Строка 1: Строка 1:
-====== Синхронизируйте Вашу сеть с NTP ====== +====== Синхронизация сети с NTP ====== 
-NTP (сетевой протокол времени) позволяет синхронизировать часы между компьютерами. В этой статье опсывается: + 
-  * конфигурирование NTP сервера в Slackware Linux;+NTP (сетевой протокол времени) позволяет синхронизировать часы между компьютерами. В статье описывается: 
 +  * настройка сервера NTP в Slackware Linux;
   * синхронизация клиентских ПК с локальным NTP сервером.   * синхронизация клиентских ПК с локальным NTP сервером.
  
-==== Введение ==== +===== Введение =====
-Когда несколько пользователей работают в сети с общими файлами на разных ПК, очень важно, что бы эти машины были синхронизированы. +
-Это особенно важно если Вы обмениваетись файлами через NFS, или если Вы используете NIS для централизованной системы авторизации. +
-Если Ваши часы будут рассинхронизированны, то Вы будете получать странные ошибки, и долго искать причину. +
-К сожалению часы в клиентских машинах не очень точны +
-Вот где NTP пригождается. Он позволяет машинам подключёным к сети правильно корректировать свои часы, будучи идельно синхронизированными друг с другом. Публичные сервера времени в интернете, позволяют получать точное время. С этого места, мы можем использовать NTP разными путями. +
-  * Команда ntpdate инициализирует корректировку часов BIOS'а. +
-  * Одноразовой корректировки не достаточно для сервера который работает 24/7, так как его часы будут постепенно отклоняться от точного времени. Для этого случая у нас есть ntpd даемон (поставляется вместе с пакетом ntp). Этот даемон регулярно подключается к публичным серверам и инкрементирует коррецию времени локальных часов. +
-  * ntpd Даемон может быть сконфигурирован как сервер времени для обслуживания локальных клиентских машин в сети. +
-Это хорошая практика сипользовать ntpdate для первой корректировки и ntpd для регулярной синхронизации.+
  
-==== Информация для настройки фаервола ====+Когда несколько пользователей на разных ПК работают с общими файлами в сети, очень важно, чтобы все эти машины были синхронизированы. Это особенно важно при обмене файлами через NFS или при использовании для централизованной авторизации NIS. Рассинхронизация часов порождает различные странные ошибки, заставляющие подолгу выискивать их причины. Вот только часы в клиентских машинах не очень точны.
  
-Сервис NTP использует UDP порт 123. Откройте этот порт если Вы хотите разрешить удалённым машинам подключаться к Вашему NTP серверу.+Тут-то и пригодится NTP. Он позволяет подключённым к сети машинам подстраивать свои часы для синхронизации друг с другом. Публичные сервера времени в Интернете позволяют получать точное время. Затем можно использовать NTP различными способами.
  
-==== Синхронизация локального или публичного корневого сервера с NTP сервером в интернете ====+  * Команда ''ntpdate'' выполняет первичную коррекцию часов BIOS. 
 +  * Одноразовой корректировки недостаточно для работающего 24/7 сервера, поскольку его часы будут постепенно отклоняться от точного времени. В этом случае нужно настроить демон ntpd (поставляется в пакете ''ntp''). Этот демон периодически подключается к публичным серверам и постепенно поправляет время локальных часов. 
 +  * В свою очередь, демон ''ntpd'' можно настроить в качестве сервера времени для клиентских машин в локальной сети. 
 + 
 +Считается хорошей практикой использовать ''ntpdate'' для первичной коррекции и ''ntpd'' для последующей синхронизации. 
 + 
 +===== Настройка фаервола ===== 
 + 
 +Сервис NTP использует порт UDP 123. Чтобы разрешить удалённым машинам подключаться к NTP серверу, откройте этот порт. 
 + 
 +===== Синхронизация локального или публичного корневого сервера с сервером NTP в Интернете ====
 + 
 +Создайте пустой файл журнала:
  
-Создание пустого файла-журнала: 
 <code> <code>
- # touch /var/log/ntp.log+# touch /var/log/ntp.log
 </code> </code>
-Посетите http://www.pool.ntp.org для выбора списка серверов для вашего местоположения. + 
-Настройте NTP сервис редактированием файла /etc/ntp.conf. Сделайте резервную копию этого файла и начните с нуля. +Посетите [[http://www.pool.ntp.org| www.pool.ntp.org]] для выбора списка серверов для вашего местоположения. 
-В примере нижесписок из четырёх серверов выбраных мною для моего местоположения (Франция):+ 
 +Настройте сервис NTP правкой файла ''/etc/ntp.conf''Если хотите, сделайте резервную копию этого файла и начните с нуля.  
 + 
 +В примере ниже список из четырёх сервероввыбранных мною для моего местоположения (Франция): 
 <code> <code>
 # /etc/ntp.conf # /etc/ntp.conf
Строка 45: Строка 52:
 restrict 127.0.0.1 mask 255.0.0.0 restrict 127.0.0.1 mask 255.0.0.0
 </code> </code>
-Небольшое описание некоторых параметров: 
-  * Эта ерунда 127.127.1.10 со стратумом 10, является директивой с описанием аварийного сервера, который будет использоваться в случае если внешние источники стали недуступны. Когда это случилось, NTP продолжает работать сам опираясь на внутрений сервер. 
-  * NTP имеет свой арсенал правил для ограничения доступа к сервису, которые могут быть использованы вне зависимости от фаервола. Директива "restrict" в вышеуказанной конфигурации предоствращает изменение серверов на удалённой машине (первая restrict опция), и настроен для доверия свмому себе (вторая опция restrict). 
-  * Директива restrict без аргументов но с указанием имени хоста (или IP адреса) сводиться к тому, что всё будет разрешено. 
  
 +Краткое описание отдельных параметров:
 +
 +  * «fudge 127.127.1.10 stratum 10» — директива описывает аварийный сервер, который будет использоваться, если внешние источники вдруг станут недоступны. Когда это случится, NTP продолжит работать, опираясь на свой «внутренний» сервер.
 +  * NTP имеет свой арсенал правил для ограничения доступа к сервису, которые могут быть использованы независимо от фаервола. Директивы ''restrict'' в вышеуказанной конфигурации предотвращают изменение настройки серверов на удалённой машине (первая строка ''restrict'') и настраивают доверие самому себе (вторая строка ''restrict'').
 +  * Директива ''restrict'' без аргументов с последующим указанием имени хоста или адреса IP означает ''allow all'' — «разрешить всё».
 +==== Управление сервисом NTP ====
 +
 +Перед запуском сервиса выполните первичную коррекцию системных часов:
  
-===== Управление NTP сервисом ===== 
-Перед тем как запустить сервис, проведите корректировку системных часов: 
 <code> <code>
 # ntpdate pool.ntp.org # ntpdate pool.ntp.org
 </code> </code>
-<note> + 
-Команда ntpdate считается устаревшей, но она пригодится при настройке времени. "Православныйспособ использовать команду ntpd -g  - это официальная замена ntpdate но этот способ может провалиться если ваши часы сбились больше чем на пол часа. +<note>Команда ''ntpdate'' считается устаревшей, но она по-прежнему удобна для настройки времени. «Православный» способ — использовать команду ''ntpd -g'' — официальную замену ''ntpdate'', но этот способ не сработаетесли часы сбились на полчаса или больше.</note> 
-</note> + 
-Активируем сервис NTP:+Активация запуска сервиса NTP при загрузке машины: 
 <code> <code>
 # chmod +x /etc/rc.d/rc.ntpd # chmod +x /etc/rc.d/rc.ntpd
 </code> </code>
 +
 Управление сервисом NTP Управление сервисом NTP
 +
 <code> <code>
 # /etc/rc.d/rc.ntpd start|stop|restart|status # /etc/rc.d/rc.ntpd start|stop|restart|status
 </code> </code>
-Теперь отобразим список серверов к которым Ваша машина подключена:+ 
 +Теперь отобразим список серверовк которым подключена машина: 
 <code> <code>
 # ntpq -p # ntpq -p
Строка 76: Строка 90:
 +62.210.255.117  192.93.2.20      2 u   29   64  377   77.097  -249.57 85.641 +62.210.255.117  192.93.2.20      2 u   29   64  377   77.097  -249.57 85.641
 -ntp.univ-poitie 145.238.203.10   3 u   29   64  377   57.747  -191.58 107.002 -ntp.univ-poitie 145.238.203.10   3 u   29   64  377   57.747  -191.58 107.002
-LOCAL(0)        .LOCL.          10 l  164   64  374    0.000    0.000 0.001+ LOCAL(0)        .LOCL.          10 l  164   64  374    0.000    0.000 0.001
 </code> </code>
-Маленькая * звездочка встречающаяся в одной из линий выше, означает что Ваша машина успешно синхронизируется с этим сервером. 
-<note tip> 
-Первая синхронизация может затянуться до нескольких минут, а иногда даже до полу часа. 
-</note> 
  
-==== Синхронизация клиентских ПК с Вашим локальным NTP сервером ==== +Маленькая ''*'' звездочка в начале одной из строк выше означает, что машина успешно синхронизирована с этим сервером NTP. 
-В локальной сетиразумно использовать синхронизацию только на одной машине - на сервере - с публичным NTP сервисом, а клиентские ПК с этим локальным сервером. Это сохранит пропускную способность и немного разгрузит публичные серверы NTP. + 
-Как и выше, проведем инициализированную корректировку системных часов:+<note tip>Первая синхронизация может занимать до нескольких минут, а иногда и до получаса.</note> 
 + 
 +===== Синхронизация клиентских ПК с локальным сервером NTP ====
 + 
 +В локальной сети разумно синхронизировать с публичным сервером NTP только одну машину — сервер, а клиентские ПК синхронизировать уже с этим локальным сервером. Это сэкономит пропускную способность и немного разгрузит публичные серверы NTP. 
 + 
 +Как и выше, выполним первичную корректировку системных часов: 
 <code> <code>
 # ntpdate pool.ntp.org # ntpdate pool.ntp.org
 </code> </code>
-Создаём пустой файл-журнал:+ 
 +Создадим пустой файл журнала: 
 <code> <code>
 # touch /var/log/ntp.log # touch /var/log/ntp.log
 </code> </code>
-Теперь настроим NTP для синхронизации с локальным сервером. Замените в примере IP (192.168.2.1) на свой реальный серверный IP:+ 
 +Теперь настроим NTP для синхронизации с локальным сервером. Замените адрес IP из примера (192.168.2.1) на правильный адрес сервера:
 <code> <code>
 # /etc/ntp.conf # /etc/ntp.conf
Строка 109: Строка 129:
 restrict 192.168.2.1 mask 255.255.255.255 restrict 192.168.2.1 mask 255.255.255.255
 </code> </code>
-   Этот список restrict опций означают, мы блокируем весь NTP трафик за исключением своего клиента и сервера.+  Три директивы ''restrict'' блокируют весь трафик NTP за исключением самого клиента и сервера. 
 Активируем и запустим сервис NTP: Активируем и запустим сервис NTP:
 +
 <code> <code>
 # chmod +x /etc/rc.d/rc.ntpd # chmod +x /etc/rc.d/rc.ntpd
 # /etc/rc.d/rc.ntpd start # /etc/rc.d/rc.ntpd start
 </code> </code>
-Как и в примерах выше, воспользуемся командой ntpq -p для проверки когда же пройдёт синхронизация.+ 
 +Как и раньше, для проверки прохождения синхронизации воспользуемся командой ''ntpq -p'': 
 <code> <code>
 # ntpq -p # ntpq -p
Строка 123: Строка 147:
  LOCAL(0)        .LOCL.          10 l  10h   64    0    0.000    0.000   0.000  LOCAL(0)        .LOCL.          10 l  10h   64    0    0.000    0.000   0.000
 </code> </code>
-<note tip> 
-Опять же, Вы должны подождать несколько минут прежде чем пройдёт первая синхронизация. 
-</note> 
  
-==== Синхронизация при загрузке системы ==== +<note tip>Повторюсь, нужно подождать несколько минут, прежде чем завершится первая синхронизация.</note> 
-Если Вам необходимо выполнить один раз синхронизацию при загрузке системы, то можно обойтись без даемона, воспользовавшись командой ntpd -qg & в конце файла /etc/rc.d/rc.local. Эта команда проведёт синхронизацию один раз в фоновом режиме и выйдет по завершении, для выполнения этой команды файл /etc/rc.d/rc.ntpd не должен быть исполняемым.+ 
 +===== Синхронизация при загрузке системы ===== 
 + 
 +Если вместо использования демона всё, что нужно — однократная синхронизация при загрузке системы, можно добавить команду ''ntpd -qg &'' в конец файла ''/etc/rc.d/rc.local''. Эта команда однократно синхронизирует время в фоновом режиме и завершится, для её выполнения атрибут исполнения на файле ''/etc/rc.d/rc.ntpd'' не требуется. 
 <code> <code>
 ~# cat /etc/rc.d/rc.local ~# cat /etc/rc.d/rc.local
Строка 139: Строка 164:
 # make an /etc/rc.d/rc.local_shutdown script and put those # make an /etc/rc.d/rc.local_shutdown script and put those
 # commands in there. # commands in there.
-. + 
-. + 
-.+
 ntpd -qg & ntpd -qg &
 </code> </code>
  
-====== Sources ======+====== Источники ======
  
   * Автор статьи [[wiki:user:kikinovak|Niki Kovacs]]   * Автор статьи [[wiki:user:kikinovak|Niki Kovacs]]
Строка 153: Строка 178:
 <!-- You must remove the tag-word "template" below before saving your new page --> <!-- You must remove the tag-word "template" below before saving your new page -->
 {{tag>howtos time clock synchronization author_kikinovak}} {{tag>howtos time clock synchronization author_kikinovak}}
- 
- 
  
 ru:howtos:network_services:ntp ()