TMAegisBeta
更多 tdsql 规则

TDSQL

TMA-TDSQL-1.2

Ensure a Dedicated Least-Privilege Account Is Used for TDSQL Processes

高级别 1自动化tdsql

说明

Each TDSQL component (OSS, Manager/Scheduler/Keeper, Agent, MySQL) should run under a dedicated, non-root, least-privilege operating system account. The MySQL daemon should not run as root. TDSQL management processes should run under a dedicated account (e.g., tdsql). Counts mysqld, oss_server, scheduler and ZooKeeper processes running as root (FAIL when none of these processes is running).

检查方式

审计方法: Shell 命令

shell
out=$(ps -eo user=,comm=,args= 2>/dev/null) || exit 1; printf '%s\n' "$out" | awk '$2 ~ /^(mysqld|mysqld_safe|oss_server|scheduler)$/ || ($2 == "java" && /zookeeper/) {n++; if ($1 == "root") r++} END {if (n == 0) exit 1; print r + 0}'
预期输出
0

修复方式

修复方法: 操作指南或基础设施补丁

Create a dedicated system account (groupadd -r tdsql; useradd -r -g tdsql -s /sbin/nologin -d /data/tdsql tdsql), chown the TDSQL directories to it and restart each component under that account.

属性

操作系统
任意
标签
tdsqlservice-account
参考
CIS Tencent TDSQL 10.3.22 Benchmark v1.0.0 - 1.2 Ensure a Dedicated Least-Privilege Account Is Used for TDSQL Processes

检查本机

请在您有权审计的机器上运行此命令。扫描为只读操作。

shell
tmaegis scan --target tdsql