RLM: Difference between revisions

From Omnia
Jump to navigation Jump to search
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 8: Line 8:
See [[FlexLM]]
See [[FlexLM]]


== install-lic.sh ==
== OpenSSL 1.1.0 required ==


Ubuntu 24 fails with:
<pre>
<pre>
#!/bin/bash
$ ./getiolid
./getiolid: /lib/x86_64-linux-gnu/libcrypto.so.1.1: version `OPENSSL_1_1_0' not found (required by ./getiolid)
</pre>


if [[ $EUID -eq 0 ]] ; then
Cause: Ubuntu 24.04 (Noble Numbat) does not include libcrypto.so.1.1 in its official repositories because it has migrated to OpenSSL 3.0. You must manually install the legacy libssl1.1 package to obtain this file. <ref>https://askubuntu.com/questions/1521032/libssl-so-1-1-missing-on-ubuntu-24-04#:~:text=2,this%20package%20and%20updating%20it.</ref>
        echo
        echo "$0 MUST NOT be run by root."
        echo "Please re-run as a non-root user."
        exit
fi


ARG=$1
One solution: (no longer exists)
FILES=("$@")
curl -O http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.22_amd64.deb
dpkg -i libssl1.1_1.1.1f-1ubuntu2.22_amd64.deb


if [[ "$ARG" != *.lic ]] ; then
# also works: libssl1.1_1.1.1w-0+deb11u1_amd64.deb.md5sum
        echo
        echo "Usage: $0 [list of license files]"
        echo "  e.g."
        echo "      $0 iol-float.lic"
        exit
fi


INSTALL_DIR="/home/license/iol-license"


echo
Docker Ubuntu 24 needed:
for lic in "${FILES[@]}" ; do
apt install sudo curl libterm-readline-gnu-perl libterm-ui-perl dmidecode iproute2
        echo "Copying $lic"
        echo -ne "\t"
        echo "to ${INSTALL_DIR}/rlm/"
        cp "$lic" ${INSTALL_DIR}/rlm/
done


echo
== Systemd Service ==
echo "Starting web client on port 8080"


echo
<pre>
echo "Will now Run or Reload License Manager"
# cat /etc/systemd/system/rlm.service
echo
[Unit]
exec $INSTALL_DIR/rlm/rlm-run.sh -restart
Description=RLM License Server
After=network-online.target
Wants=network-online.target
 
[Service]
Type=simple
User=license
Group=license
WorkingDirectory=/opt/rlm
 
ExecStart=/bin/bash -x /opt/rlm/rlm-wrapper.sh
ExecStop=/bin/kill -TERM $MAINPID
 
Restart=on-failure
RestartSec=5
 
# Hardening (safe defaults for RHEL 8)
#NoNewPrivileges=true
#PrivateTmp=true
#ProtectSystem=full
#ProtectHome=true
#LimitNOFILE=262144
 
[Install]
WantedBy=multi-user.target
</pre>
 
 
<pre>
# cat /opt/rlm/rlm-wrapper.sh
#!/usr/bin/env bash
#set -euo pipefail
set -e
 
RLM_HOME="/opt/rlm"
RLM_BIN="${RLM_HOME}/rlm"
LICENSE_FILE="${RLM_HOME}/license.lic"
LOG_DIR="/var/log/rlm"
LOG_FILE="${LOG_DIR}/rlm.log"
 
mkdir -p "${LOG_DIR}"
 
# -nows disables Web UI
#    use -ws 5054 if you want Web UI
# -dlog with + adds timestamped debug
#exec "${RLM_BIN}" \
#    -c "${LICENSE_FILE}" \
#    -ws 5054 \
#    -dlog +"${LOG_FILE}"
 
exec "${RLM_BIN}" \
    -c "${LICENSE_FILE}" \
    -ws 5054 \
    -dlog +"${LOG_FILE}"
</pre>
</pre>


== keywords ==
== keywords ==

Latest revision as of 18:03, 28 April 2026

Reprise License Manager (RLM) is considered a, or a spiritual successor to, FLEXlm (now FlexNet Publisher). It was founded in 2006 by the original developers of GLOBEtrotter, the company that created FLEXlm

{FlexLM} (now officially FlexNet Publisher) is the industry-standard software license management system developed by Flexera. It controls, monitors, and optimizes application usage across networks, typically utilizing a floating (concurrent) license model where a central server manages a pool of licenses for multiple users. It supports node-locked licenses, manages license files (often found at C:\flexlm\license on Windows), and allows for vendor-specific configurations.

See FlexLM

OpenSSL 1.1.0 required

Ubuntu 24 fails with:

$ ./getiolid
./getiolid: /lib/x86_64-linux-gnu/libcrypto.so.1.1: version `OPENSSL_1_1_0' not found (required by ./getiolid)

Cause: Ubuntu 24.04 (Noble Numbat) does not include libcrypto.so.1.1 in its official repositories because it has migrated to OpenSSL 3.0. You must manually install the legacy libssl1.1 package to obtain this file. [1]

One solution: (no longer exists)

curl -O http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.22_amd64.deb
dpkg -i libssl1.1_1.1.1f-1ubuntu2.22_amd64.deb
# also works: libssl1.1_1.1.1w-0+deb11u1_amd64.deb.md5sum


Docker Ubuntu 24 needed:

apt install sudo curl libterm-readline-gnu-perl libterm-ui-perl dmidecode iproute2

Systemd Service

# cat /etc/systemd/system/rlm.service
[Unit]
Description=RLM License Server
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=license
Group=license
WorkingDirectory=/opt/rlm

ExecStart=/bin/bash -x /opt/rlm/rlm-wrapper.sh
ExecStop=/bin/kill -TERM $MAINPID

Restart=on-failure
RestartSec=5

# Hardening (safe defaults for RHEL 8)
#NoNewPrivileges=true
#PrivateTmp=true
#ProtectSystem=full
#ProtectHome=true
#LimitNOFILE=262144

[Install]
WantedBy=multi-user.target


# cat /opt/rlm/rlm-wrapper.sh
#!/usr/bin/env bash
#set -euo pipefail
set -e

RLM_HOME="/opt/rlm"
RLM_BIN="${RLM_HOME}/rlm"
LICENSE_FILE="${RLM_HOME}/license.lic"
LOG_DIR="/var/log/rlm"
LOG_FILE="${LOG_DIR}/rlm.log"

mkdir -p "${LOG_DIR}"

# -nows disables Web UI
#     use -ws 5054 if you want Web UI
# -dlog with + adds timestamped debug
#exec "${RLM_BIN}" \
#    -c "${LICENSE_FILE}" \
#    -ws 5054 \
#    -dlog +"${LOG_FILE}"

exec "${RLM_BIN}" \
    -c "${LICENSE_FILE}" \
    -ws 5054 \
    -dlog +"${LOG_FILE}"

keywords