次の行があります。
auth required pam_env.so
文書には次のように記載されています。
最初のモジュールが実行されます。
pam_env
では、オプションでで指定された環境変数を設定または消去できます/etc/security/pam_env.conf
。このモジュールは必須です。認証を続行するには正常に実行する必要があります。
—実用的なUNIXとインターネットセキュリティ、第3版 作成者: Simson Garfinkel, Gene Spafford, Alan Schwartz / プラグ型認証モジュール (PAM)
すごい! 「成功的に実行する」とは正確に何を意味しますか?変数をロードすることを知っています/etc/security/pam_env.conf
(CentOSとUbuntuでは、すべての行がコメントアウトされています)。これが正確に何を意味するのかを説明してください。
このモジュールはどのように動作しませんか?それとも単に変数をロードするだけですが、これは認証とは何ですか?
私が読んでpam.conf
マンページ:
必須
PAMが失敗すると、最終的にPAM-APIは失敗を返しますが、残り積み上げモジュール(このために提供するそして タイプ)が呼び出されました。
たぶん私は何かを逃したかもしれませんが、このトピックについて何も教えてくれません。
セッションではなく認証タイプがあるのはなぜですか?
答え1
マニュアルpam_env
ページには次のように記載されています。
RETURN VALUES
PAM_ABORT
Not all relevant data or options could be gotten.
PAM_BUF_ERR
Memory buffer error.
PAM_IGNORE
No pam_env.conf and environment file was found.
PAM_SUCCESS
Environment variables were set.
さらに、システムが重大に破損した場合、pam_env.so自体が実行されない可能性があります(たとえば、ファイルシステムの破損または32ビットカーネルの64ビットバイナリ)、エラー値が返されます。
スタックの理由は、auth
後続のPAMモジュールが設定された内容によって異なる可能性があるためです(そこにありますrequired
)。