第5章 コンソールアクセス
通常(root 以外の)ユーザーがコンピューターにローカルでログインする場合は、以下の 2 種類の特別なパーミッションが付与されます。
- そうでないと実行できない特定のプログラムを実行できます。
- そうでない場合にはアクセスできない特定のファイルにアクセスできます。これらのファイルには通常、ディスクへのアクセスに使用される特殊なデバイスファイル、CD-ROM などが含まれます。
1 台のコンピューターには複数のコンソールがあり、複数のユーザーを同時にコンピューターにログインできるため、ユーザーの 1 つは基本的にファイルにアクセスするための競合を判断する必要があります。コンソールにログインする最初のユーザーはこれらのファイルを所有します。最初のユーザーがログアウトすると、ファイルを所有する次のユーザーが表示されます。
一方、コンソールにログインしているすべてのユーザーは、通常、root ユーザーに制限のあるタスクを実行するプログラムを実行できます。X を実行している場合は、グラフィカルユーザーインターフェースにメニュー項目としてこれらのアクションを追加できます。これらのコンソールアクセス可能なプログラムには、halt、poweroff、reboot が含まれます。
5.1. root 以外のユーザーのコンソールプログラムアクセスの無効化
root 以外のユーザーは、
/etc/security/console.apps/
ディレクトリー内のプログラムへのコンソールアクセスを拒否することができます。これらのプログラムを一覧表示するには、以下のコマンドを実行します。
~]$ ls /etc/security/console.apps
abrt-cli-root
config-util
eject
halt
poweroff
reboot
rhn_register
setup
subscription-manager
subscription-manager-gui
system-config-network
system-config-network-cmd
xserver
これらのプログラムごとに、プログラムの PAM( Pluggable Authentication Module )設定ファイルを使用してコンソールアクセス拒否を設定できます。PAM とその使用方法は、『Red Hat Enterprise Linux 6nbsp;Hat Enterprise Linux 6nbsp;LinuxRed Hat Enterprise Linux 6nbsp;Linux Red Hat Enterprise Linux 6nbsp;6 『Managing Single Sign-On and Smart Cards』 』の「 Pluggable Authentication Modules 」の章を参照してください。
/etc/security/console.apps/
内の各プログラムの PAM 設定ファイルは、/etc/pam.d/
ディレクトリーにあり、プログラムと同じ名前が付けられます。このファイルを使用して、ユーザーが root でない場合、プログラムへのアクセスを拒否するように PAM を設定できます。これを行うには、最初にコメント解除された行 auth requisite pam_deny.so
の直後に auth sufficient pam_rootok.so
行を挿入します。
例5.1 再起動プログラムへのアクセスの無効化
/etc/security/console.apps/reboot
への root 以外のコンソールアクセスを無効にするには、auth requisite pam_deny.so
行 を /etc/pam.d/reboot
PAM 設定ファイルに挿入します。
#%PAM-1.0 auth sufficient pam_rootok.so auth requisite pam_deny.so auth required pam_console.so #auth include system-auth account required pam_permit.so
この設定では、reboot ユーティリティーへの root 以外のアクセスがすべて無効になります。
さらに、
/etc/security/console.apps/
の複数のプログラムは、/etc/pam.d/config-util
設定ファイルから PAM 設定を部分的に派生します。これにより、/etc/pam.d/config-util
を編集して、これらすべてのプログラムの設定を一度に変更できます。これらのプログラムをすべて検索するには、config-util
ファイルを参照する PAM 設定ファイルを検索します。
~]# grep -l "config-util" /etc/pam.d/*
/etc/pam.d/abrt-cli-root
/etc/pam.d/rhn_register
/etc/pam.d/subscription-manager
/etc/pam.d/subscription-manager-gui
/etc/pam.d/system-config-network
/etc/pam.d/system-config-network-cmd
上記のようにコンソールプログラムアクセスを無効にすると、コンソールがセキュリティー保護されている環境では便利です。セキュリティー対策には、BIOS およびブートローダーのパスワード保護、Ctrl+Alt+Delete の操作で再起動の無効化、電源およびリセットスイッチの無効化などが含まれる場合があります。このような場合、デフォルトでコンソールからアクセス可能なプログラム、電源オフ、 再 起動 など のプログラムへの通常のユーザーのアクセス権を制限することができます。