How to Install OAS License Hub in Linux

This guide aims to walk you through the installation of the OAS LicenseHub on a Linux machine.
OAS LicenseHub provides centralized license management and distribution for large-scale OAS server deployments. It is especially valuable for Enterprise customers who frequently spin up, move, or redeploy OAS instances across their infrastructure. Rather than managing licenses on each individual machine, the LicenseHub serves as a single control point that monitors all connected nodes and securely distributes license details over TLS—whether on a local network or across the internet.
For containerized environments, the LicenseHub offers a Docker-independent alternative to the License Host. Each OAS server container can reach out to the LicenseHub for activation and feature provisioning, eliminating the need for Docker-specific licensing infrastructure while maintaining full support for dynamic container orchestration.
The only requirement is that each OAS instance can reach the LicenseHub over the network to request a license and periodically report its status back to the Hub to remain activated.
1 - Download the LicenseHub Installer
The OAS LicenseHub installer is not publicly available for download.
Enterprise customers will receive an email with download instructions along with their LicenseHub License Key files necessary for operation.
Once you have downloaded the installer:
Copy the
OASLicenseHub-x.x.x.zipdeployment archive to your Linux server. Thex.x.xportion of the filename will reflect the specific version of the LicenseHub.Follow the installation steps below to install the LicenseHub as a systemd service to that it starts when the server reboots.
While the service is started, it will not be fully functional until the proper license files have been added to the installation.
2 - Installation Steps
Prerequisites
- Linux x64 (Ubuntu 20.04+, RHEL 8+, Debian 10+, or similar)
- Root or sudo access
1. Create the installation directory and service user
# Create a dedicated user for the service (no login shell)
sudo useradd -r -s /sbin/nologin oaslicensehub
# Create the installation directory
sudo mkdir -p /opt/oaslicensehub
sudo mkdir -p /opt/oaslicensehub/Keys
sudo mkdir -p /opt/oaslicensehub/Logs
2. Copy the application files
Copy the contents of this publish folder to /opt/oaslicensehub/:
sudo cp OASLicenseHub /opt/oaslicensehub/
sudo cp OASLicenseHubCLI /opt/oaslicensehub/
sudo cp hubconfig.json /opt/oaslicensehub/
3. Set permissions
# Make executables runnable
sudo chmod +x /opt/oaslicensehub/OASLicenseHub
sudo chmod +x /opt/oaslicensehub/OASLicenseHubCLI
# Set ownership to the service user
sudo chown -R oaslicensehub:oaslicensehub /opt/oaslicensehub
4. Install the systemd service
# Copy the service file (from the installation subdirectory)
sudo cp installation/oaslicensehub.service /etc/systemd/system/
# Reload systemd to recognize the new service
sudo systemctl daemon-reload
# Enable the service to start on boot
sudo systemctl enable oaslicensehub
5. Add your license files
If you have received your LicenseHub license files (distributed in a ZIP file), you can then enable communications with OAS instances. Within the ZIP you will find the following directories:
- Keys: contains files required by the LicenseHub -- all files within this directory need to be deployed to the Keys directory within the LicenseHub installation directory
- licenseKey
This is the actual license that contains details on purchased features, drivers, and tag counts - licenseReg
This file is used for authentication with each OAS instance, ensuring only authorized instance may communicate with this LicenseHub
- licenseKey
- ConfigFiles: contains files required by each OAS instance -- all files within this directory need to be deplyed with each OAS server instance, and placed within the ConfigFiles directory. On Windows This directory is found in
C:\ProgramData\OpenAutomationSoftware, and on Linux the ConfigFiles directory is within the same path as the OASEngine file.- licenseHub.config
This contains the address and port of the LicenseHub directing the OAS server to request a license from the Hub instead of searching for a local license - licenseReg
This file is used for authentication with the LicenseHub, ensuring only authorized instance may communicate with it
- licenseHub.config
Copy your licenseKey and licenseReg files to the Keys directory:
sudo cp /path/to/your/licenseKey /opt/oaslicensehub/Keys/
sudo cp /path/to/your/licenseReg /opt/oaslicensehub/Keys/
sudo chown oaslicensehub:oaslicensehub /opt/oaslicensehub/Keys/*
Tips
The licenseHub.config and licenseReg files need to be present before the OAS instance is started. However, you can add the licenseKey and licenseReg to the running Hub instance and they will be updated in real time. This also allows you to apply a modified licenseKey to your LicenseHub in the event that you need to update the feautures enabled, tag counts, server counts, and even expiration date of the license.
6. Start the service
sudo systemctl start oaslicensehub
Managing the Service
# Check status
sudo systemctl status oaslicensehub
# View logs
sudo journalctl -u oaslicensehub -f
# Stop the service (for maintenance)
sudo systemctl stop oaslicensehub
# Restart the service
sudo systemctl restart oaslicensehub
Configuration
Edit /opt/oaslicensehub/hubconfig.json to configure:
TcpPort- Port to listen on (default: 5050)BindAddress- IP address to bind to (default: "0.0.0.0" for all interfaces)Logging.Enabled- Enable file logging (default: false)Logging.Level- Log level: Debug, Information, Warning, Error (default: Information)
After changing configuration, restart the service:
sudo systemctl restart oaslicensehub
See this article for more details on Configuring and Monitoring the LicenseHub
Firewall
If you have a firewall enabled, open the TCP port:
# UFW (Ubuntu)
sudo ufw allow 5050/tcp
# firewalld (RHEL/CentOS)
sudo firewall-cmd --permanent --add-port=5050/tcp
sudo firewall-cmd --reload
Updating License Files
The LicenseHub supports hot-reload of license files. Simply copy new licenseKey and/or licenseReg files to the Keys directory - no restart required:
sudo cp /path/to/new/licenseKey /opt/oaslicensehub/Keys/
sudo chown oaslicensehub:oaslicensehub /opt/oaslicensehub/Keys/licenseKey
Uninstallation
# Stop and disable the service
sudo systemctl stop oaslicensehub
sudo systemctl disable oaslicensehub
# Remove the service file
sudo rm /etc/systemd/system/oaslicensehub.service
sudo systemctl daemon-reload
# Remove the application (optional - preserves config/keys if you skip this)
sudo rm -rf /opt/oaslicensehub
# Remove the service user (optional)
sudo userdel oaslicensehub
