Skip to content

Подключение клиентов к системе видеоконференцсвязи

Способы добавления пользователей

Существует три способа получения учетной записи пользователя в системе:

  • Самостоятельная регистрация пользователя
  • Создание учетных записей администратором сервиса и выдача их пользователю
  • Авторизация через SSO (система единого входа, например контроллер домена)

Самостоятельная регистрация пользователей

Самостоятельная регистрация возможна если в настройках сервера, в разделе

Пользователи

включено

Разрешить самостоятельную регистрацию пользователей

Чтобы пользователи сразу подключились к вашему серверу без необходимости ввода его адреса, сервисом предоставляется инсталлятор клиентского приложения с конфигом, содержащим адрес вашего сервера, на странице:

http://<адрес_вашего_сервера>:8778/install

Эта страница доступна всем пользователям и не требует авторизации в панели администратора сервера.

Имя файл инсталлятора имеет вид:

VideoGraceClient-Installer.zip

Внутри файла находится сам инсталлятор и его конфиг

vginst.conf

Инсталлятор скачивает exe файл клиента с сервера и производит его установку в указанную папку. В конфиге можно указать все параметры такие как адрес сервера и прокси, стратегию подключения после установки SPN SSO и др. Ниже приведено возможное содержимое конфига

;; Настройки инсталлятора клиента VideoGrace

[Destination]
;; Папка для размещения приложения
; Path =

[Connection]
;; Адрес сервера (с портом)
Address = cloud.videograce.com:8778
;; Использовать https
; Secure = 1
;; Параметры socks прокси при необходимости
; ProxyType = 0 ; 0 - отключен, 1 - http, 2 - socks5
; ProxyAddr = 
; ProxyPort = 0
; ProxyUser =
; ProxyPass =
;; Копировать настройки прокси, чтобы клиент подключался также через прокси
; CopyProxyParams = 1

[User]
;; Стратегия подключения после установки
;; 1 - Пользователь регистрируется самостоятельно через диалог регистрации в приложении
;; 2 - Пользователь подключается с указанными RegLogin и RegPass
;; 3 - Пользователь авторизуется через SSO (Kerberos / GSSAPI), сервер должен быть подключен к AD / Kerberos
;;     SPN должно содержать работающую SPN доступную для сервера
;; 4 - Пользователь регистрируется автоматически через клиента с RegLogin, RegPass и RegName, 
;; если оставить их пустыми будет взято системное имя, логин и сгенерирован надежный пароль
ConnectionStrategy = 1
; RegLogin = 
; RegPass =
; RegName =
; SPN = VGSRV/myserver.myorg.local
;; После регистрации пользователь добавляется в указанные группы
; RegGroupTag = main, buh, workers
;; Пароли групп через запятые, например: 123, , 456, 789, пустое место перед запятой - нет пароля
; RegGroupPass = 
;; После регистрации пользователь добавляется в участники указанных конференций
; RegConferenceTag = default, weekly
;; Пароли конференций через запятые, например: , 654, пустое место перед запятой - нет пароля
; RegConferencePass =

При отсутствии конфига, инсталлятор попробует скачать файл с облака cloud.videograce.com:8778

Создание учетных записей администратором

Для частных систем, лучше создавать аккаунты пользователей в панели администратора сервиса. Несмотря на трудозатраты (которые можно уменьшить используя csv базу) открывается ряд преимуществ:

  • Исключена несанкционированная регистрация в системе
  • Имена пользователей вводятся в правильном, единообразном виде
  • Пользователей можно упорядочить по группам, нахождение в группе, автоматически создает список контактов клиентского приложения

Подробнее об управлении пользователями и группами

Авторизация через SSO

Что такое SPN и что указывать клиенту

SPN (Service Principal Name) — имя сервиса в Kerberos.

Ниже приведено содержимое конфига клиентского приложения которое включает SSO авторизацию

[Credentials]
SSO = 1
SPN = VGSRV/mysrv.myorg.loc

Используйте FQDN (например, mysrv.myorg.loc), а не localhost/IP. AD-домен в примерах — MYORG.LOC.

1. Предпосылки (обязательно проверить)

  • Машины (сервер и клиенты) в домене MYORG.LOC.

  • DNS корректен: ping mysrv.myorg.loc резолвится в IP сервера.

  • Время синхронизировано (дрейф ≤ 5 минут).

  • На сервере открыт порт VideoGrace Server (8778 TCP).

2. Регистрация SPN в AD

Выберите, на каком аккаунте будет висеть SPN:

setspn -S VGSRV/mysrv.myorg.loc MYSRV$
setspn -Q VGSRV/mysrv.myorg.loc

Вариант A (простой для одной машины): SPN на учётке компьютера

Если сервер будет работать как Windows-служба под LocalSystem на хосте MYSRV:

setspn -S VGSRV/mysrv.myorg.loc svc-vgsrv
setspn -Q VGSRV/mysrv.myorg.loc

Важно: один SPN должен принадлежать ровно одному объекту AD. Если увидели «обнаружен дубликат SPN» — удалите лишний:

setspn -D VGSRV/mysrv.myorg.loc <объект>

3. Установка сервера

3.1 Windows (служба)

Если использовали Вариант A: запускайте службу от имени LocalSystem на хосте MYSRV. Если Вариант B: запускайте службу от имени svc-vgsrv.

Проверьте брандмауэр: разрешите входящий порт сервера (8778 TCP).

После старта можно проверить Kerberos-билет на клиентской машине:

klist get VGSRV/mysrv.myorg.loc

3.2 Linux (systemd)

  1. Если SPN привязан к сервисной учётке (svc-vgsrv).

Cгенерируйте keytab:

ktpass -out C:\temp\vgsrv.keytab ^
    -princ VGSRV/mysrv.myorg.loc@MYORG.LOC ^
    -mapuser svc-vgsrv@MYORG.LOC ^
    -crypto AES256-SHA1 -ptype KRB5_NT_PRINCIPAL ^
    -pass <Пароль_учётки>
  1. Скопируйте vgsrv.keytab на сервер Linux, положите, например, в /etc/krb5.keytab (права 600, владелец — пользователь, под которым запускается сервис).

  2. Убедитесь, что /etc/krb5.conf настроен (realm MYORG.LOC, KDC — ваш DC).

  3. Измените unit-файл systemd:

/etc/systemd/system/vgserver.service

[Unit]
Description=VG Server (Kerberos SSO)
After=network.target

[Service]
User=vgserver
Group=vgserver
Environment=KRB5_KTNAME=/etc/krb5.keytab
ExecStart=/opt/vgserver/vgserver --listen 0.0.0.0:PORT
Restart=on-failure
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

Запуск

sudo systemctl daemon-reload
sudo systemctl enable --now vgserver

3.3 Docker

Смонтируйте keytab и укажите KRB5_KTNAME:

docker run -d --name vgserver \
    -p PORT:PORT \
    -v /etc/krb5.conf:/etc/krb5.conf:ro \
    -v /secure/vgsrv.keytab:/run/secrets/vgsrv.keytab:ro \
    -e KRB5_KTNAME=/run/secrets/vgsrv.keytab \
    myorg/vgserver:latest --listen 0.0.0.0:PORT

4. Настройка клиентов (Windows и Linux)

В конфиге клиента пропишите:

[Credentials]
SSO = 1
SPN = VGSRV/mysrv.myorg.loc