Humanity

Edit the world by your favorite way

pam-auth-updateでPAMの設定を変える

ふとPAMの設定ファイルを眺めてたらpam-auth-update(8)というスクリプトがあるらしいことを知った。
manによるとauth-client-configと同じく
自動的にPAMの設定を書き換えてくれるすごいやつで、
/usr/share/pam-configs/以下に設定ファイルがある。


なるほどーじゃあ/usr/share/pam-configs/ldap作ればいいのかー
よーしパパ作っちゃうぞーと思いファイルを開いてみると...

$ vi /usr/share/pam-configs/ldap
Name: LDAP Authentication
Default: yes
Priority: 128
Auth-Type: Primary
Auth-Initial:
        [success=end default=ignore]    pam_ldap.so
Auth:
        [success=end default=ignore]    pam_ldap.so use_first_pass
Account-Type: Primary
Account:
        [success=end default=ignore]    pam_ldap.so
Password-Type: Primary
Password-Initial:
        [success=end user_unknown=ignore default=die]   pam_ldap.so
Password:
        [success=end user_unknown=ignore default=die]   pam_ldap.so use_authtok try_first_pass
Session-Type: Additional
Session:
        optional                        pam_ldap.so


!!!?



少なくともDebianではすでに作られてたみたいです。
どうやらDebianではlibpam-ldapをインストールすれば/usr/share/pam-configs/ldapが入る模様。
pam-auth-updateの--packageオプションを見るにパッケージからいろいろ呼び出される用のスクリプトっぽいですね。しらんけど。

$ sudo pam-auth-update

すれば自動的に/usr/share/pam-configs/以下の設定ファイルに基づいて変更が加えられます。
っていうかこの画面インストールの時に見たわー。こいつかー。
なのでそもそも前回/etc/pam.d/common-*とかいじらなくてよかったみたいですね。



...と思ったけどやっぱデフォルトじゃnsswitch.confにldapって書いただけじゃ使えない...
pam-auth-update用の設定ファイル作成中。もしくはもうあるのかな?


追記:うーん別のコンテナでapt-get install lib{nss,pam}-ldapしたら普通にユーザ見えた...
debconfの質問の解答間違えたか、もしくは事前にいじっちゃってて書き換えられなかったとか...?
というわけでこのエントリの解答としては、「Debianならpam-auth-updateが適当に書き換えてくれるので、PAMの設定いじる必要ないよ」ということでした。