PAM limitsを利用する環境で、students groupの各userについて同時loginを最大2、process数をhard limit 100へ制限する。
/etc/security/limits.confの行を選ぶ。
適切な設定はどれか。
limits.confでは@GROUPをdomain、hardをtype、maxlogins/nprocをitemとしてlimit値を記述する。PAM sessionにpam_limitsが必要である。
詳細解説
students soft login 2
students soft process 100group指定、item名、hard limitが要件と異なる。
誤り。groupには@が必要で、item名はmaxlogins/nproc、typeはhardという要件を満たさない。
@students hard nofile 2
@students hard memlock 100open file数とlocked memoryを制限する別itemである。
誤り。nofileはopen file数、memlockはlocked memory量で、login・process数とは別resourceである。
%students deny login 2
%students deny nproc 100limits.confのdomain/type形式ではない。
誤り。%やdenyはlimits.confのdomain/typeとしてこのpolicyを表す構文ではない。
@students hard maxlogins 2
@students hard nproc 100groupへhardなlogin数とprocess数limitを設定する。
正しい。students groupの各対象へhardなmaxlogins 2とnproc 100を設定する。
実際に確かめる
一時的な検証環境で実行できる例です。
printf '%s
' '@students hard maxlogins 2' '@students hard nproc 100'期待される結果
@students hard maxlogins 2
@students hard nproc 100理解のポイント
- @はgroup domain
- maxlogins
- nproc
確認時の注意
- 確認環境: pam_limits設定行の表示のみ
- 実際のPAM/limits設定は変更しない。
基礎のおさらい
PAM session
limits.confは通常pam_limits.soがsession stackで適用し、既存sessionへ遡って変更されない。
softとhard
processはsoft limitを下げられ、許可範囲でhard limitまで戻せるが、hardを超えて引き上げられない。