suの制限
色々調べた感じ,pamを用いることでsu先の制限,su実行元の制限ができる様子.
pamは下記ファイルを修正することで諸々の制御を実施することができる.
/etc/pam.d/su
- su先の制限
書き方
#userAになろうとした場合拒否する.
auth required pam_succeed_if.so use_uid user != userA
- su実行元の制限
書き方
#groupAに所属しているユーザがsuを実行した場合拒否する.
auth required pam_succeed_if.so use_uid user notingroup groupA
suのよくある制御方法
su実行元の制御は上記方法も使えるようだが,wheelグループを用いてsuの制御を実施するのが世間一般のよくある制御の様子.
書き方
#wheelに所属していないユーザがsuを実行した場合拒否する.
auth required pam_wheel.so use_uid
suの制御時のパスワード有無
上記までに記載した方法では,拒否対象のsuでもパスワードを聞かれるような仕様になっている.
これはrequiredというcontrol方法を採用しているからである.
ここをrequisiteにすることによってパスワードを聞かれずに拒否することができるようになる.
書き方
#userAになろうとした場合,パスワードを聞かずに拒否する.
auth requisite pam_succeed_if.so use_uid user != userA
最後に
いろいろ情報を記載しましたが,pamの制御はかなり危険なので(suが使えなくなったりしてマシンをいじれなくなる可能性がある)試験機などで検証してから設定をするようにしてください.