Linux

Overview

This section describes how to install and configure MetaDefender (MD) Cluster Identity Service on supported Linux distributions. After installation, MD Cluster Control Center can connect to MD Cluster Identity and monitor its system health.


Prerequisites

Before installing the MD Cluster Identity Service, ensure the following requirements are met.

Requirement

Description

Operating System

Ubuntu 22.04+, Ubuntu 24.04+, Debian 12+, Rocky 9+, or RHEL 9+.

Privileges

Root or sudo privileges

Installation package

Debian/Ubuntu: md-cluster-identity-service_<version>-1_amd64.deb Rocky/RHEL: md-cluster-identity-service-<version>-1.x86_64.rpm

Network access

Required port is open (default port: 8891).

A minimum network bandwidth of 1 Gbps is required.

Hardware

4vCPU and 4GB RAM

Disk space

A minimum of 50 GB of available disk space is required.


Create the ignition file

Create an ignition file in YAML format. This file contains the credentials required for the service to connect to the system.

The file must include the following keys:

Key

Description

database.host

IP address or domain name of the server hosting PostgreSQL.

database.port

IP address or domain name of the server hosting PostgreSQL.

database.user

PostgreSQL server user. SUPERUSER privileges are required to set up the database and extensions during the initial configuration.

database.password

PostgreSQL user password.

secure.connection_key

A 4–64 character alphanumeric string (a–z, A–Z, 0–9) used by MD Cluster Control Center to connect to the server.

secure.private_key

The content of private key in X509 format.

secure.certificate

The content of certificate in X509 format.

Example ignition file:

database:
host: "posgresql_host"
port: 5432
user: "postgres"
password: "admin"
secure:
connection_key: "1234abcd" # [0-9a-zA-Z]{4,64}
private_key: |
-----BEGIN PRIVATE KEY-----
MIIJQwIBADANBgkqhkiG9w0BAQEFAASCCS0wggkpAgEAAoICAQCjYtuWaICCY0tJ
PubxpIgIL+WWmz/fmK8IQr11Wtee6/IUyUlo5I602mq1qcLhT/kmpoR8Di3DAmHK
nSWdPWtn1BtXLErLlUiHgZDrZWInmEBjKM1DZf+CvNGZ+EzPgBv5nTekLWcfI5ZZ
toGuIP1Dl/IkNDw8zFz4cpiMe/BFGemyxdHhLrKHSm8Eo+nT734tItnHKT/m6DSU
0xlZ13d6ehLRm7/+Nx47M3XMTRH5qKP/7TTE2s0U6+M0tsGI2zpRi+m6jzhNyMBT
J1u58qAe3ZW5/+YAiuZYAB6n5bhUp4oFuB5wYbcBywVR8ujInpF8buWQUjy5N8pS
Np7szdYsnLJpvAd0sibrNPjC0FQCNrpNjgJmIK3+mKk4kXX7ZTwefoAzTK4l2pHN
uC53QVc/EF++GBLAxmvCDq9ZpMIYi7OmzkkAKKC9Ue6Ef217LFQCFIBKIzv9cgi9
fwPMLhrKleoVRNsecBsCP569WgJXhUnwf2lon4fEZr3+vRuc9shfqnV0nPN1IMSn
zXCast7I2fiuRXdIz96KjlGQpP4XfNVA+RGL7aMnWOFIaVrKWLzAtgzoGMTvP/Au

Save the ignition file to the following path on the target machine:

/etc/opswat/md_cluster_identity_service.yml
Info

The ignition file contains sensitive credentials. This file can be safely deleted any time after the installation is complete.


Install the service

  1. Copy the installer file (.deb or .rpm) to the target machine.

  2. Open Terminal.

  3. Run the following command to start the installation:

# Debian or Ubuntu
sudo apt install -y uuid tar
sudo dpkg -i <md_cluster_identity_service_package> || sudo apt install -f

