このエントリーをはてなブックマークに追加


特定のユーザのみsuコマンドの実行を可能にする(suコマンドの制限)

サーバ構築を行い、環境を複数のユーザに提供する時など、suコマンドによるユーザ切り替えを制限したい場合があります。
(rootのパスワードが知られた場合、suにてrootに切り替えられてしまうなど。)
以下の設定を行うことによりsuコマンドを特定のユーザ以外使用できなくなります。

尚、本資料はCentOS5.8で動作確認をしました。


特定ユーザのみsuコマンドを実行できるようにする設定

以下は、/etc/pam.d/suの内容です。(CentOS5.8)

 1: #%PAM-1.0
 2: auth            sufficient      pam_rootok.so
 3: # Uncomment the following line to implicitly trust users in the "wheel" group.
 4: #auth           sufficient      pam_wheel.so trust use_uid
 5: # Uncomment the following line to require a user to be in the "wheel" group.
 6: #auth           required        pam_wheel.so use_uid
 7: auth            include         system-auth
 8: account         sufficient      pam_succeed_if.so uid = 0 use_uid quiet
 9: account         include         system-auth
10: password        include         system-auth
11: session         include         system-auth
12: session         optional        pam_xauth.so

特定ユーザのみsuコマンドを利用可能にするには、6行目のコメントを外し有効にします。

  • 修正前
     6: #auth           required        pam_wheel.so use_uid
  • 修正後
     6: auth           required        pam_wheel.so use_uid

次にsuコマンドを利用できるユーザをwheelグループに所属させます。
コマンドは以下の通りです。

usermod -G wheel ユーザアカウント

注意
上記のコメントを外すとwheelグループに所属しているユーザ以外はsuコマンドが利用できなくなります。
後でpam.d/suの設定を戻そうとしても、suコマンドでrootになれないのでご注意を!
ssh root@localhostなどでrootでログインすることにより修正することもできますが、rootによるsshログインを不許可にしている場合などはご注意くださいませ。

suコマンドの実行制限を実際に試してみる

以下の手順で試してみました。

  1. rootユーザで作業
  2. /etc/pam.d/su を上記に記したようにコメントを外し保存
  3. sakura, tsubaki, ajisaiの3つのアカウントで試す
  4. sakura を wheel グループに所属させる
    usermod -G wheel sakura
  5. rootからログアウト
  6. sakuraアカウントでログインしsuコマンドを試す
    suコマンドによりtsubakiとajisaiに切り替えができました。
    [sakura@centos ~]$ su - tsubaki
    Password: 
    [tsubaki@centos ~]$ logout
     
    [sakura@centos ~]$ su - ajisai
    Password: 
    [ajisai@centos ~]$ logout
  7. tsubakiアカウントでログインしsuコマンドを試す
    エラーとなりsuコマンドで別ユーザアカウントに切り替えができません。
    [tsubaki@centos ~]$ su - sakura
    Password: 
    su: incorrect password
    [tsubaki@centos ~]$ su - ajisai
    Password: 
    su: incorrect password
  8. ajisaiアカウントでログインしsuコマンドを試す
    エラーとなりsuコマンドで別ユーザアカウントに切り替えができません。
    [ajisai@centos ~]$ su - sakura
    Password: 
    su: incorrect password
    [ajisai@centos ~]$ su - tsubaki
    Password: 
    su: incorrect password


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:29:47