YugabyteDB
TMA-YUGABYTEDB-7.3
Ensure TLS is enabled and configured correctly: client to server
説明
YugabyteDB clusters can be configured to use client-to-server encryption to protect data in transit between YugabyteDB servers and clients, tools, and APIs. When enabled, Transport Layer Security (TLS), the successor to the deprecated Secure Sockets Layer (SSL), is used to ensure data protection for YSQL and YCQL only. Note that there is no planned support for YEDIS. Runs ysqlsh (add the YugabyteDB bin directory to PATH) against PGHOST/PGPORT (default 127.0.0.1:5433) as PGUSER (default yugabyte); supply the password through PGPASSWORD or ~/.pgpass. Reads the YB-TServer GFlags from the web UI at ${YB_TSERVER_WEB:-127.0.0.1:9000}/varz; run it against every TServer. Passes when YSQL SHOW ssl returns on and the TServer GFlags (from ${YB_TSERVER_WEB:-127.0.0.1:9000}/varz) have use_client_to_server_encryption=true and allow_insecure_connections=false.
チェック方法
監査方法: SQL クエリ
ssl=$(ysqlsh -h "${PGHOST:-127.0.0.1}" -p "${PGPORT:-5433}" -U "${PGUSER:-yugabyte}" -d "${PGDATABASE:-yugabyte}" -tAc "SHOW ssl" 2>/dev/null) || exit 1; out=$(curl -sf "http://${YB_TSERVER_WEB:-127.0.0.1:9000}/varz?raw=1" 2>/dev/null) || exit 1; if [ "$ssl" = on ] && printf '%s\n' "$out" | grep -qE -- '--use_client_to_server_encryption=true([^[:alnum:]_]|$)' && printf '%s\n' "$out" | grep -qE -- '--allow_insecure_connections=false([^[:alnum:]_]|$)'; then echo compliant; else echo noncompliant; fi- 期待される出力
compliant
修正方法
修正方法: ガイダンスまたは IaC パッチ
Start every YB-TServer with --use_client_to_server_encryption=true --allow_insecure_connections=false --certs_for_client_dir=<dir> (rolling restart) and configure clients with sslmode=verify-full / YCQL TLS.
プロパティ
- オペレーティングシステム
- すべて
- タグ
- yugabytedbtlsencryption
- 参照
- CIS YugabyteDB Benchmark v2.0.0 - 7.3 Ensure TLS is enabled and configured correctly: client to server
このホストをチェック
監査が許可されているマシンで実行してください。スキャンは読み取り専用です。
tmaegis scan --target yugabytedb