Pulse/pkg
rcourtman 4686efd8c8 Add a supported least-privilege agent install profile
The unified agent's Linux installer only offered the root profile, and the
docs called non-root unsupported. That default is the most-cited reason
security-conscious evaluators reject Pulse without trying it. install.sh
gains --least-privilege: the service runs as a dedicated nologin
pulse-agent system user with every existing hardening directive, no
LXC-attach ambient capabilities, docker-group membership for socket reads,
and refusal (not silent root fallback) on appliance platforms, non-systemd
init systems, and --enable-commands. Optional --grant-smart and --grant-pct
restore the only two collectors that need elevation through
visudo-validated exact-command sudoers rules and root-owned wrappers the
agent reaches via new absolute-path-only PULSE_SMARTCTL_PATH /
PULSE_PCT_PATH overrides; the pct grant covers pct list and pct df only
and can never widen into pct exec. --update preserves the profile and its
grants by reading the installed unit.

The agent now authors a privilege block in its report (effective root,
service user, active helpers), carried through models into the fleet
doctor as a descriptive field: Agent Doctor shows the profile and its
helpers instead of presenting intentionally absent collectors as a fault,
and a least-privilege agent can never be marked unhealthy on that evidence
alone.
2026-08-20 20:49:44 +01:00
..
agents Add a supported least-privilege agent install profile 2026-08-20 20:49:44 +01:00
aicontracts Project Patrol tools from resource scope 2026-08-15 12:38:41 +01:00
audit Harden audit signatures against boundary forgery 2026-08-12 05:05:11 +01:00
auth fix(rbac): make SSO user access manageable 2026-08-09 13:36:07 +01:00
cloudauth fix(hosted): preserve direct handoff membership continuity 2026-03-26 23:40:02 +00:00
db Cover cloud tenant registry queries, unified views and slowlog wrappers 2026-07-22 21:41:02 +01:00
discovery Fix discovery blocklist for configured subnets (#1616) 2026-07-30 00:18:48 +01:00
diskinventory Fix Proxmox physical disk inventory continuity 2026-07-23 22:05:09 +01:00
edition Block in-app self-update on the Pro binary to prevent silent downgrade 2026-07-08 10:02:04 +01:00
extensions Fix audit storage migration and viewer races 2026-07-24 10:33:57 +01:00
fsfilters Allow agents to include filtered disk mounts 2026-08-11 16:37:37 +01:00
licensing Describe External Probes server-side alerting accurately 2026-08-11 16:37:37 +01:00
metrics Protect shared metrics database directories 2026-08-11 15:57:17 +01:00
pbs fix(pbs): skip superuser-only node lookup for tokens 2026-08-09 12:25:07 +01:00
pmg Harden outbound URLs and file-backed storage 2026-03-29 12:47:55 +01:00
proxmox Honor explicit cluster member address overrides and surface recovery failures 2026-08-13 22:06:29 +01:00
pulsecli Enforce server-owned action approval authority 2026-07-11 19:49:17 +01:00
reporting test(reporting): slice PDF streams by declared /Length in text extraction 2026-08-06 09:51:01 +01:00
securityutil Block IPv6 transition addresses in SSRF guards (GHSA-8f8r-p75h-jwq5) 2026-07-31 17:57:26 +01:00
server fix(telemetry): make patrol run volume and refusal causes readable 2026-08-19 17:00:02 +01:00
tlsutil feat(monitoring): alert on certificate validity 2026-08-06 09:47:03 +01:00