IBH OPC UA:Installation on Linux

From IBHsoftec Wiki English
Revision as of 13:26, 20 August 2026 by Axel (talk | contribs) (Explain apt update versus apt upgrade during installation)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

The IBH OPC UA Server/Client is available as a 64-bit Linux version for amd64 and arm64. It is supplied as a Debian package (.deb), installs the application and configures the system service automatically.

Workflow at a glance

  1. Select the package that matches the Linux distribution and CPU architecture.
  2. Install the Debian package with apt.
  3. Verify ibhlinkua.service.
  4. Open the Web Configurator.
  5. Change the administrator password and activate the license.
  6. Configure and test the OPC UA endpoint and controller connections.

Requirements

  • Supported 64-bit operating system: Ubuntu 22.04 LTS, Ubuntu 24.04 LTS, Debian 12 “Bookworm” or Debian 13 “Trixie”, including the systems listed in the package matrix
  • CPU architecture amd64 or arm64
  • systemd
  • User account with sudo privileges
  • Static IP address or resolvable hostname recommended
  • DNS resolution and HTTPS access to the license server for online activation
  • Network access to the configured controllers
  • Python 3 must be installed when NodeSets are to be used.

Python for NodeSets

The NodeSet function uses the Python runtime of the Linux system. If custom NodeSets, Python scripts, methods or combined data models are required, install the Python 3 package and standard library supplied by the distribution.

sudo apt update
sudo apt install python3
python3 --version
python3 -c 'import encodings; print("Python OK")'

sudo apt update only refreshes the package lists. sudo apt upgrade is not required to install Python; it would additionally upgrade all system packages for which updates are available.

Do not install or link a Python library from a different Ubuntu or Debian release. Without a working Python installation, NodeSet configuration is unavailable or cannot be used completely.

Check the architecture and distribution

. /etc/os-release
echo "$ID $VERSION_ID"
dpkg --print-architecture
uname -m

x86_64 corresponds to amd64; aarch64 corresponds to arm64.

Package matrix

Architecture, distribution and distribution version must all match. Packages for different releases are not interchangeable because system Python, ICU and other runtime ABIs differ.

Linux variant Architecture Package variant to use Example file name Status
Ubuntu 22.04 LTS on an Intel/AMD PC amd64 Ubuntu 22.04 package for AMD64 ibhlinkua_VERSION.BUILD_ubuntu22_amd64.deb Supported
Ubuntu 22.04 LTS on ARM64 arm64 Ubuntu 22.04 package for ARM64 ibhlinkua_VERSION.BUILD_ubuntu22_arm64.deb Supported
Ubuntu 24.04 LTS on an Intel/AMD PC amd64 Ubuntu 24.04 package for AMD64 ibhlinkua_VERSION.BUILD_ubuntu24_amd64.deb Supported
Ubuntu 24.04 LTS on ARM64 arm64 Ubuntu 24.04 package for ARM64 ibhlinkua_VERSION.BUILD_ubuntu24_arm64.deb Supported
Debian 12 “Bookworm” on an Intel/AMD PC amd64 Debian 12 package for AMD64 ibhlinkua_VERSION.BUILD_debian12_amd64.deb Supported
Debian 12 “Bookworm” on ARM64 arm64 Debian 12 package for ARM64 ibhlinkua_VERSION.BUILD_debian12_arm64.deb Supported
Debian 13 “Trixie” on an Intel/AMD PC amd64 Debian 13 package for AMD64 ibhlinkua_VERSION.BUILD_debian13_amd64.deb Supported
Debian 13 “Trixie” on ARM64 arm64 Debian 13 package for ARM64 ibhlinkua_VERSION.BUILD_debian13_arm64.deb Supported
Raspberry Pi OS 64-bit “Bookworm” arm64 Debian 12 package for ARM64 ibhlinkua_VERSION.BUILD_debian12_arm64.deb Supported
Raspberry Pi OS 64-bit based on Debian 13 “Trixie” arm64 Debian 13 package for ARM64 ibhlinkua_VERSION.BUILD_debian13_arm64.deb Supported
Revolution Pi with a 64-bit Bookworm system arm64 Debian 12 package for ARM64 ibhlinkua_VERSION.BUILD_debian12_arm64.deb Use only when dpkg --print-architecture reports arm64
Revolution Pi with a 64-bit Trixie system arm64 Debian 13 package for ARM64 ibhlinkua_VERSION.BUILD_debian13_arm64.deb Use only when dpkg --print-architecture reports arm64
32-bit Raspberry Pi OS or Debian armhf or i386 No package – Not supported
Ubuntu 20.04, Debian 11 or another release not listed above depends on the system Only a package explicitly approved by IBHsoftec for that release depends on the release Do not use a package for a different distribution

Older packages may not contain a distribution suffix in the file name. Use such packages only for the target system specified with their delivery.

Current download packages

Current released version: 6.0.16, build 4497.

Select the package that matches the distribution, release and architecture. All packages are also listed in the official download area.

Installation

Copy the selected package to the Linux computer and open a terminal in its directory. Example:

sudo apt update
sudo apt install ./ibhlinkua_VERSION.BUILD_DISTRIBUTION_ARCHITECTURE.deb

