===== Как подключить лицензионный USB-ключ Guardant в Debian GNU/Linux 10 (Buster) для Offline-активации Flussonic Media Server 21.11 ===== {{:flussonic:pasted:20220118-150349.png }} Программный продукт **Flussonic Media Server** (далее **FMS**) является лицензируемым ПО и для своей работы требует наличия либо USB-ключа защиты **Guardant** (в случае автономного варианта развёртывания), либо ввода лицензионного ключа, который проверяется основной службой **flussonic** при каждом запуске через Интернет на серверах лицензирования Flussonic. Здесь будет рассмотрен пример подключения USB-ключа **Guardant** на физический сервер с ОС **Debian GNU/Linuх 10 (Buster)**, который предполагает использования серийного номера лицензии с Offline-активацией службы сервера FMS. В нашем примере предполагается, что ранее на рассматриваемом сервере [[flussonic:installing-flussonic-media-server-on-debian-linux-10-buster|уже был развёрнут]] FMS версии 21.11. ---- Для того, чтобы запустить FMS с USB-ключом для возможности Offline-активации нам понадобится: - Сам USB-ключ Guardant - Номер лицензии (лицензионный ключ) на экземпляр FMS. - Специальный файл Offline-активации, связанный с конкретной версией FMS ---- ==== Подключение ключа Guardant к серверу с Debian Linux 10 ==== Если ключ уже подключен к USB-порту сервера, то его нужно на время извлечь. Добавляем в Linux-систему правила для **udev**, которые будут определять специальный формат именования устройств, связанных с USB-ключами Guardant. Файл правил udev можно взять из поставки ПО Flussonic, скопировав его из каталога FMS в конфигурационный каталог udev:
# cp /opt/flussonic/contrib/95-grdnt.rules /etc/udev/rules.d/
В целом этот файл почти аналогичен тому, что описывается в документе [[https://dev.guardant.ru/display/PUB/Installing+a+dongle+on+a+Linux+system|Guardant Documentation : Installing a dongle on a Linux system]] и в статье [[https://dev.guardant.ru/pages/viewpage.action?pageId=1278017|Установка ключей Guardant в операционных системах GNU/Linux]] Можно создать файл ''/etc/udev/rules.d/95-grdnt.rules'' самостоятельно. Содержимое файла должно быть таким: # Guardant ID SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="0a89", ATTRS{idProduct}=="0002", MODE="0666" # Guardant Sign/Time SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="0a89", ATTRS{idProduct}=="0008", MODE="0666" # Guardant Code SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="0a89", ATTRS{idProduct}=="0009", MODE="0666" # Guardant Code Pro SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="0a89", ATTRS{idProduct}=="00c0", MODE="0666" # HID SUBSYSTEM=="usb", GOTO="grd_hid_rules_end_check_subsystem" SUBSYSTEM!="usbmisc" GOTO="grd_hid_rules_end" LABEL="grd_hid_rules_end_check_subsystem" ACTION!="add", GOTO="grd_hid_rules_end" KERNEL!="hiddev*", GOTO="grd_hid_rules_end" # Guardant Sign/Time HID ATTRS{idVendor}=="0a89", ATTRS{idProduct}=="000c", MODE="0666", SYMLINK+="grdhid%n" # Guardant Code HID ATTRS{idVendor}=="0a89", ATTRS{idProduct}=="000d", MODE="0666", SYMLINK+="grdhid%n" # Guardant Code Pro HID ATTRS{idVendor}=="0a89", ATTRS{idProduct}=="00c1", MODE="0666", SYMLINK+="grdhid%n" LABEL="grd_hid_rules_end" После создания файла заставим udev перечитать правила (без перезапуска службы).
# udevadm control --reload-rules
# udevadm trigger --subsystem-match=usb --action=add
Либо просто перезапустим службу:
# systemctl restart udev
Теперь снова устанавливаем USB-ключ Guardant в USB-порт сервера. В момент физической установки ключа смотрим системный лог и убеждаемся в том, что устройство определяется в системе без ошибок:
# tail -f /var/log/syslog

.. kernel: .. usb 2-3: new high-speed USB device number 7 using xhci_hcd .. kernel: .. usb 2-3: New USB device found, idVendor=0a89, idProduct=000d, bcdDevice= 1.00 .. kernel: .. usb 2-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 .. kernel: .. usb 2-3: Product: Guardant Code .. kernel: .. usb 2-3: Manufacturer: Aktiv Co. .. kernel: .. usb 2-3: SerialNumber: 1234567812345678 .. kernel: .. hid-generic 0003:0A89:000D.0005: hiddev0,hidraw0: USB HID v1.10 Device [Aktiv Co. Guardant Code ] on usb-0000:00:14.0-3/input0
Убеждаемся в том, что в системе появилось устройство с именем типа **grdhidX**:
# ls -la /dev/grdhid*

lrwxrwxrwx 1 root root 11 Nov 12 18:11 /dev/grdhid0 -> usb/hiddev0
\\ ==== Получение лицензионного ключа и файла активации ==== Перейдём на сайт [[https://my.flussonic.com|Личный кабинет Flussonic]] под той учётной записью, к которой привязана купленная лицензия FMS. В разделе управления лицензионными ключами на ПО найдём серийный номер лицензии (начинающийся с ''g4|...''), связанный с номером нашего USB-ключа Guardant. {{ :flussonic:pasted:20220118-143018.png }} Номер USB-ключа можно найти на коннекторе самого ключа: {{ :flussonic:pasted:20220118-143113.png }} Здесь же нам нужно скачать файл Offline-активации, который является простым текстовым файлом с данными вида: -----BEGIN ACTIVATION RESPONSE XXX----- ... -----END ACTIVATION RESPONSE XXX----- Обратите внимание на то, что на сайте может предлагаться загрузка файла активации для разных версий FMS. Загружать нужно именно тот файл, который относится к используемой у нас в данный момент версии FMS. При загрузке файл может иметь произвольное имя или имя в формате номера USB-ключа. Нам потребуется переименовать этот файл в формат вида **activation-<мажорная версия FMS>.txt** (например, ''activation-21.11.txt'' для версии 21.11 или ''activation-21.12.txt'' для версии 21.12.1) Теперь у нас есть всё для настройки сервера FMS и мы можем перейти на консоль сервера. \\ ==== Настройка Flussonic Media Server ==== Останавливаем службу FMS и удаляем старый файл лицензии, если такой был:
# systemctl stop flussonic
# rm /etc/flussonic/license.txt
Сохраняем контент файла Offline-активации в каталог ''/etc/flussonic'' с ранее описанным именем, например ''activation-21.11.txt''
# cat /etc/flussonic/activation-21.11.txt

-----BEGIN ACTIVATION RESPONSE XXX----- ... -----END ACTIVATION RESPONSE XXX-----
Создаём новый файл лицензионного ключа /etc/flussonic/license.txt и помещаем в него код лицензии
# cat  /etc/flussonic/license.txt

g4|GlF...
Cнова запускаем службу FMS:
# systemctl start flussonic
Переходим на веб-консоль управления локальными сервером FMS и проверяем его работоспособность. Отследить события запуска службы и процессы активации можно в логе ''flussonic.log'':
# tail -f /var/log/flussonic/flussonic.log

... launcher:141 server v21.11-0-release is starting ... ... l6_presence:1000 ((logger generic)) activation loaded ... ((logger generic)) Activation loaded from file ... ... launcher:281 Streamer version v21.11-0-release has initialized, loading config now. ... ... launcher:311 server v21.11-0-release started. previous state unknown
---- Проверено на следующих конфигурациях: ^ Версия Debian Linux ^ Версия базового пакета Flussonic Media Server ^ | Debian GNU/Linux 10.11 (Buster) | flussonic 21.11 (amd64) | | Debian GNU/Linux 10.11 (Buster) | flussonic 21.12.1 (amd64) | ---- {{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Алексей Максимов]] \\ Время публикации: 18.01.2022 13:51 {{tag>Flussonic "Flussonic Media Server" Streaming Linux "Debian 10" "Debian Buster" Guardant udev}} ~~DISCUSSION~~