Система NAICE поставляется в виде образов для запуска контейнеров в системе контейнеризации и управления приложениями Docker. Для управления всеми компонентами системы используется плагин Docker Compose, предназначенный для решения различных задач для мультиконтейнерных приложений. БД Postgres может быть при необходимости установлена в виде приложения.
Для автоматизации установки используются плейбуки Ansible.
Ниже приведена инструкция по выполнению однохостовой установки. Инструкция по установке с резервированием системы приведена в статье v0.7_3.6 Резервирование. |
Для запуска плейбуков необходимо установить Ansible на хост, с которого есть доступ по SSH до целевого хоста.
Запускать плейбук непосредственно на целевом хосте не рекомендуется. |
Рекомендуемая ОС хоста для запуска плейбука - Ubuntu 22.04 Jammy и новее.
Минимальная версия Ansible для корректной работы плейбуков установки 2.10.8.
Официальная документация по установке Ansible.
Помимо способов, описанных в документации, возможна установка ПО на Linux-хост через утилиту apt
:
sudo apt install ansible |
Пакет доступен в базовых репозиториях большинства дистрибутивов Linux.
NAICE является лицензируемым продуктом, для активации функционала необходима лицензия. См. v0.7_2. Лицензирование. На момент установки наличие лицензии необязательно, активировать продукт можно позже в момент первого входа в WEB-интерфейс. До активации лицензии функционал будет заблокирован. |
Для разворачивания системы необходимо поместить приложенный архив "ansibleNaice.tar.gz" на хост, с которого будет осуществляться запуск плейбука, в отдельную папку.
Затем необходимо распаковать архив:
tar -xzvf ansibleNaice.tar.gz |
Установите утилиту sshpass, если она не установлена, командой:
sudo apt install sshpass |
Для установки СУБД Postgres в виде DEB пакетов необходимо установить коллекцию Ansible:
ansible-galaxy collection install community.postgresql |
Установка СУБД Postgres в DEB пакетах возможна только на ОС Ubuntu 22/24! Для других поддерживаемых типов ОС установка возможна только в виде контейнера вместе с установкой сервисов NAICE. |
Для настройки хоста, на который будет выполняться развертывание системы, требуется отредактировать файл "hosts.yml". В переменной ansible_host
необходимо указать IP-адрес или доменное имя целевого хоста:
--- common: hosts: common_host: ansible_host: <IP-адрес или доменное имя хоста для NAICE> |
Указанный IP-адрес или доменное имя хоста будет добавлен в параметр в Subject Alternative Name при генерации самоподписанного сертификата во время установки сервисов NAICE. |
Создать конфигурационный файл "ansible.cfg" из шаблона:
cp -v ansible.cfg.template ansible.cfg |
по логину/паролю:
[defaults] inventory = hosts.yml host_key_checking = False deprecation_warnings = False |
и дополнить "hosts.yml":
--- common: hosts: common_host: ansible_host: <IP-адрес или доменное имя хоста для NAICE> ansible_user: <логин пользователя> ansible_ssh_pass: <пароль пользователя> ansible_become_pass: <пароль для повышения привилегий (sudo)> |
по ключу (предварительно необходимо сгенерировать и поместить ключ на целевой хост):
[defaults] inventory = hosts.yml host_key_checking = True private_key_file = <путь к файлу ключа> deprecation_warnings = False |
Проверить корректность указанных настроек и наличие доступа до удаленного хоста с помощью:
ansible all --list-hosts # проверить список хостов ansible all -m ping # проверить доступ до хостов |
Пример вывода, если хост доступен:
common_host | SUCCESS => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python3" }, "changed": false, "ping": "pong" } |
В случае, если выбрана схема лицензирования с Offline ELM, необходимо указать адрес сервера в файле переменных плейбука "group_vars/all.yml":
gulo_elm_server_url: https://<IP адрес Offline ELM>:<порт Offline ELM> |
По умолчанию Offline ELM запущен на порту 8099.
Если лицензирование выполняется на центральном сервере компании "Элтекс" (Online ELM), то изменять значение переменной не нужно.
Между NAICE и ELM должна быть обеспечена сетевая связность. Для проверки доступности можно выполнить на хосте с NAICE команду:
curl -k https://<IP адрес ELM>:<порт ELM>/elm/Hello |
Если сервер ELM доступен, то вывод команды будет иметь вид:
{"server-info":{"version":"1.4","build":"14","root":false,"serverType":"elm","daemonMode":"server","serverMode":"offline","protocolSupported":3,"protocolActual":3,"server-type":"elm","protocol-supported":3,"protocol-actual":3},"status":2,"result":"OK"} |
При необходимости интеграции с Active Directory в файле переменных плейбука "group_vars/all.yml" требуется указать корректные переменные и включить интеграцию (v0.7_4.1 Пример настройки интеграции с Active Directory):
use_ms_ad: True radius_ms_ad_ip: '192.168.0.1' radius_kerberos_ad_user_login: 'fill_login' radius_kerberos_ad_user_password: 'fill_password' radius_kerberos_workgroup: 'WS' radius_kerberos_kdc: 'WS.LOC' radius_kerberos_admin_server: 'LABMS.WS.LOC' radius_samba_ou_structure: 'Computers' |
Описание параметров интеграции с MS AD:
Параметр | Назначение |
---|---|
use_ms_ad | Включить интеграцию с MS AD, True / False. |
radius_ms_ad_ip | IP-адрес сервера MS AD. |
radius_kerberos_ad_user_login | Логин пользователя для подключения к серверу MS AD, в формате <имя пользователя>@<домен MS AD, в котором он находится>. |
radius_kerberos_ad_user_password | Пароль пользователя для подключения к серверу MS AD. |
radius_kerberos_workgroup | Домен MS AD, в котором будет выполняться авторизация пользователей, заглавными буквами. |
radius_kerberos_kdc | Полное доменное имя MS AD, заглавными буквами. |
radius_kerberos_admin_server | Полное имя сервера с MS AD вместе с полным именем домена, заглавными буквами. |
radius_samba_ou_structure | Подразделение (OU), в которое требуется добавить сервер NAICE при регистрации в MS AD. По умолчанию все компьютеры добавляются в подразделение Computers. |
УЗ, которая используется для взаимодействия с MS AD должна иметь возможность добавлять компьютеры в домен MS AD. УЗ требуется делегировать управление "Чтение информации о всех пользователях", используя функционал MS AD. В соответствии с ограничениями по умолчанию в MS AD, любой авторизованный пользователь может добавить до 10 компьютеров в домен, поэтому его можно поместить в группу "Гости домена" или любую другую группу - он сможет добавлять компьютер в домен. Если используется нестандартное подразделение (OU) для добавления сервера с NAICE в MS AD - УЗ должна иметь права добавлять компьютер в требуемое подразделение. |
Взаимодействие с NIACE с MS AD осуществляется через доменные имена, указанные в параметрах "radius_kerberos_admin_server" и "radius_kerberos_admin_server". DNS-сервер, к которому обращается NAICE должен корректно выполнять преобразование данных имен в IP-адреса. Отдельно следует обратить внимание на то, что при наличии нескольких IP-адресов на сервере с MS AD, его DNS-сервер будет случайным образом выдавать данные адреса при разрешении данных имен. В этом случае требуется обеспечить IP-связность до всех адресов MS AD с сервера NAICE. |
Узнать какой DNS-сервер используется можно командой "resolvectl status", при этом следует обратить внимание на то, что для разных интерфейсов могут использоваться различные IP-адреса DNS сервера.
$resolvectl status Global Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported resolv.conf mode: foreign DNS Servers: 192.168.0.1 Link 2 (eth0) Current Scopes: none Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported Link 3 (eth1) Current Scopes: none Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported Link 4 (eth2) Current Scopes: none Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported |
Если в вводе команды ничего нет - возможно DNS-сервер прописан в файле "/etc/resolv.conf":
$ cat /etc/resolv.conf nameserver 192.168.0.1 |
Проверить корректность определения необходимых доменных имен, которые содержатся в переменных "radius_kerberos_kdc" и "radius_kerberos_admin_server" можно командами:
dig WS.LOC # Указать имя домена из переменной radius_kerberos_kdc dig LABMS.WS.LOC # Указать имя сервера MS AD из переменной radius_kerberos_admin_server |
$dig WS.LOC ; <<>> DiG 9.18.28-0ubuntu0.22.04.1-Ubuntu <<>> WS.LOC ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26658 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4000 ;; QUESTION SECTION: ;WS.LOC. IN A ;; ANSWER SECTION: WS.LOC. 600 IN A 192.168.0.1 ;; Query time: 0 msec ;; SERVER: 192.168.0.1#53(192.168.0.1) (UDP) ;; WHEN: Wed Nov 27 11:34:52 UTC 2024 ;; MSG SIZE rcvd: 53 |
Доменные имена обязательно должны резолвиться в секции ответа "ANSWER SECTION". В случае если имена не резолвится - необходимо обеспечить корректную работу DNS-сервера до установки Eltex-NAICE, в противном случае интеграция с MS AD будет неработоспособна. Если в ответе возвращается несколько IP-адресов соответствующих имени - необходимо убедиться до все они доступны с сервера, где устанавливается Eltex-NAICE. |
Для работы метода аутентификации EAP-TLS, настройка которой подробно рассмотрена в разделе v0.7_4.7 Пример настройки EAP-TLS аутентификации, требуются выпустить сертификат, предназначенный для использования NAICE, и расположить его на хосте, с которого будет запускаться выполнение плейбука Ansible. Для корректной установки требуются:
Сертификат корневого сервера ЦС
Сертификат для сервера NAICE
Приватный ключ сертификата сервера NAICE.
Сертификаты требуется расположить в папке плейбуков Ansible "roles/docker/files/eap-tls".
В секции переменных плейбука "group_vars/all.yml", отвечающих за установку сертификатов для работы EAP-TLS требуется указать переменные, чтобы включить интеграцию:
# параметры для авторизации по протоколу EAP-TLS # параметры сертификатов # для включения установки сертификатов протокола EAP-TLS необходимо расположить файлы сертификатов сервера в папке ansible/roles/docker/files/eap-tls radius_eap_tls_cert_dir_copy: false # включить (true) или выключить (false) копирование сертификатов из директории ansible/roles/docker/files/eap-tls radius_eap_tls_certs_ca_cert_file: trusted_server.crt # имя файла корневого (CA) сертификата radius_eap_tls_certs_private_key_file: trusted_server.k # имя файла приватного ключа сертификата сервера radius_eap_tls_certs_private_key_password: # пароль к файлу приватного ключа сертификата сервера, оставьте пустым, если файл приватного ключа не запаролен radius_eap_tls_certs_certificate_file: trusted_server_chain.crt # имя файла серверного сертификата # настройки проверки статуса отозванных сертификатов по протоколу OCSP radius_eap_tls_ocsp_enable: 'true' # Включение проверки статуса отзыва сертификата по протоколу OCSP radius_eap_tls_ocsp_override_url: 'true' # Использовать URL сервиса OCSP из сертификата radius_eap_tls_ocsp_url: 'http://100.110.2.12/ocsp' # URL для обращения к сервису OCSP radius_eap_tls_ocsp_softfail: 'true' # Мягкая проверка доступа к серверу проверки OSCP, если сервер недоступен, процесс не завершится, а продолжится radius_eap_tls_ocsp_timeout: 0 # Таймаут обращения к серверу OSCP radius_eap_tls_ocsp_use_nonce: 'true' # Позволяет включить одноразовый код в запрос - nonce, который может быть включен в соответствующий ответ |
Описание параметров, которые необходимо настроить для работы протокола EAP-TLS:
Параметр | Назначение |
---|---|
radius_eap_tls_cert_dir_copy | Переменная, отвечающая за копирование сертификатов из папки на целевой хост и использование их в сервисе "nacie-radius" |
radius_eap_tls_certs_ca_cert_file | Имя файла корневого сертификата ЦС. |
radius_eap_tls_certs_private_key_file | Имя файла приватного ключа сервера. |
radius_eap_tls_certs_private_key_password | Пароль к файлу приватного ключа сервера. Если значение не указано - считается что пароль не используется. В пароле не допускается использовать символы: $, ', ", `, знаки скобок и пробел. |
radius_eap_tls_certs_certificate_file | Имя файла сертификата сервера. |
radius_eap_tls_ocsp_enable | Включить проверку статуса отзыва сертификата по протоколу OCSP (false | true). По умолчанию false (проверка отключена). |
radius_eap_tls_ocsp_override_url | Откуда брать URL OCSP -сервера: false - использовать URL из сертификата клиента; true - использовать URL из настройки radius_eap_tls_ocsp_url. По умолчанию false. |
radius_eap_tls_ocsp_url | URL для обращения к OCSP-серверу (разрешен только http режим). |
radius_eap_tls_ocsp_softfail | Поведение в случае недоступности OCSP-сервера (false | true): false - прекратить аутентификацию, если не удается получить доступ; true - продолжить аутентификацию без проверки отзыва сертификата, если OCSP-сервер не доступен. |
radius_eap_tls_ocsp_timeout | Таймаут обращения к серверу OCSP (секунды). По умолчанию 0. |
radius_eap_tls_ocsp_use_nonce | Включить одноразовый код nonce в запрос на проверку сертификата для предотвращения подмены запроса (false | true): false - не включать, true - включить. По умолчанию true. |
При необходимости измените значения других переменных окружения в "group_vars/all.yml". Например, можно изменить директорию установки сервисов NAICE или установить адрес NAICE, отличный от адреса управления.
Предусмотрены два варианта дистрибуции СУБД - установка сервиса и разворачивание docker-контейнера. Рекомендуемый вариант - docker-контейнер.
Убедитесь, что переменная "externally_installed_postgres" в файле "group_vars/all.yml" имеет значение false.
PostgreSQL будет установлен далее вместе с остальными сервисами NAICE.
Установка PostgreSQL как сервиса плейбуком доступна только на хост с операционной системой Ubuntu 22.04 и Ubuntu 24.04. |
Запустите специальный плейбук, который установит postgresql-15, подготовит конфигурационные файлы, создаст необходимые БД и пользователей:
ansible-playbook common-naice-databases.yml |
Запустите плейбук common-naice-services.yml
для установки движка Docker, плагина Docker-compose и запуска через этот плагин сервисов NAICE:
если PostgreSQL планируется устанавливать в docker-контейнере (рекомендуется):
ansible-playbook common-naice-services.yml |
если PostgreSQL установлен как сервис ранее указанным плейбуком:
ansible-playbook common-naice-services.yml -e "externally_installed_postgres=true" |
Во время установки сервисов NAICE для пользовательских интерфейсов lemmus, gavia и larus автоматически выполняется генерация самоподписанного сертификата. При наличии собственного заверенного сертификата после установки сервисов предусмотрена возможность заменить самоподписанный сертификат на собственный. Подробную информацию об использовании сертификатов безопасности можно найти здесь. |
Время запуска контейнеров в связи с использованием механизма healthcheck для проверки успешности старта сервисов может занять до нескольких минут. Дождитесь полного выполнения плейбука. |
Проверить успешность запуска контейнеров можно перейдя в директорию для установки NAICE (по умолчанию - /etc/docker-naice/
) и выполнив команду для просмотра списка и статуса контейнеров docker compose ps -a
. Вывод команды должен быть примерно следующим:
$ sudo docker compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS naice-gavia nexus.eltex.loc:9015/naice-gavia:0.7 "java -cp @/app/jib-…" naice-gavia 11 hours ago Up 11 hours (healthy) 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp naice-gulo nexus.eltex.loc:9015/naice-gulo:0.7 "java -cp @/app/jib-…" naice-gulo 11 hours ago Up 11 hours (healthy) 0.0.0.0:8089-8090->8089-8090/tcp, :::8089-8090->8089-8090/tcp naice-lemmus nexus.eltex.loc:9015/naice-lemmus:0.7 "java -cp @/app/jib-…" naice-lemmus 11 hours ago Up 11 hours (healthy) 0.0.0.0:8083->8083/tcp, :::8083->8083/tcp naice-lepus nexus.eltex.loc:9015/naice-lepus:0.7 "java -cp @/app/jib-…" naice-lepus 11 hours ago Up 11 hours (healthy) 0.0.0.0:8087->8087/tcp, :::8087->8087/tcp, 0.0.0.0:67->1024/udp, [::]:67->1024/udp naice-nats nexus.eltex.loc:9012/naice/nats:0.7.1 "docker-entrypoint.s…" nats 11 hours ago Up 11 hours (healthy) 0.0.0.0:4222->4222/tcp, :::4222->4222/tcp, 0.0.0.0:6222->6222/tcp, :::6222->6222/tcp, 0.0.0.0:7777->7777/tcp, :::7777->7777/tcp, 0.0.0.0:8222->8222/tcp, :::8222->8222/tcp naice-ovis nexus.eltex.loc:9015/naice-ovis:0.7 "java -cp @/app/jib-…" naice-ovis 11 hours ago Up 11 hours (healthy) 0.0.0.0:5701->5701/tcp, :::5701->5701/tcp, 0.0.0.0:8084-8085->8084-8085/tcp, :::8084-8085->8084-8085/tcp naice-postgres nexus.eltex.loc:9012/naice/postgres:0.7.1 "docker-entrypoint.s…" postgres 11 hours ago Up 11 hours (healthy) 0.0.0.0:5432->5432/tcp, :::5432->5432/tcp naice-radius nexus.eltex.loc:9015/naice-radius:0.7 "/docker-entrypoint.…" naice-radius 11 hours ago Up 11 hours (healthy) 0.0.0.0:1812-1813->1812-1813/udp, :::1812-1813->1812-1813/udp, 0.0.0.0:9812->9812/tcp, :::9812->9812/tcp naice-ursus nexus.eltex.loc:9015/naice-ursus:0.7 "java -cp @/app/jib-…" naice-ursus 11 hours ago Up 11 hours (healthy) 0.0.0.0:8081-8082->8081-8082/tcp, :::8081-8082->8081-8082/tcp naice-vulpus nexus.eltex.loc:9015/naice-vulpus:0.7 "java -cp @/app/jib-…" naice-vulpus 11 hours ago Up 11 hours (healthy) 0.0.0.0:5702->5702/tcp, :::5702->5702/tcp, 0.0.0.0:8086->8086/tcp, :::8086->8086/tcp, 0.0.0.0:8088->8088/tcp, :::8088->8088/tcp naice-web nexus.eltex.loc:9015/naice-web:0.7 "/docker-entrypoint.…" naice-web 11 hours ago Up 11 hours (healthy) 80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp, 0.0.0.0:80->4200/tcp, [::]:80->4200/tcp |
Условные обозначения:
Переменная | Значение по умолчанию | Описание |
---|---|---|
Переменные для дистрибуции | ||
BACKEND_VERSION_TAG | 0.7 | Версия сервисов бэкенда (naice-gavia, naice-lemmus, naice-ovis, naice-ursus) |
FRONTEND_VERSION_TAG | 0.7 | Версия сервиса фронтенда (naice-web, известный как larus) |
POSTGRES_VERSION_TAG | 0.7.1 | Версия контейнерезированного образа БД postgres |
RADIUS_VERSION_TAG | 0.7 | Версия контейнерезированного образа FreeRadius |
NATS_VERSION_TAG | 0.7.1 | Версия контейнерезированного образа NATS |
ELTEX_HUB | hub.eltex-co.ru/naice | Внешний репозиторий со стабильными версиями сборок ПО |
BACKEND_HUB | ELTEX_HUB | Переменная, хранящая текущий выбранный репозиторий для загрузки сервисов бэкенда |
FRONTEND_HUB | ELTEX_HUB | Переменная, хранящая текущий выбранный репозиторий для загрузки сервиса фронтенда |
RADIUS_HUB | ELTEX_HUB | Переменная, хранящая текущий выбранный репозиторий для загрузки контейнера с FreeRADIUS |
CI_HUB | hub.eltex-co.ru | Внешний репозиторий для сборок сопутствующих продуктов (PostgreSQL) |
Переменные Gavia | ||
GAVIA_PORT | 8080 | Порт, на котором работает сервис внутри контейнера. |
GAVIA_HOST_PORT | 8080 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
Переменные Ursus | ||
URSUS_PORT | 8081 | Порт, на котором работает сервис внутри контейнера. |
URSUS_HOST_PORT | 8081 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
URSUS_GRPC_PORT | 8082 | Порт, на котором работает GRPC для сервиса внутри контейнера. |
URSUS_GRPC_HOST_PORT | 8082 | Порт, в который пробрасывается порт GRPC для сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
URSUS_POSTGRES_USERNAME | ursus | Пользователь для доступа сервиса в СУБД PostgreSQL. |
URSUS_POSTGRES_PASSWORD | ursus | Пароль пользователя для доступа сервиса в СУБД PostgreSQL. |
URSUS_POSTGRES_DB | ursus | Наименование БД, используемой сервисом |
URSUS_POSTGRES_JDBC_URL | jdbc:postgresql://{{ ansible_host }}:5432/ursus | URL для взаимодействия с БД с помощью JDBC. |
URSUS_GRPC_ADMIN_SERVICE_ADDRESS | dns:/naice-ursus:8082 | Адрес GRPC сервера сервиса naice-ursus. По этому адресу происходит взаимодействие naice-gavia и naice-ursus. |
URSUS_OUI_UPDATE_TIME_S | 86400 | Периодичность обновления списка MAC OUI, с |
URSUS_OUI_UPDATE | True | Включить/выключить обновление списка MAC OUI |
URSUS_OUI_UPLOAD_FILE_URL | https://standards-oui.ieee.org/oui/oui.csv | Адрес списка MAC OUI, который используется для обновления |
Переменные Lemmus | ||
LEMMUS_PORT | 8083 | Порт, на котором работает сервис внутри контейнера. |
LEMMUS_HOST_PORT | 8083 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
LEMMUS_POSTGRES_USERNAME | ursus | Пользователь для доступа сервиса в СУБД PostgreSQL. |
LEMMUS_POSTGRES_PASSWORD | ursus | Пароль пользователя для доступа сервиса в СУБД PostgreSQL. |
LEMMUS_ISSUER_URL | https://{{ ansible_host }}:8083 | URL для запроса токена другими сервисами. |
LEMMUS_REDIRECTS | https://{{ ansible_host }}:8080/actuator/health, https://{{ ansible_host }}:443/login | URL для перенаправления клиента после получения токена. |
LEMMUS_ACCESS_TTL_S | 3600 | Время жизни токена в секундах. |
LEMMUS_REFRESH_TTL_S | 7200 | Время в секундах, в течении которого токен можно продлить. |
Переменные PostgreSQL | ||
POSTGRES_USER | postgres | Пользователь, создаваемый при установке и настройке СУБД. |
POSTGRES_PASSWORD | postgres | Пароль пользователя, создаваемый при установке и настройке СУБД. |
Переменные Ovis | ||
OVIS_PORT | 8084 | Порт, на котором работает сервис внутри контейнера. |
OVIS_HOST_PORT | 8084 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
OVIS_GRPC_PORT | 8085 | Порт, на котором работает GRPC для сервиса внутри контейнера. |
OVIS_GRPC_HOST_PORT | 8085 | Порт, в который пробрасывается порт GRPC для сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
OVIS_GRPC_SERVICE_ADDRESS | dns:/naice-ovis:${OVIS_GRPC_PORT} | Адрес, на который выполняется запрос о состоянии сервиса. |
OVIS_CACHE_TTL_S | 86400 | Время жизни кэша naice-ovis в секундах, в течении которого он хранит настройки аутентификации и авторизации. По истечении этого времени настройки перечитываются. |
OVIS_SESSION_IDLE_S | 86400 | Время жизни неактивных сессии пользователей, с. |
OVIS_POSTGRES_JDBC_URL | jdbc:postgresql://{{ ansible_host }}:5432/ursus | Адрес подключения к БД |
OVIS_POSTGRES_USERNAME | ovis | Логин подключения к БД |
OVIS_POSTGRES_PASSWORD | ovis | Пароль подключения к БД |
Переменные Larus (WEB) | ||
LARUS_PORT | 4200 | Порт, на котором работает сервис внутри контейнера. |
LARUS_HOST_PORT | 80 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
FRONTEND_API_URL | https://{{ ansible_host }}:8080/api/v1 | URL для взаимодействия с сервисом naice-gavia. |
FRONTEND_AUTHORIZATION_URL | https://{{ ansible_host }}:8083 | URL для редиректа на страницу авторизации. |
FRONTEND_WEB_URL | https://{{ ansible_host }}:443 | URL на котором работает WEB-интерфейс. |
Переменные NATS | ||
NATS_PORT | 4222 | Порт, на котором работает сервис |
NATS_MONITORING_PORT | 8222 | Порт, через который выполняется мониторинг сервиса |
NATS_EXPORTER_PORT | 7777 | Порт, через который сервис отдает метрики в формате prometheus |
NATS_ADDRESS | nats://naice-nats:${NATS_PORT} | Адрес, на котором работает сервис |
NATS_PROMETHEUS_EXPORTER_ARGS | "-connz -varz -channelz -serverz -subz" | Аргументы командной строки, которые используется при формировании метрик prometheus |
NATS_CLUSTER_PORT | 6222 | Порт для взаимодействия nats в кластере |
Переменные Vulpus | ||
VULPUS_PORT | 8086 | Порт, на котором работает сервис внутри контейнера. |
VULPUS_HOST_PORT | 8086 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
VULPUS_GRPC_PORT | 8088 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия по gRpc. |
VULPUS_POSTGRES_USERNAME | vulpus | Логин для подключения к БД. |
VULPUS_POSTGRES_PASSWORD | vulpus | Пароль для подключения к БД. |
VULPUS_POSTGRES_JDBC_URL | jdbc:postgresql://{{ ansible_host }}:5432/lepus | Адрес БД для подключения. |
VULPUS_GRPC_SERVICE_ADDRESS | dns:/naice-vulpus:${VULPUS_GRPC_PORT} | Порт, на котором внутри контейнера работает gRpc сервер. |
Переменные Lepus | ||
LEPUS_PORT | 8087 | Порт, на котором работает сервис внутри контейнера. |
LEPUS_HOST_PORT | 8087 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
LEPUS_REPOSITORY_BATCH_SIZE | 500 | Размер пакета сохранения проб в БД (количество) |
LEPUS_POSTGRES_USERNAME | lepus | Логин для подключения к БД. |
LEPUS_POSTGRES_PASSWORD | lepus | Пароль для подключения к БД. |
LEPUS_POSTGRES_JDBC_URL | jdbc:postgresql://{{ ansible_host }}:5432/lepus | Адрес БД для подключения. |
LEPUS_DHCP_PROBE_ENABLED | true | Включение/отключение сбора DHCP проб. |
LEPUS_DHCP_PROBE_PORT | 1024 | Внутренний порт в контейнере для сбора DHCP проб. В него пробрасывается порт сервиса из контейнера на хостовую машину. |
LEPUS_DHCP_PROBE_HOST_PORT | 67 | Внешний порт сервиса для сбора DHCP проб. |
LEPUS_DHCP_PROBE_SCHEDULE_CLEAR_PROBES_AFTER_DAYS | 30 | Время хранения DHCP проб в БД. |
LEPUS_DHCP_PROBE_SCHEDULE_CLEAN_EXPIRED_CRON | 0 0 * * * * | Расписание для запуска задачи по очистке устаревших DHCP проб в БД. |
Переменные Gulo | ||
GULO_PORT | 8089 | Порт, на котором работает сервис внутри контейнера. |
GULO_HOST_PORT | 8089 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
GULO_GRPC_PORT | 8090 | Порт, на котором работает GRPC для сервиса внутри контейнера. |
GULO_GRPC_HOST_PORT | 8090 | Порт, в который пробрасывается порт сервиса из контейнера на хостовую машину. Используется для взаимодействия с сервисом. |
GULO_GRPC_SERVICE_ADDRESS | dns:/naice-gulo:${GULO_GRPC_PORT} | Адрес, на который выполняется запрос о состоянии сервиса. |
GULO_ELM_SERVER_URL | https://elm.eltex-co.ru:8099 | URL до сервера ELM. |
Переменные для настройки сертификата для HTTPS | ||
SSL_CERT | /etc/docker-naice/https/server.crt | Путь до файла сертификата |
SSL_CERT_KEY | /etc/docker-naice/https/server.key | Путь до файла закрытого ключа сертификата |
SSL_CERT_PASS | Пароль от закрытого ключа; по умолчанию - без пароля | |
Переменные RADIUS | ||
Общие переменные | ||
RADIUS_AUTH_PORT | 1812 | Порт аутентификации для обработки RADIUS-запросов аутентификации. |
RADIUS_ACCT_PORT | 1813 | Порт для обработки RADIUS-аккаунтинга. |
RADIUS_EXPORTER_PORT | 9812 | Порт, через который сервис отдает метрики в формате prometheus. |
RADIUS_LOG_PATH | /var/log/radius | Файл на хостовой машине для хранения логов работы сервиса. |
RADIUS_REST_OVIS_IP | {{ ansible_host }} | IP-адрес для подключения к сервису NAICE-Ovis. |
RADIUS_REST_OVIS_PORT | 8084 | Порт для подключения к сервису NAICE-Ovis. |
RADIUS_POSTGRES_DB_HOST | {{ ansible_host }} | IP-адрес подключения к БД. |
RADIUS_POSTGRES_DB_PORT | 5432 | Порт подключения к БД. |
RADIUS_POSTGRES_DB_LOGIN | radius | Логин для подключения к БД. |
RADIUS_POSTGRES_DB_PASSWORD | radius | Пароль для подключения к БД. |
RADIUS_POSTGRES_DB_NAME | ursus | Наименование БД для подключения. |
Переменные для настройки авторизации по протоколу EAP-PEAP | ||
RADIUS_CERTS_DIR_PATH | не задано | Директория, где располагается внешний (пользовательский) сертификат, который необходимо использовать при работе FreeRADIUS. По умолчанию не указывается, т.к. имеется встроенный валидный сертификат. |
RADIUS_CERTS_CA_CERT_FILE | trusted_server.crt | Наименование файла внешнего сертификата CA. |
RADIUS_CERTS_PRIVATE_KEY_FILE | trusted_server.k | Наименование внешнего приватного ключа сертификата. |
RADIUS_CERTS_PRIVATE_KEY_PASSWORD | не задано | Пароль к внешнему приватному ключу сертифката. |
RADIUS_CERTS_CERTIFICATE_FILE | trusted_server_chain.crt | Наименование файла внешнего сертификата, который будет использовать FreeRADIUS. |
Переменные для настройки авторизации по протоколу EAP-TLS | ||
RADIUS_EAP_TLS_CERTS_CA_CERT_FILE | trusted_server.crt | Имя файла корневого (CA) сертификата |
RADIUS_EAP_TLS_CERTS_PRIVATE_KEY_FILE | trusted_server.k | Имя файла приватного ключа сертификата сервера |
RADIUS_EAP_TLS_CERTS_PRIVATE_KEY_PASSWORD | Пароль к файлу приватного ключа сертификата сервера; оставьте пустым, если файл приватного ключа не запаролен | |
RADIUS_EAP_TLS_CERTS_CERTIFICATE_FILE | trusted_server_chain.crt | Имя файла серверного сертификата |
Переменные для работы с сервисом проверки статуса отозванных сертификатов (OCSP) | ||
RADIUS_EAP_TLS_OCSP_ENABLE | false | Включение проверки статуса отзыва сертификата по протоколу OCSP |
RADIUS_EAP_TLS_OCSP_OVERRIDE_URL | false | Использовать URL сервиса OCSP из сертификата |
RADIUS_EAP_TLS_OCSP_URL | http://127.0.0.1/ocsp | URL для обращения к сервису OCSP |
RADIUS_EAP_TLS_OCSP_SOFTFAIL | false | "Мягкая" проверка доступа к серверу проверки OSCP - если сервер недоступен, процесс не завершится, а продолжится |
RADIUS_EAP_TLS_OCSP_TIMEOUT | 0 | Таймаут обращения к серверу OSCP |
RADIUS_EAP_TLS_OCSP_USE_NONCE | true | Включить одноразовый код в запрос - nonce, который может быть включен в соответствующий ответ |
Переменные для настройки интеграции с MS AD | ||
RADIUS_MS_AD | False | Включение/отключение интеграции с MS AD. По умолчанию отключено. |
RADIUS_MS_AD_IP | 192.168.1.1 | IP-адрес сервера MS AD. |
RADIUS_KERBEROS_AD_USER | fill_login | Логин для подключения к серверу MS AD. |
RADIUS_KERBEROS_AD_USER_PASSWORD | fill_password | Пароль для подключения к серверу MS AD. |
RADIUS_KERBEROS_ADMIN_SERVER | LABMS.WS.LOC | Полный адрес сервера MS AD. |
RADIUS_KERBEROS_KDC | WS.LOC | Полный адрес домена MS AD, в котором будет работать Eltex-NAICE. |
RADIUS_KERBEROS_WORKGROUP | WS | Домен MS AD, в котором будет работать Eltex-NAICE. |
RADIUS_KERBEROS_LOGS_PATH | /var/log/kerberos | Файл на хостовой машине для хранения логов работы kerberos. |
Переменные уровня логирования сервисов | ||
ROOT_LOGGING_LEVEL | DEBUG | Корневой уровень логирования. Логи сервисов выше данного уровня не отображаются. |
URSUS_LOGGING_LEVEL | DEBUG | Уровень логирования сервиса NAICE-Ursus |
GAVIA_LOGGING_LEVEL | DEBUG | Уровень логирования сервиса NAICE-Gavia |
LEMMUS_LOGGING_LEVEL | DEBUG | Уровень логирования сервиса NAICE-Lemmus |
OVIS_LOGGING_LEVEL | DEBUG | Уровень логирования сервиса NAICE-Ovis |
LEPUS_LOGGING_LEVEL | DEBUG | Уровень логирования сервиса NAICE-Lepus |
VULPUS_LOGGING_LEVEL | DEBUG | Уровень логирования сервиса NAICE-Vulpus |