sudo apt update only refreshes the package lists. sudo apt upgrade is not required to install IBH OPC UA; it would additionally upgrade all system packages for which updates are available.

Replace the file name with the actual delivered package. The package:

  • installs the application under /opt/IBHLinkUA,
  • stores the configuration under /etc/ibhlinkua,
  • installs the Wt configuration under /etc/wt,
  • configures and enables ibhlinkua.service, and
  • starts the service after installation.

Service control

sudo systemctl status ibhlinkua.service --no-pager
sudo systemctl start ibhlinkua.service
sudo systemctl stop ibhlinkua.service
sudo systemctl restart ibhlinkua.service
sudo systemctl is-enabled ibhlinkua.service

View recent service messages:

sudo journalctl -u ibhlinkua.service -n 100 --no-pager

Open the Web Configurator

Determine the server address if necessary:

hostname -I

Open:

http://IP-ADDRESS-OR-HOSTNAME/

A default Linux installation uses TCP port 80 for HTTP. If HTTPS has been configured, port 443 is normally used.

For an unchanged initial installation, use:

User name Password
admin admin

Change the default password immediately after the first login.

Network and firewall

Function Protocol Default port
Web Configurator TCP 80
HTTPS Web Configurator, if enabled TCP 443
OPC UA Server TCP 48010

Allow only the required ports and restrict access to the plant or administration network whenever possible. MQTT, the integrated OPC UA Client, online activation and other outgoing functions may require additional destination addresses and ports.

License activation

The license is bound to the Linux target system and must not simply be copied to another computer or virtual machine.

Online activation

  1. Open System / Licensing in the Web Configurator.
  2. Enter the license serial number.
  3. Enter the associated eight-digit secret.
  4. Start online activation.
  5. Verify that the license status is valid.

Offline activation

  1. Generate and download ibhlinkua-license-request.json in the Web Configurator.
  2. Process the request using the designated licensing workflow on a computer with Internet access.
  3. Upload the signed JSON license file to the target system.
  4. Verify the license status.

The installed license is normally stored as /etc/ibhlinkua/license.json. Do not edit this file manually. See Licensing.

OPC UA connection test

The default endpoint is:

opc.tcp://IP-ADDRESS-OR-HOSTNAME:48010
  1. Add the endpoint to an OPC UA client.
  2. Verify the server certificate by fingerprint and issuer.
  3. Trust the certificate only after identifying the server.
  4. Select the matching security policy, message mode and user authentication.
  5. Browse the address space and read a test variable.
  6. Write only to variables explicitly intended for testing.

Important paths

Purpose Path
Application and web resources /opt/IBHLinkUA
Main configuration /etc/ibhlinkua
OPC UA server configuration /etc/ibhlinkua/ServerConfig.xml
License /etc/ibhlinkua/license.json
Wt configuration /etc/wt/wt_config.xml
System service ibhlinkua.service

Use the Web Configurator or IBH OPC UA Editor for normal configuration.

Update

Create a configuration backup before updating. The new package must match the installed distribution and CPU architecture. For example, use only the debian13_arm64 variant on Debian 13/ARM64.

Update in the Web Configurator

Under System / Software update, select the new .deb package and choose Upload Firmware. Only newer packages signed by IBHsoftec and matching the system distribution and architecture are accepted. Installation, health checking and rollback, if required, run in the background. Reload the page if the service restart interrupts the browser connection.

Updating through the Web Configurator requires a native installation managed by systemd. A Docker container normally has no systemctl; update its image or install the package while building the container instead.

Manual update with apt

Alternatively, install the matching package over the existing installation:

sudo apt install ./ibhlinkua_NEW_VERSION.BUILD_DISTRIBUTION_ARCHITECTURE.deb
sudo systemctl status ibhlinkua.service --no-pager
dpkg-query -W -f='${Version} ${Architecture}\n' ibhlinkua

Then verify the firmware version, including its build number, under System. Also verify the license, certificates, endpoints, controller connections, projects and all enabled extensions. Perform a downgrade only after consulting IBHsoftec Support.

Uninstallation

sudo apt remove ibhlinkua

Back up configuration, certificates and license information before removing any remaining files under /etc/ibhlinkua.

Troubleshooting

Service does not start
Check systemctl status, journalctl, package architecture, dependencies and permissions.
Service reports status=203/EXEC or references a missing executable
Use systemctl cat ibhlinkua.service to check which unit is active. An old local unit at /etc/systemd/system/ibhlinkua.service overrides the unit installed by the package. Back up and remove that old file only if it is no longer required, then run sudo systemctl daemon-reload, sudo systemctl reset-failed ibhlinkua.service and sudo systemctl enable --now ibhlinkua.service.
Web Configurator cannot be reached
Check the service, IP address, web port and firewall. Ensure no other service occupies port 80 or 443.
OPC UA client cannot connect
Check port 48010, endpoint, security policy, system time, certificates and user authentication.
NodeSet menu or function is unavailable
Install the distribution's python3 package, restart ibhlinkua.service and check python3 --version.
Online activation fails
Check Internet access, DNS, proxy, firewall, system time, serial number and the eight-digit secret.

See also