| Red Hat Linux 7.3: オフィシャル Red Hat Linux リファレンスガイド | ||
|---|---|---|
| 前のページ | 第 8章PAM(Pluggable Authentication Modules) | 次のページ |
PAMには次の4つのタイプのモジュールがあり、特定のサービスへのアクセスを制御します。これらのタイプは、認証過程で異なる面に関連づけられます。
auth — 例えばパスワードの要求とチェックを用いて、ユーザー認証を行います。これはまた、グループの所属権かKerberosの「チケット」などの「証明書」を設定します。
account — ユーザーにアクセスが許可されることをチェックします。例えば、アカウントが期限切れでないか、ユーザーがその時刻のログインを認められているか、をチェックします。
password — パスワードの設定に使用されます。
session — ユーザーが認証された後で、ユーザーのセッションを管理します。このタイプのモジュールによって、アクセスを許可する必要がある追加タスクも実行できます(たとえば、ユーザーのホームディレクトリをマウントしたり、メールボックスを利用できるようになります)。
![]() | 注意 |
|---|---|
個々のモジュールは、上記モジュールタイプの1つ以上に位置付けられます。例えば、pam_unix.soは4つ全てのコンポーネントを持っています。 |
PAM設定ファイルでは、モジュールタイプは、最初の面を定義しています。例えば、設定の典型的な行は以下のようになります。
auth required /lib/security/pam_unix.so |
これは、PAMがpam_unix.soモジュールのauthコンポーネントをチェックしているということを表します。
モジュールはスタックされる、つまり次々に置き換えられるので、ある特定の目的に合わせて、複数のモジュールを一緒に使用できます。従って、認証プロセスにおいて、モジュールのスタック順は非常に重要です。
スタックは、管理者が、ユーザー認証の前に、いくつかの状態であるのを要求しやすくなるからです。たとえば、rloginは通常、5つのスタックされた認証方法を使用します。PAM設定ファイルでは次のように示されます。
auth required /lib/security/pam_nologin.so auth required /lib/security/pam_securetty.so auth required /lib/security/pam_env.so auth sufficient /lib/security/pam_rhosts_auth.so auth required /lib/security/pam_stack.so service=system-auth |
rloginの使用が承認される際、PAMは/etc/nologinが存在しないこと、暗号化されていないネットワーク接続を通じてrootとしてリモートからログインするのでないこと、環境変数がロードされないことを確認します。その後、rhosts認証が成功すると、接続が認められます。rhosts認証が失敗した場合、標準パスワード認証が実行されます。
新しいPAMモジュールはいつでも追加できます。また、PAM対応アプリケーションはそれらのモジュールを使用することができます。たとえば、一時パスワード作成方法を作成し、それをサポートするようなモジュールを作成できる場合、再コンパイルや修正を実行しなくても、PAMを認識するプログラムは、新しいモジュールと新しい一時パスワード作成方法を使用することができます。これは非常に重要です。プログラムを再コンパイルすることなく、テストと同じように認証方法をうまく組み合わせることができるからです。
モジュール作成に関するマニュアルは、/usr/share/doc/pam-バージョン番号/ディレクトリにあります。