TMA-YUGABYTEDB-1.6
Ensure the YugabyteDB service is run as a non-root user
HighLevel 2Automatedyugabytedb
Description
Though YugabyteDB database may be run as root, it should run as another non-root user. Passes when every running yb-master / yb-tserver process runs as a non-root account (FAIL when none are running).
How it is checked
Audit method: Shell command
shell
out=$(ps -eo user=,comm= 2>/dev/null) || exit 1; printf '%s\n' "$out" | awk '$2 == "yb-master" || $2 == "yb-tserver" {n++; if ($1 == "root") r++} END {if (n == 0) print "not running"; else if (r > 0) print "root"; else print "compliant"}'- Expected output
compliant
How it is fixed
Fix method: Guidance or infrastructure patch
Create a dedicated yugabyte user and group, chown the installation and fs_data_dirs to it and start yb-master/yb-tserver as that user (User=yugabyte in the service unit).
Properties
- Operating systems
- Any
- Tags
- yugabytedbservice-account
- Reference
- CIS YugabyteDB Benchmark v2.0.0 - 1.6 Ensure the YugabyteDB service is run as a non-root user
Check this host
Run this on a machine you are allowed to audit. The scan is read-only.
shell
tmaegis scan --target yugabytedb --level 2