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 следующие действия:
Установите пакет с сервисом 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
Скопируйте конфигурационный файл в
/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. Предварительные условия
На сервере должен быть установлен Docker версии не ниже 20.10.12.
Создан пользователь, который будет запускать NTP-сервер.
Этот пользователь должен иметь права на загрузку 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.