# Rocky or RHEL
sudo dnf install -y yum-utils
sudo dnf config-manager --set-enabled devel
sudo dnf update -y
sudo dnf install -y redhat-lsb-core libuuid tar
sudo yum install <md_cluster_identity_service_package> -y

Verify the service status

  1. Open Terminal and run the following command:

sudo systemctl status md-cluster-identity-service
  1. Check the active (running) field in the output.

  2. If the service is not running, start it manually:

sudo systemctl restart md-cluster-identity-service
  1. To ensure the service starts automatically at system boot:

sudo systemctl enable md-cluster-identity-service

Service management

Action

Command

Check service status

sudo systemctl status md-cluster-identity-service

Start service

sudo systemctl start md-cluster-identity-service

Stop service

sudo systemctl stop md-cluster-identity-service

Restart service

sudo systemctl restart md-cluster-identity-service

Enable service at boot

sudo systemctl enable md-cluster-identity-service


Customize the service configuration

During installation, MD Cluster Identity Service generates a configuration file at:

/etc/md-cluster-identity-service/md_cluster_identity_service.yml

To customize the service behavior:

  1. Open the configuration file in a text editor such as nano.

sudo nano /etc/md-cluster-identity-service/md_cluster_identity_service.yml
  1. Modify the required settings according to your environment.

  2. Save the changes.

  3. Restart the service to apply the new settings.

sudo systemctl restart md-cluster-identity-service

Directory structure

  • /etc/opswat/md_cluster_identity_service.yml: Service Ignition file.

  • /etc/md-cluster-identity-service/md_cluster_identity_service.yml: Service configuration file.

  • /var/log/md-cluster-identity-service/: Default log directory.

  • /var/lib/md-cluster-identity-service/: Contains persistent data required for the service to maintain state across reboots.


Log files

To check the service logs, open the file: /var/log/md-cluster-identity-service/identity-service.log

To check the system log, run the following in Terminal:

# Fetch by systemd-journald
sudo journalctl -r

# Ubuntu syslog
sudo cat /var/log/syslog

# Rocky or RHEL syslog
sudo cat /var/log/message

Uninstall the service

# Debian or Ubuntu
sudo apt purge <md_cluster_identity_service_package>

# Rocky or RHEL
sudo yum remove <md_cluster_identity_service_package>

Troubleshooting

A. Service is not running

  1. Check the service status

sudo systemctl status md-cluster-identity-service
  1. Start the service if it is not running:

sudo systemctl start md-cluster-identity-service

B. Installation fails

Possible causes

  • Insufficient privileges.

  • Missing dependencies.

Solution

  • Ensure the installation command is executed with sudo.

  • Ensure dependencies are installed.

C. MD Cluster Control Center cannot connect to MD Cluster Identity Service.

Possible causes

  • Network connectivity issues.

  • Firewall restrictions.

  • PostgreSQL database connectivity issues

Solution

  • Ensure MD Cluster Control Center has network connectivity to MD Cluster Identity Service.

  • Verify that firewall rules allow inbound and outbound connections.

  • Verify PostgreSQL database connectivity and credentials in the ignition file.


Ignition file key reference

  • database.host (Required)

    • Value type: string.

    • Description: IP address or domain name of the server hosting PostgreSQL.

  • database.port (Required)

    • Value type: integer.

    • Description: PostgreSQL server port (default: 5432).

  • database.user (Required)

    • Value type: string.

    • Description: PostgreSQL server user. SUPERUSER privileges are required to set up the database and extensions during the initial configuration.

  • database.password (Required)

    • Value type: string.

    • Description: PostgreSQL user password.

  • secure.connection_key (Required)

    • Value type: string.

    • Description: Use a 4–64 character string that contains only numbers (0–9) and letters (a–z, A–Z). This string is used by clients to connect to the server. Set this value as the identity.connection_key in the MD Cluster Control Center configuration file.

  • secure.private_key (Required)

    • Value type: string.

    • Description: The content of private key in X509 format.

  • secure.certificate (Required)

    • Value type: string.

    • Description: The content of certificate in X509 format.