Навигатор по разделу:
Требования к программному обеспечению
| Операционная система | Alt 10 |
| СУБД | PostgreSQL 13 и выше |
| Веб-сервер | Nginx 1.26 и выше |
| Среда исполнения |
|
Подготовка к установке
Перед установкой Avanpost IDM необходимо подготовить сервер:
- На сервере настроить сеть и обеспечить доступ к Интернету для установки необходимых компонентов.
- Во внутренний DNS добавить три A записи для компонентов IDM по шаблону:
adm.[внутренний домен компании] - [IP адрес сервера IDM] user.[внутренний домен компании] - [IP адрес сервера IDM] idm.[внутренний домен компании] - [IP адрес сервера IDM]
adm.avanpost.local - 192.168.1.11 user.avanpost.local - 192.168.1.11 idm.avanpost.local - 192.168.1.11
Установка Avanpost IDM
После подготовки сервера можно переходить к установке Avanpost IDM. Для этого необходимо подключиться к подготовленному серверу по SSH и выполнить шаги:
Шаг 1. Установить PostgreSQL и развернуть БД
Примечание
Дополнительная информация по установке PostgreSQL
Для этого требуется:
- Установить пакет PostgreSQL и активировать поток модуля:
sudo apt-get install postgresql13-server sudo postgresql-13-setup initdb
- Инициализировать БД и включить автоматический старт:
sudo systemctl start postgresql sudo systemctl enable postgresql
- Создать УЗ в ОС для подключения к БД.
В качестве примера используется логин "db_idm_user".Примечание
Задать имя УЗ и пароль к ней в соответствии с внутренними правилами именования сервисных УЗ и парольных политик.
Сохранить логин и пароль в соответствии с внутренними правилами.
- В БД PostgreSQL создать пользователя "db_idm_user" с привилегиями суперпользователя:
sudo -u postgres createuser --superuser --interactive --pwpromp db_idm_user # задать пароль
- Создать новую базу данных с именем "idm":
sudo -u postgres createdb idm
Шаг 2. Настроить конфигурацию PostgreSQL
Для настройки подключения к БД с аутентификацией пользователя по паролю необходимо:
- Открыть для редактирования конфигурационный файл "
/var/lib/pgsql/data/pg_hba.conf":sudo nano /var/lib/pgsql/data/pg_hba.conf
- В конфигурационном файле заменить тип аутентификации для
localиhostподключений на"md5".
Для этого необходимо:- Закомментировать строки, дописав # в начало:
local all all peer host all all 127.0.0.1/32 ident
- Добавить строки:
local all all md5 host all all 0.0.0.0/0 md5
- Закомментировать строки, дописав # в начало:
- Перезапустить PostgreSQL:
sudo systemctl restart postgresql.service
- Протестировать подключение:
psql -U db_idm_user idm --/Ввести пароль/-- idm=> \q
Шаг 3. Установить Nginx
Для этого требуется:
- Установить пакет
"nginx":sudo apt-get install nginx
- 3апустить сервис
"nginx"и добавить его в автозапуск:sudo systemctl start nginx sudo systemctl enable nginx
- Разрешить локальный проброс портов:
sudo setsebool -P httpd_can_network_connect 1
Шаг 4. Настроить iptables
Примечание
Если установлен iptables, выполнить настройки ниже
Для этого необходимо добавить доступ к протоколам HTTP и HTTPS с помощью команд:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT sudo iptables-save -f /etc/sysconfig/iptables
Шаг 5. Создать пользователя "avanpost"
Выполнить команду:
sudo useradd -M avanpost
Шаг 6. Создать каталог для приложения и настроить доступ к нему
Выполнить команды:
sudo mkdir -p /opt/avanpost/ sudo chown -R avanpost:avanpost /opt/avanpost
Шаг 7. Установить aspnetcore-runtime и dotnet-runtime
Примечание
- Установить пакет:
sudo apt-get install dotnet-sdk-8.0
- Проверить установку с помощью команды:
dotnet --info
Пример корректного вывода командыdotnet --info >.NET SDKs installed: > 8.0.100 [/usr/share/dotnet/sdk] >.NET runtimes installed: > Microsoft.AspNetCore.App 8.0.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] > Microsoft.NETCore.App 8.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
Шаг 8. Распаковать дистрибутив
- Авторизоваться под пользователем
"avanpost":sudo su - avanpost
- Перейти в каталог
"/opt/avanpost":cd /opt/avanpost
- Добавить файл дистрибутива IDM Base в каталог "
/opt/avanpost". - Создать каталог
"/opt/avanpost/idm":mkdir /opt/avanpost/idm
- Распаковать архив с дистрибутивом с помощью команды по шаблону:Заменить в командеШаблон команды
unzip Avanpost.Idm.[Version].zip -d idm
[Version]на номер актуальной версии Avanpost IDM. - Создать каталог конфигурации
"/opt/avanpost/config":mkdir /opt/avanpost/config
- Создать каталог для коннекторов
"/opt/avanpost/connectors":mkdir /opt/avanpost/connectors
- Сгенерировать ключ шифрования:
dd if=/dev/urandom bs=32 count=1 | base64 > /opt/avanpost/config/key
- Разместить файл лицензии
"license.xml"в каталоге"/opt/avanpost/config"с помощью SFTP клиента.Примечание
Вместо
SFTPможно воспользоваться командойscp:Шаблон командыscp [Путь до файла] [реквизиты для подключения по SSH]:[Полный путь папки назначения]
Шаг 9. Настроить файлы конфигурации
- Для создания новой конфигурации скопировать файл
"idm/configs/config.example"в"/opt/avanpost/config/iga.config"и открыть его для редактирования:cp idm/configs/config.example /opt/avanpost/config/iga.config nano config/iga.config
- Установить значения параметров в соответствии с таблицей:
Таблица – Описание и настройка параметров конфигурационного файла
Параметр Описание Значение connectorsFolderПуть к папке хранения коннекторов
Указать
/opt/avanpost/connectorsrootUserПривилегированный пользователь в домене Указать логин пользователя по шаблону:
[Realm]\\[логин]defaultRealmДомен по умолчанию. Realm определяет область аутентификации пользователей.
Например: avanpost.localhostIP адрес сервера каталога LDAP Например: 192.168.1.44 bindDNDN для привязки к LDAP-серверу (DN – идентифицирующее имя объекта в LDAP-директории)
Полный DN в формате: cn=[Имя],dc=[Домен2ур],dc=[Домен1ур]
passwordПароль пользователя Указать пароль пользователя usersBaseОпределяет базовый путь в структуре LDAP-директории, где хранятся и обрабатываются данные пользователей, используемые для процесса аутентификации.
Указать путь до папки userNameAttributeЗадает атрибут, который будет использоваться для идентификации имени пользователя при аутентификации.
Параметр не требуется для управляемой системы MS Active Directory, и может быть удален из конфигурации. connectionStringСтрока подключения к БД
Указать строку по шаблону:
host=127.0.0.1;database=idm;username=db_idm_user;password=[пароль пользователя db_idm_user] - Создать файлы конфигурации кластера:
cp idm/configs/idm/cluster.idm.config.json /opt/avanpost/config/idm-cluster.config cp idm/configs/iga/cluster.iga.config.json /opt/avanpost/config/iga-cluster.config
Шаг 10. Настроить сервисы "idm" и "iga"
- Скопировать пример файла конфигурации сервиса
"idm"в каталог"systemd":sudo cp /opt/avanpost/idm/configs/idm/idm.service /etc/systemd/system/idm.service
- Скопировать пример файла конфигурации сервиса
"iga"в каталог"systemd":sudo cp /opt/avanpost/idm/configs/iga/iga.service /etc/systemd/system/iga.service
- Открыть для редактирования файл
"/etc/systemd/system/iga.service":sudo nano /etc/systemd/system/iga.service
- Заполнить файл
"/etc/systemd/system/iga.service"по примеру:[Unit] Description=IGA App [Service] WorkingDirectory=/opt/avanpost/idm/web ExecStart=/usr/bin/dotnet /opt/avanpost/idm/web/Avanpost.Idm.Selfservice.WebHost.dll Restart=always RestartSec=10 SyslogIdentifier=iga User=avanpost # В строке ниже задается локальный порт на котором будет подниматься приложение Environment="ASPNETCORE_URLS=http://localhost:5001/;http://localhost:5002/" Environment="ASPNETCORE_ENVIRONMENT=Production" Environment="DOTNET_PRINT_TELEMETRY_MESSAGE=false" Environment="IGA_CFG=/opt/avanpost/config/iga.config" Environment="CLUSTER_CFG=/opt/avanpost/config/iga-cluster.config" [Install] WantedBy=multi-user.target
- Добавить сервисы
"idm"и"iga"в автозапуск и запустить их:sudo systemctl daemon-reload sudo systemctl enable idm sudo systemctl enable iga sudo systemctl start idm sudo systemctl start iga
Шаг 11. Настроить Nginx
- Открыть файл конфигурации Nginx
"/etc/nginx/nginx.conf"для редактирования:sudo nano /etc/nginx/nginx.conf
- В секцию
"http"добавить значение:map $http_upgrade $connection_upgrade { default upgrade; "" close; } - Скопировать пример файла конфигурации Nginx в
"/etc/nginx/sites-enabled.d/avanpost.conf":sudo cp /opt/avanpost/idm/configs/idm/idm.conf.nginx /etc/nginx/sites-enabled.d/avanpost.conf
- Открыть конфигурационный файл
"/etc/nginx/sites-enabled.d/avanpost.conf"для редактирования:sudo nano /etc/nginx/sites-enabled.d/avanpost.conf
- В конфигурационном файле
"/etc/nginx/sites-enabled.d/avanpost.conf"указать доменные имена для сервисов, которые перенаправляются Nginx:Параметр Значение server_name Адрес сервиса IDM для обращения к нему сервиса коннекторов в режиме обратного соединения в формате "idm.[ваш домен]"
server_name Адрес web-интерфейса администрирования в формате "adm.[ваш домен]"
server_name Адрес web-интерфейса пользователя в формате "user.[ваш домен]"
[ваш домен] заменить на фактическое доменное имя Примечание
Nginx выполняет анализ запрашиваемого доменного имени и перенаправляет запрос на соответствующий порт, где запущен нужный сервис
- Проверить конфигурацию с помощью команды:
sudo nginx -t
Пример корректного вывода команды# nginx: the configuration file /etc/nginx/nginx.conf syntax is ok # nginx: configuration file /etc/nginx/nginx.conf test is successful
- Перезапустить Nginx:
sudo systemctl restart nginx
Шаг 12. Проверить работу сервера
- Открыть веб-браузер и перейти по адресу "http://adm.[ваш домен]" (заменить [ваш домен] на фактическое доменное имя, настроенное на шаге 11.5 данной инструкции).
- Аутентифицироваться с использованием учетной записи, данные которой были указаны в файле "iga.config" в параметре "rootUser" на шаге 9.2 данной инструкции.
- Перейти по адресу "http://user.[ваш домен]" (заменить [ваш домен] на фактическое доменное имя, настроенное на шаге 11.5 данной инструкции).
- Аутентифицироваться с использованием учетной записи, данные которой были указаны в файле "iga.config" в параметре "rootUser" на шаге 9.2 данной инструкции.
Шаг 13. Загрузить конфигурацию
После завершения установки и проверки работы сервера выполнить загрузку конфигурации через интерфейс администратора IDM Base:
- Перейти в раздел "Администрирование" → "Миграция данных".
- Переключиться на вкладку "Импорт".
- Нажать "Выбрать архив конфигураций" и выбрать файл для загрузки:
configs\Idm.Base.Configuration.zip.
Установка IDM Base завершена. Можно приступать к настройке кадровых источников.
Примечание
Подробнее о кадровых источниках см. статью "6.1.3. Настройка кадровых источников" руководства по администрированию
