2014年3月10日月曜日

FreeBSD で pam トラブル

FreeBSD 8.4 から FreeBSD 9.2 へアップグレードした自宅サーバですが、いろいろとトラブルが発生しています。

今回紹介するのは、おそらく FreeBSD 8.4 のときにも発生したトラブルのようですが、今回のアップグレードでサーバへモニターを接続したときに発見した pam のトラブルです。

モニター上には以下のようなメッセージが大量に発生していました。
**** in openpam_dynamic(): /usr/lib/no pam_skey.so: No such file or directory
**** in openpam_load_module(): no pam_skey.so found

このエラーメッセージを読む限り /usr/lib/pam_skey.so が見当たらないということのようでした。

確かに pam_skey.so が存在していないようです。どうしたものなのか pam のマニュアルやネット上の情報などを調査してみましたが、原因がよく解りません。

原因がよく解らなかったのですが、pam_skey.so というモジュールは、どうもかなり以前に廃止になっていたようです。pam_skey.so のキーワードが含まれる情報は、ネット上に2000年代前半までのものしか見当たりませんでした。

そこでこの pam_skey.so のモジュールを指定している設定がどこにあるかを探してみました。すると /etc/pam.conf に記述がありました。

/etc/pam.conf の中には私自身が編集した箇所があり、そこには 2004-08-14 のように編集を行った日付が入っていました。どうも10年近く前に編集したファイルのようです。その後 編集はないようです。

さらに pam について調べると、現在はこの /etc/pam.conf で動作の設定は有効ですが、/etc/pam.d のディレクトリの配下に置かれた各ソフトウェアごとの設定ファイルへ移行していました。結局古い設定ファイルのまま pam を使用していることに問題があったようです。

結局 /etc/pam.conf を削除したところ、上記のエラー表示もなくなりました。またログインや ftpd, pop3, imap の動作も問題ないようでした。

かなり古い時期から FreeBSD サーバを繰り返してアップグレードしながら使用していると、このような古い設定ファイルで異常な動作を引き起こしてしまうようで注意が必要のようです。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。