27.5. 他のアプリケーションのコンソールアクセスの有効化
コンソールユーザーが他のアプリケーションにアクセスできるようにするには、より多くの作業が必要になります。
まず、コンソールアクセスは、/sbin/ または
/usr /sbin/
にあるアプリケーションに対して のみ 機能するので、実行するアプリケーションが存在する必要があります。これを確認したら、以下の手順を実施します。
- サンプル
foo
プログラムなどのアプリケーションの名前から /usr/bin/consolehelper アプリケーションへのリンクを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow cd /usr/binln -s consolehelper foo
cd /usr/binln -s consolehelper foo
/etc/security/console.apps/foo
ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow touch /etc/security/console.apps/foo
touch /etc/security/console.apps/foo
/etc/pam.d/
にfoo
サービスの PAM 設定ファイルを作成します。これを簡単に行うには、halt サービスの PAM 設定ファイルのコピーから開始し、動作を変更する場合はファイルを変更します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp /etc/pam.d/halt /etc/pam.d/foo
cp /etc/pam.d/halt /etc/pam.d/foo
/usr/bin/foo を実行すると、consolehelper が呼び出され、/usr/sbin/userhelper を利用してユーザーを認証します。ユーザーを認証するために、
/etc/pam.d/foo
が /etc/pam.d/halt
のコピー(/etc/pam.d/halt のコピーの場合)が( /etc/pam.d/foo
)のコピーであれば、consolehelper はユーザーのパスワードを要求します。その後、root 権限で /usr/sbin/foo
を実行します。
PAM 設定ファイルで、アプリケーションが pam_timestamp モジュールを使用して認証に成功したことを記憶(またはキャッシュ)するように設定することができます。アプリケーションが起動し、適切な認証が提供され(root パスワード)、タイムスタンプファイルが作成されます。デフォルトでは、認証の成功は 5 分間キャッシュされます。この間、
pam_timestamp
を使用するように設定され、同じセッションから実行されるその他のアプリケーションが自動的に認証されます。ユーザーは root パスワードを再度入力する必要はありません。
このモジュールは
pam
パッケージに含まれています。この機能を有効にするには、etc/pam.d/
の PAM 設定ファイルに以下の行が含まれている必要があります。
auth sufficient /lib/security/pam_timestamp.so session optional /lib/security/pam_timestamp.so
auth sufficient /lib/security/pam_timestamp.so
session optional /lib/security/pam_timestamp.so
auth で始まる最初の行は、他の
auth
に 十分な
行の後に指定し、セッションで始まる行は他の セッション
オプション
の行後である必要があります。
pam_timestamp
を使用するように設定されたアプリケーションが(Panel 上の) から正常に認証されると、GNOME または KDE デスクトップ環境を実行している場合は、

ユーザーは、アイコンをクリックして認証を忘れてしまったオプションを選択して、キャッシュされた認証を忘れることを選択できます。