Автоматическая регистрация пользователя на UserGate UTM посредством REST API

ID статьи: 115
Последнее обновление: 28 апр, 2023
KnowledgeBase:
Product: UserGate NGFW
Version: 6.1.8, 6.1.9, 7.0.0, 7.0.2, 7.1.0, 7.2.0

Сервер UserGate NGFW поддерживает функции взаимодействия с удалёнными клиентами и сторонними приложениями.

По умолчанию данные функции поддерживаются только в зоне управления UserGate (зона Management), но могут быть включены в любой зоне. Для этого необходимо выполнить запрос на адрес https://UserGateIP:8001?features=zone-xml-rpc и в разделе Сеть ➜ Зоны включить сервис XML-RPC для управления на зоне, через которую будет происходить взаимодействие. Далее необходимо перезагрузить UserGate. После перезагрузки UserGate готов к приёму API-запросов.

Для настройки автоматической авторизации пользователей на UserGate необходим настроенный Captive-портал (подробнее о настройке Captive-портала читайте в соответствующей главе UserGate 7. Руководство администратора).

Также необходимо настроить ОС ПК для запуска следующих скриптов (скрипты доступны по ссылкам: для UserGate NGFW v6, для UserGate v7.1.0;)

архив содержит 2 скрипта :

  • scriptLogin.py – автоматизация авторизации пользователя на Captive-портале UserGate при входе в систему.

  • scriptLogout.py – автоматическое завершение сессии пользователя при выходе из системы.

В скрипте scriptLogin.py необходимо указать имя и пароль (в открытом виде, т.к. API не поддерживает передачу хеша от пароля) пользователя. Опционально можно изменить URL-адрес для начального обращения к Captive-порталу (urlVerification).

ПримечаниеСкрипты для UserGate NGFW 7.1.0, не будут работать для версий ниже, поскольку там нет нужных API. Также данный функционал доступен с версии 6.1.8. для версий ниже работоспособность не гарантируется

Настройка запуска скриптов на ОС Windows

  1. Откройте Редактор локальной групповой политики.

  2. Перейдите Конфигурация пользователя ➜ Конфигурация Windows ➜ Сценарии (вход/выход из системы), выберите, например, сценарий входа в систему и нажмите Свойства.

  1. В открывшемся окне нажмите Добавить и укажите скрипт scriptLogin.py.

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

Выполните аналогичные действия для настройки автоматического сброса авторизации пользователя при его выходе из системы.

Настройка запуска скриптов на Unix-подобных системах

  1. В домашней директории пользователя создайте файл .xprofile (точка обязательна) и сделайте файл исполняемым (chmod +x ~/.xprofile).

  2. Пропишите в файле следующие строки:
#!/bin/bash
$HOME/.scriptLogin
trap '. $HOME/.scriptLogout; exit' 0

Также можно воспользоваться функционалом подсистемы инициализации и управления службами systemd. В этом случае необходимо создать файл сервиса и зарегистрировать его в systemd.

  1. Для работы скрипта создайте файл с произвольным именем, например, auth.service в каталоге ~/.config/systemd/user.

  2. Добавьте в файл следующее (укажите путь к скриптам вместо /path/to/start/login-script и /path/to/start/logoff-script):
[Unit]

Description=Auth service on UserGate UTM
After=network.target network-online.target
Wants=network-online.target

[Service]

Type=oneshot
RemainAfterExit=true
TimeoutStartSec=0
ExecStart=/path/to/start/login-script
ExecStop=/path/to/start/logoff-script

[Install]

WantedBy=default.target
  1. Выполните команды (вместо auth.service укажите название файла, созданного на шаге 1):

systemctl --user daemon-reload
systemctl --user enable auth.service

Аналогичным образом реализуйте запуск скрипта сброса сессии пользователя при перезагрузке или выключении машины.

Эта статья была:   Полезна | Не полезна
Сообщить об ошибке
ID статьи: 115
Последнее обновление: 28 апр, 2023
Ревизия: 23
Просмотры: 7641
Комментарии: 0
Теги