Authentication
Seer Box Sentinel can send HTTP traffic data and alerts through the Internet to a Seer Box Engine and to safeguard sensitive information in transit and ensure it reaches only the intended destination will leverage HTTPS and X.509 certificate validation to not only encrypts the data but also confirms Seer Box Engine identity, preventing unauthorized access and man-in-the-middle attacks.
Certificate authentication
Sentinel use a Trust On First Use authentication scheme so that when no certificate is configured a connection is made to
the instance of Seer Box Engine specified with SBX_ENGINE_HOST and SBX_ENGINE_PORT in the configuration,
the exposed certificate is downloaded and trusted in all the subsequent connections, refusing to connect to servers exposing a different certificate.
It's important to verify the first connection is made to the correct host. To facilitate validation when a new certificate is installed its fingerprint will be printed in the Sentinel logs to allow inspection.
When using the Seer Box GUI reverse proxy for Seer Box Engine API, by default on port 53443 TCP, you can verify the correct certificate
was downloaded by Sentinel looking at the seer-box-gui logs on the server where the Seer Box GUI is running:
journalctl -u seer-box-gui | grep Fingerprint
Or the container logs:
docker logs seer_box_gui | grep Fingerprint
Otherwise check your reverse proxy certificate configuration if you are not using the one provided by Seer Box GUI.
To configure a different certificate you can delete the old certificate removing the container volume in which is stored:
podman volume rm sentinel_certs
You can also force a certificate mounting its PEM file directly, for example:
podman run \
--rm \
--env-file .env \
--network host \
--volume ./your-certificate.crt:/opt/seer_box/etc/tls/certs/seer-box.crt:Z \
quay.io/pluribus_one/seer_box_sentinel:latest
Authentication Key
Seer Box Engine will verify that a Sentinel trying to connect is authorized to send data checking the SBX_ENGINE_AUTH_KEY passed together with the HTTP requests.
To allow a Sentinel it's necessary to setup the same SBX_ENGINE_AUTH_KEY value used in the Sentinel configuration as a valid Authentication Key
on Seer Box Engine.
To do so on the Seer Box GUI navigate to Settings->Traffic Sources->Add Traffic Source,
in the form choose Seer Box Sentinel type and insert the SBX_ENGINE_AUTH_KEY value in Authentication Key.