9. Приложение Г «Настройка и запуск NTP-сервера (опционально)»

9.1. Порядок загрузки данных и программ

Внимание

Данный дистрибутивный пакет находится в открытом доступе на портале ЕСКС по адресу https://info.gosuslugi.ru/download.php?id=1342. В него включен rpm пакет chrony для установки на ОС RedOS, а также примеры конфигурационных файлов. В случае использования ОС Astra Linux, соответствующий deb-пакет устанавливается из официального репозитория Astra Linux. Находящиеся в дистрибутивном пакете конфигурационные файлы применимы вне зависимости от версии операционной системы.

Администратор УВ осуществляет развёртывание, запуск и настройку NTP-сервера с помощью данного руководства.

9.2. Настройка и запуск NTP-сервера БЕЗ использования Docker

9.2.1. Состав и содержание дистрибутивного пакета

  • distr/chrony/chrony.rpm – установочный пакет для RedOS 7.3;

  • /distr/common/einfahrt-chrony.service — unit файл для systemd;

  • /distr/config/prodConfig.conf – конфигурационный файл для использования в ПРОД среде;

  • /distr/config/testConfig.conf – конфигурационный файл для использования в ТЕСТ среде.

Путь /distr/ указан в качестве примера. Есть возможность использовать любой другой путь, скорректировав соответствующим образом приведенные ниже команды.

9.2.2. Предварительные операции (установка «пре-реквизитов»)

Примечание

До запуска сервера необходимо убедиться, что время на сервере выставлено корректно.

Перед запуском NTP-сервера выполните от имени пользователя root следующие действия:

  1. Установите пакет с сервисом chrony:

Для Astra Linux 1.7 SE

apt-update && apt-get install -y chrony

Для RedOS 7.3

cd /distr/chrony
yum localinstall chrony.rpm

Для ALT 8 SP Server 10

apt-get install chrony
  1. Скопируйте конфигурационный файл в /etc/chrony.conf:

sudo cp /distr/config/{{environment}}Config.conf /etc/einfahrt-chrony.conf

где {{environment}} – название среды, к которой подключается агент (prod/test)

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

Файл системного сервиса /distr/common/einfahrt-chrony.service скопируйте в каталог /etc/systemd/system/, при необходимости скорректировав в нем пути к файлам.

Далее, от имени пользователя root выполните команду по включению, и запуску сервера, и проверке его статуса:

sudo systemctl daemon-reload
sudo systemctl enable einfahrt-chrony
sudo systemctl start einfahrt-chrony
sudo systemctl -l status einfahrt-chrony

9.3. Настройка и запуск NTP-сервера с использованием Docker

9.3.1. Предварительные условия

  1. На сервере должен быть установлен Docker версии не ниже 20.10.12.

  2. Создан пользователь, который будет запускать NTP-сервер.

  3. Этот пользователь должен иметь права на загрузку Docker-образов и запуск/остановку контейнеров (т.е. добавлен в группу Docker).

9.3.2. Состав и содержание дистрибутивного пакета

Ниже приведён состав дистрибутива NTP-сервера для Docker.

  • /distr/chrony/chrony.tgz – Docker image для загрузки в систему;

  • /distr/scripts/run_chrony.sh – скрипт для запуска и перезапуска NTP-сервера;

  • /distr/scripts/stop.sh – скрипт для остановки NTP-сервера;

Путь /distr/chrony использован для примера, не является фиксированным и может быть изменен на любой другой по желанию пользователя, с соответствующим внесением корректировок при его упоминаниях ниже. Ниже, в качестве примера, будет использоваться данный путь.

9.3.3. Подготовка к запуску

Для запуска NTP-сервера под Docker полученный Docker-образ загрузите в локально установленный Docker на машине, где будет работать NTP.

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

cd /distr/chrony
docker load < chrony.tgz

где chrony.tgz – имя полученного архива с Docker-образом Агента СМЭВ4 из пакета поставки.

Загрузка должна завершиться без ошибок.

Проверьте успешность загрузки командой:

docker images | grep einfahrt-chrony

Вывод будет содержать информацию вида:

einfahrt-chrony     latest          c7511824117e   5 days ago      13MB

9.3.4. Запуск NTP

Для запуска NTP-сервера используется скрипт run_chrony.sh (предварительно раскомментируйте нужную строку с NTP серверами для используемой среды prod/test), входящий в пакет поставки.

Скрипт не требует указания параметров.

При выполнении всех шагов, перечисленных в Раздел 9.3.3, NTP-сервер будет успешно запущен, с сообщением о доступных портах.

При повторном выполнении скрипта контейнер будет остановлен и запущен заново.

Остановка контейнера осуществляется скриптом stop.sh.