107.1標準
バックグラウンドサービスreports用にsystem accountを作る。
対話ログインは許可しない。
適切なコマンドはどれか。
× 不正解
useradd -rはsystem account向けの番号範囲等を使用し、nologin shellで対話利用を制限できる。サービスが必要とする最小権限だけを付与する。
詳細解説
誤り
useradd -m -s /bin/bash reports通常ホームと対話shellを与える構成で、制限要件に反する。
誤り。対話用Bashとホームを用意し、バックグラウンドサービスだけという用途より権限・利用面を広げる。
誤り
useradd -u 0 -s /bin/bash reportsUID 0の強い権限と対話shellを与える危険な構成である。
誤り。UID 0はrootと同じ権限を持つため、専用サービスに安易に割り当てると最小権限原則に大きく反する。
正しい
useradd -r -s /usr/sbin/nologin reports-rでsystem accountとし、nologin shellで対話ログインを拒否する。
正しい。-rはsystem accountとして作成し、nologin shellが通常の対話セッション開始を拒否する。
誤り
useradd -G sudo reports管理グループ所属を与え、対話ログインも制限しない。
誤り。sudo等の管理グループへ加えると強い権限を与える一方、shellやlogin制限も設定していない。
実際に確かめる
一時的な検証環境で実行できる例です。
useradd --help 2>&1 | grep -E -- '--system|--shell'期待される結果
-r/--systemと-s/--shellの説明理解のポイント
- -rはsystem account
- nologinで対話拒否
- UID 0を与えない
確認時の注意
- 確認環境: shadow-utils useradd / help読取のみ
- nologinのパスは/etc/shellsや実ファイルを確認する。
基礎のおさらい
system account
人の対話利用ではなくdaemonやジョブの所有者を分離する目的で、通常利用者とは別のUID範囲を使う。
最小権限
必要なファイル、socket、能力だけへアクセスを許し、login shell、password、sudo等を不要なら与えない。
問題IDKP-107-683
確認環境shadow-utils useradd / help読取のみ
最終技術確認2026-08-13
誤り・権利侵害を報告