PAM

/ LPIC / Comment[0]
PAM(Pluggable Authentication Modules)とはLinuxディストリビューションにおけるユーザ認証の中枢となる仕組みである。
旧来のUNIX環境ではユーザ認証を利用するプログラムは/etc/passwdを参照するだけで済んだが、様々な認証方式が利用されるようになると、ユーザ認証を必要とするプログラムはそれらの認証方式に対応しなければならなくなった。
PAMは、各種認証処理を実現するための関数を含んだライブラリで、このライブラリをアプリケーションに動的に組み込むことで適切な認証機能が実現できる。
PAMを用いれば、アプリ側に認証機能やユーザ情報の管理といった仕組みを持たせる必要がなくなるというわけ。
特定のユーザーだけの認証を許可したり、ユーザー認証をしようとすると警告を発したりなどと柔軟な設定が可能。

PAMの設定ファイル
/etc/pam.conf
/etc/pam.d/*


/etc/pam.d/sudo
#%PAM-1.0

@include common-auth
@include common-account

session required pam_permit.so
session required pam_limits.so

書式: モジュールタイプ コントロール モジュールのパス 引数

主なモジュールタイプ
 auth ユーザ認証を行う
 account ユーザ人称ができるか確認する
 password パスワードの設定と変更に使用される
 session ユーザ認証の前後に実行すべき処理を指定する

コントロール
 requisite モジュールの実行に失敗すれば直ぐに認証を拒否する
 required モジュールの実行に失敗しても直ぐには拒否せず、同じタイプのモジュールの実行がすべて完了した時点で認証を拒否する
 sufficient モジュールの実効に成功した場合、より上位のrequired行がすべて成功であればその時点で認証を成功とする
 optional optionalを指定したモジュールタイプが一つだけの場合を除いてPAMアプリケーションに影響を与えない

モジュール
 pam_cracklib.so パスワードの安全性を向上させる
 pam_env.so ユーザログイン時の環境変数を初期設定する
 pam_deny.so 認証に対し常に失敗を返す
 pam_limits.so ユーザの利用できるリソースを制限する
 pam_nologin.so /etc/nologinファイルがあれば一般ユーザのログインを拒否する
 pam_pwdb.so /etc/passwd,/etc/shadowなどを使ったユーザ認証とパスワード変更を行う
 pam_securetty.so /etc/securettyファイルに記載された端末のみrootログインを許可する
 pam_stack.so 他のPAM設定ファイルをインクルードする
 pam_unix.so 通常のパスワード認証を行う
 pam_warn.so 認証時とパスワード変更時にログ出力する
 pam_wheel.so root権限でのアクセスをwheelグループメンバーのみに制限する
関連記事

コメント

:
:
:
:
:
管理人のみ表示を許可