Solaris 10 の設定: su できるユーザーを制限

  Unix

Solaris にも pam_wheel.so があれば wheel グループに属しているユーザーしか、su できなくなるのでいいのだが、残念ながら Solaris 8 あたりで廃止されてしまったらしい。このままでは、ブルートフォースなど、何らかの方法でパスワードを入手したユーザーが他のユーザーに su したり、root になったりするのを止められない。
,,,というわけで su コマンドから other に対する実行権限を取り上げ、グループ wheel のみが実行できるようにする。

そもそも wheel グループがないので追加。

$ sudo /usr/sbin/groupadd wheel
$ ls -al /usr/bin/su
$ sudo /usr/bin/chgrp wheel /usr/bin/su
$ sudo /usr/bin/chmod 4550 /usr/bin/su
$ ls -l /usr/bin/su

-r-sr-xr-x 1 root sys 25144 2005-05-25 08:50 /usr/bin/su

-r-sr-x--- 1 root wheel 25144 2005-05-25 08:50 /usr/bin/su
$ ls -l /usr/local/bin/su
$ sudo /usr/bin/chgrp wheel /usr/local/bin/su
$ sudo /usr/bin/chmod 4550 /usr/local/bin/su
$ ls -l /usr/local/bin/su

-r-sr-xr-x 1 root root 66652 2006-04-29 15:16 /usr/local/bin/su

-r-sr-x--- 1 root wheel 66652 2006-04-29 15:16 /usr/local/bin/su
$ ls -l /sbin/su.static
$ sudo /usr/bin/chgrp wheel /sbin/su.static
$ sudo /usr/bin/chmod 0550 /sbin/su.static
$ ls -al /sbin/su.static

-r-xr-xr-x 1 root sys 20736 2005-01-23 11:27 /sbin/su.static

-r-xr-x--- 1 root wheel 20736 2005-01-23 11:27 /sbin/su.static

実行できないことを確認する。

$ /usr/bin/su -
$ /sbin/su.static -
$ /usr/local/bin/su -

-bash: /usr/bin/su: Permission denied
-bash: /sbin/su.static: Permission denied
-bash: /usr/local/bin/su: Permission denied

逆に su を実行させたいユーザーは、wheel グループに追加する。

$ sudo vi /etc/group

--- /etc/group.old
+++ /etc/group
-wheel::102:
+wheel::102:natsu,moja,muku,mei,kemu