Install the agent
Install your licensed executable, check its checksum and give local clients access.
Obtain the executable
Contact support for your organization's licensed executable and SHA-256 checksum. Keep the file private: it contains your license.
These instructions install it as /opt/swqos/swqos under a dedicated swqos account. That account must be able to write the executable's directory for automatic updates.
Create the user and directories
sudo useradd --system --user-group --no-create-home --home-dir /opt/swqos --shell /usr/sbin/nologin swqos
sudo install -d -o swqos -g swqos -m 0700 /opt/swqos
sudo install -d -m 0755 /etc/swqosInstall the executable
Set delivered to the path of the file you received:
delivered=/path/to/delivered-executable
sudo install -o swqos -g swqos -m 0700 "$delivered" /opt/swqos/swqosVerify the checksum
Set expected to the SHA-256 value ZeroCopy provided, then check the installed file:
expected=PASTE_DELIVERED_SHA256
printf '%s %s\n' "$expected" /opt/swqos/swqos | sudo sha256sum --checkContinue only if the command prints /opt/swqos/swqos: OK. Otherwise, contact support before running the file.
Create the configuration
Create /etc/swqos/swqos.toml as root and make it readable by swqos. This configuration keeps network listeners on loopback and sets an explicit IPC path. See Configuration for the available options.
[listen]
http = "127.0.0.1:8080"
quic = "127.0.0.1:4433"
ipc = "/run/swqos/swqos.sock"
ipc_busy_poll = trueThe agent does not create the socket's directory. The service example creates /run/swqos at each start.
Give IPC clients access
The agent creates its IPC socket with mode 0660, owned by the swqos user and group. Add each account that runs an IPC client to the swqos group, then restart that application so its processes pick up the group:
sudo usermod --append --groups swqos app-userReplace app-user with the account that runs your application. HTTP and QUIC clients need no group membership.
Executable location
Keep /opt/swqos writable by swqos, including under any service sandboxing. If you launch through a symbolic link, the target file's directory must be writable. Updates retain owner access and remove group and other permissions from the executable.