Installation

You can install Hardware Sentry on the operating system of your choice as they are equally supported.

Note: Starting from v2.0.00, you can retrieve hardware information exposed by WMI from Linux and MacOs systems through the Windows Remote Management (WinRM) protocol.

Install

On Debian Linux

Download

From Sentry Software's Web site, download:

  • hws-debian-3.0.00-amd64.deb

Install

Once you have downloaded the Debian package, run the following dpkg command:

/ $ cd /usr/local
/usr/local $ sudo dpkg -i hws-debian-3.0.00-amd64.deb

When complete, the Hardware Sentry's files are deployed in /opt/hws and the Hardware Sentry Agent is started as a service.

Configure

You need to set up 2 configuration files in the installation directory (/opt/hws):

There are two configuration examples in the installation directory (/opt/hws):

  • ./otel/otel-config-example.yaml, a configuration example of the OpenTelemetry Collector.
  • ./config/hws-config-example.yaml, a configuration example of the Hardware Sentry Agent.

Before starting Hardware Sentry, make sure to configure ./otel/otel-config.yaml, since a restart of the Collector is required to take into account its changes.

Start

To start the Hardware Sentry service, run the command below:

systemctl start hws-agent

This will start Hardware Sentry with:

  • The default Hardware Sentry Agent configuration file: ./config/hws-config.yaml.
  • The default OpenTelemetry Collector configuration file: ./otel/otel-config.yaml.

You can start Hardware Sentry in an interactive terminal with an alternate Hardware Sentry Agent's configuration file with the command below:

/ $ cd /opt/hws/bin
/opt/hws/bin $ ./agent --config=<PATH>

Example:

/ $ cd /opt/hws/bin
/opt/hws/bin $ ./agent --config=config/my-hws-config.yaml

Stop

To stop the Hardware Sentry service, run the command below:

systemctl stop hws-agent

Uninstall

To uninstall Hardware Sentry, run the command below:

sudo dpkg -r hws

On Docker

Download

From Sentry Software's Web site, download:

  • hws-debian-3.0.00-docker.tar.gz

Install

First, unzip and untar the content of hws-debian-3.0.00-docker.tar.gz into a docker directory, like /docker. There is no need to create a specific subdirectory for hws as the archive already contains an hws directory.

/ $ cd /docker
/docker $ sudo tar xf /tmp/hws-debian-3.0.00-docker.tar.gz

Then, build the docker image using the following command:

/ $ cd /docker/hws
/docker/hws $ sudo docker build -t hws:latest .

Configure

You need to set up 2 configuration files in the docker image directory (hws):

There are two configuration examples in the docker image directory (hws):

  • ./otel/otel-config-example.yaml, a configuration example of the OpenTelemetry Collector.
  • ./config/hws-config-example.yaml, a configuration example of the Hardware Sentry Agent.

Before starting Hardware Sentry, make sure to configure ./lib/otel/otel-config.yaml, since a restart of the Collector is required to take into account its changes.

Start

You can start Hardware Sentry with the command below:

/ $ cd /docker/hws
/docker/hws $ sudo docker run --name=hws -p 8888:8888 -p 4317:4317 -p 13133:13133 hws:latest

This will start Hardware Sentry with:

  • The default Hardware Sentry Agent configuration file: ./lib/config/hws-config.yaml.
  • The default OpenTelemetry Collector configuration file: ./lib/otel/otel-config.yaml.

You can start Hardware Sentry with an alternate configuration file path with the command below:

/ $ cd /docker/hws
/docker/hws $ sudo docker run --name=hws -p 8888:8888 -p 4317:4317 -p 13133:13133 -v /docker/hws/lib/config:/opt/hws/lib/config hws:latest

See Ports and Firewalls for port details.

Docker Compose Example

You can start Hardware Sentry with docker-compose:

/docker/hws $ sudo docker-compose up -d --build

Example docker-compose.yaml

version: "2.1"
services:
  hws:
    build: .                                        # for image we will use ``image: sentrysoftware/hws:latest``
    container_name: hws
    ports:
      - 8888:8888                                   # OpenTelemetry Collector Exporter
      - 4317:4317                                   # OpenTelemetry Collector gRPC Receiver
      - 13133:13133                                 # OpenTelemetry Collector HealthCheck
    volumes:
      - ./lib/logs:/opt/hws/lib/logs                # Mount the volume ./lib/logs into /opt/hws/lib/logs in the container
      - ./lib/config:/opt/hws/lib/config            # Mount the volume ./lib/config into /opt/hws/lib/config in the container
      - ./lib/otel:/opt/hws/lib/otel                # Mount the volume ./lib/otel into /opt/hws/lib/otel in the container
    restart: unless-stopped

