В данной инструкции будет подробно рассмотрена установка защиты FlexLM на Ubuntu Server 16.04. Возможна установка и на десктопную версию (лично проверена версия 17.10).
В качестве серверов будут выступать как специально разработанные под Linux (Autodesk), так и существующие только под Windows (Nanosoft/CSoft).

Подробнее о лицензировании читайте ниже.

Установка Autodesk NLM


Ubuntu в списке поддерживаемых ОС нет, но это поправимо.

0) Установка ОС за вами.

1) Скачайте актуальный NLM от Autodesk.

На момент написания статьи это 11.13.1.2

wget http://download.autodesk.com/us/support/files/network_license_manager/11_13_1_2_v2/Linux/nlm11.13.1.2_ipv4_ipv6_linux64.tar.gz

2) Распакуйте архив.

tar -xvzf nlm11.13.1.2_ipv4_ipv6_linux64.tar.gz

На выходе получается rpm-пакет.

3) Установите необходимые пакеты для работы.

sudo apt-get install alient lsb -y

4) Конвертируйте пакет в deb.

sudo alien nlm11.13.1.2_ipv4_ipv6_linux64.rpm

На выходе получается adlmflexnetserver_12.0.36-1_amd64.deb.

5) Инсталлируйте получившийся пакет.

sudo dpkg -i adlmflexnetserver_12.0.36-1_amd64.deb

Инсталляция происходит в /opt/flexnetserver

6) Поместите вашу лицензию на продукты Autodesk на сервер. Как получить лицензию читайте ниже.

7) Создайте папку для логов и задайте нужные права.

sudo mkdir /var/log/flex
sudo chmod 777 /var/log/flex

8) Протестируйте работу лицензии.

cd /opt/flexnetserver
./lmgrd -c /opt/flexnetserver/adskflex.lic -l /var/log/flex/flex.log
./lmutil lmstat -a

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

9) Для запуска сервера лицензий в автоматическом режиме необходимо его прописать в rc.local. Запускать желательно от имени непривилегированного пользователя и через nohup. Эта утилита позволяет процессу работать даже при выходе пользователя.

sudo nano /etc/rc.local

и укажите строку перед exit 0
su user -c 'nohup /opt/flexnetserver/lmgrd -c /opt/flexnetserver/adskflex.lic -l /var/log/flex/flex.log'

10) Перезагрузите сервер и проверьте работу (пункт 8).

Все достаточно просто, когда есть нативный сервер. А что делать, если вендор игнорирует Linux?

Установка Nanosoft NLM


Или любого другого Windows-сервера NLM. Работает это конечно же через Wine.

0) Установка ОС за вами.

1) Установите wine. Рекомендую ставить по инструкции с официального сайта.

wget -nc https://dl.winehq.org/wine-builds/Release.key
sudo apt-key add Release.key
sudo apt-add-repository https://dl.winehq.org/wine-builds/ubuntu/
sudo apt-get update && sudo apt-get install --install-recommends winehq-stable -y

2) Сконфигурируйте wine. Делается это строго от имени пользователя.

winecfg

Посыпятся предупреждения, игнорируйте их.

3) Установите Nanosoft NLM на любую Windows машину и перенесите папку с исполнительными файлы на целевой сервер. Установку можно производить без файла лицензии. В соответствии со структурой переносить файлы нужно в /home/user/.wine/drive_c/Program Files (x86)/Nanosoft/Nanosoft License Server/. Вместо user указываете имя своего пользователя.
Строго говоря, данный путь использовать не обязательно. Достаточно, чтобы он был внутри drive_c или другого примонтированного диска (смотри инструкцию).
Также перенесите файл лицензии.

4) Протестируйте работу сервера.

wine "C:\Program Files (x86)\Nanosoft\Nanosoft License Server\lmgrd.exe" -z -c "путь_к_вашей_лицензии"

Если терминал замирает на команде (lmgrd) NANOSOFT using TCP-port *, то сервер находится в рабочем состоянии. Разорвать выполнение как обычно можно через Ctrl + C.
Возможны ошибки в случае, если у вас уже установлен какой-то софт. К примеру, в случае с MC необходимо исправить права на папку .local/share.

Также советую включить логирование. Сделать это можно, просто добавив соответствующий аргумент.

wine "C:\Program Files (x86)\Nanosoft\Nanosoft License Server\lmgrd.exe" -z -c "путь_к_вашей_лицензии" -l +"путь_к_лог-файлу"

В этом случае (lmgrd) pid * означает рабочее состояние.

О других аргументах можно узнать из руководства по администрированию [с.103].

5) Для корректной работы lmutil.exe пропишите вендора и путь к файлу лицензии.

wine "C:\Program Files (x86)\Nanosoft\Nanosoft License Server\lmutil.exe" lmpath -add nanocad "путь_к_вашей_лицензии"

6) Для запуска сервера лицензий в автоматическом режиме необходимо его прописать в rc.local.

sudo nano /etc/rc.local

и укажите строку перед exit 0
su user -c 'nohup wine «C:\Program Files (x86)\Nanosoft\Nanosoft License Server\lmgrd.exe» -z -c «путь_к_вашей_лицензии» -l +«путь_к_лог-файлу»'

7) Перезагрузите машину и проверьте работу сервера.

wine "C:\Program Files (x86)\Nanosoft\Nanosoft License Server\lmutil.exe" lmstat -a

Подробнее о лицензировании


Лицензирование FlexLM бывает 2 видов: с привязкой к MAC-адресу или к USB-ключу. Второй в эпоху массового внедрения гипервизоров, по моему мнению, менее гибкий с точки зрения инфраструктуры. Ведь гораздо проще поднять выделенную ВМ с нужным MAC'ом, чем мучаться с пробросом ключа. В случае с Ubuntu Server получить лицензию онлайн не получится. Вам придется поднимать другую ВМ с другой ОС с таким же MAC.
Кстати, на Ubuntu 17.10 получить лицензию через Интернет возможно :).

Смена типа лицензирования


Если же у вас уже закуплен софт с защитой по ключу, как у меня например, то не расстраивайтесь! Обычно вендор допускает обмен типа лицензирования.
В большинстве случаем достаточно обращения в ТП.

К примеру, Nanosoft требует скан письма за подписью/печатью с просьбой о повторной выдаче с использованием МАС, кроме того следует указать S/N и логин. После получения новой лицензии, старую необходимо уничтожить.

Ну и конечно же лицензии FlexLM можно мониторить Заббиксом!

Комментарии (0)