TMAegis
More rules for yugabytedb

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