On Red Hat Enterprise Linux

Download

From Sentry Software's Web site, download:

  • hws-rhel-3.0.00-1.x86_64.rpm

Install

Once you have downloaded the RPM package, run the following rpm command to install Hardware Sentry:

/ $ cd /usr/local
/usr/local $ sudo rpm -i hws-rhel-3.0.00-1.x86_64.rpm

When complete, the Hardware Sentry's files are deployed in /opt/hws and the Hardware Sentry Agent is started as a service.

Configure

You need to set up 2 configuration files in the installation directory (/opt/hws):

There are two configuration examples in the installation directory (/opt/hws):

  • ./otel/otel-config-example.yaml, a configuration example of the OpenTelemetry Collector.
  • ./config/hws-config-example.yaml, a configuration example of the Hardware Sentry Agent.

Before starting Hardware Sentry, make sure to configure ./otel/otel-config.yaml, since a restart of the Collector is required to take into account its changes.

Start

To start the Hardware Sentry service, run the command below:

systemctl start hws-agent

This will start Hardware Sentry with:

  • The default Hardware Sentry Agent configuration file: ./config/hws-config.yaml.
  • The default OpenTelemetry Collector configuration file: ./otel/otel-config.yaml.

You can start Hardware Sentry in an interactive terminal with an alternate Hardware Sentry Agent's configuration file with the command below:

/ $ cd /opt/hws/bin
/opt/hws/bin $ ./agent --config=<PATH>

Example:

/ $ cd /opt/hws/bin
/opt/hws/bin $ ./agent --config=config/my-hws-config.yaml

Stop

To stop the Hardware Sentry service, run the command below:

systemctl stop hws-agent

Uninstall

To uninstall Hardware Sentry, run the command below:

sudo rpm -e hws-3.0.00-1.x86_64

On Windows

Download

From Sentry Software's Web site, download:

  • hws-windows-3.0.00.msi

Install

Double-click the .msi file you previously downloaded. The Installation Wizard will automatically start and guide you through the installation process.

When complete, the Hardware Sentry's files are deployed to the destination folder (by default under C:\Program Files\hws) and the Hardware Sentry Agent is started as a service and appears in services.msc.

Hardware Sentry running as a service on Windows

Hardware Sentry operates using the configuration located in the ProgramData\hws directory (C:\ProgramData\hws).

Configure

You need to set up 2 configuration files in the ProgramData\hws directory (C:\ProgramData\hws):

There are two configuration examples in the installation directory (C:\Program Files\hws):

  • ./otel/otel-config-example.yaml, a configuration example of the OpenTelemetry Collector.
  • ./config/hws-config-example.yaml, a configuration example of the Hardware Sentry Agent.

Before starting Hardware Sentry, make sure to configure ./otel/otel-config.yaml, since a restart of the Collector is required to take into account its changes.

Start

To start the Hardware Sentry service, open services.msc and start the Hardware Sentry Agent service.

This will start Hardware Sentry with:

  • The default Hardware Sentry Agent configuration file: ./config/hws-config.yaml.
  • The default OpenTelemetry Collector configuration file: ./otel/otel-config.yaml.

You can start Hardware Sentry in an interactive terminal (using CMD.EXE or Windows Terminal) with an alternate Hardware Sentry Agent's configuration file using the command below:

c:
cd "Program Files"
cd hws
agent --config="c:\ProgramData\hws\config\my-hws-config.yaml"

Uninstall

To uninstall Hardware Sentry, double-click the hws-windows-3.0.00.msi file and click Remove when prompted.

Upgrade

If you are upgrading from v2.0.00, perform the actions below before installing Hardware Sentry v3.0.00:

On Windows:

  • If you installed the version 2.0.00 as a Windows service, stop and remove the service before installing Hardware Sentry v3.0.00.
  • If you are running the collector in an interactive terminal, stop the collector process (hws-otel-collector.exe) before installing Hardware Sentry v3.0.00.

On Linux, stop the hws-otel-collector.

Post-install

Verify

Verify that Hardware Sentry is properly running as explained in the Health Check section.

Ports and Firewalls

Hardware Sentry opens several TCP ports for listening. None of these ports need to be open to the outside network, as they are used internally only.

Component Port Required
OpenTelemetry Collector OTLP gRPC Receiver TCP/4317 Used internally only
OpenTelemetry Collector HealthCheck TCP/13133 Optional, if you need to verify the status of the collector
OpenTelemetry Collector Exporter TCP/8888 Used internally only
No results.