- - PR -
courier-imapの/etc/passwdを使った認証について
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-12-21 21:07
こんばんわ。
courie-imapの/etc/passwdを使った認証について質問があります。 pop3dでメール受信すると、下のようなエラーになりました。 どこをどう直せばいいのかよくわからないので、「こうしてみたら?」 っていうのがありましたらアドバイスをお願いしますm(_ _)m <メール受信時のエラーログ> Dec 21 19:20:29 test198 pop3d: authentication error: No such file or directory Dec 21 19:28:39 test198 pop3d: Connection, ip=[::ffff:202.○.○.○] Dec 21 19:28:39 test198 pop3d: authdaemon: s_connect() failed: No such file or directory Dec 21 19:28:39 test198 pop3d: LOGIN FAILED, user=ateam, ip=[::ffff:202.○.○.○] ここの掲示板の過去ログをみますと、courier-authlibをインストールしていないんじゃないの?といった書き込みがあったので、確認しましたが、インストールしていました。 下がインストール確認の結果です。 <インストール確認の結果> # rpm -qa | grep courier courier-authlib-devel-0.58-1 courier-authlib-pgsql-0.58-1 courier-authlib-pipe-0.58-1 courier-authlib-0.58-1 courier-imap-4.1.1-1 courier-authlib-ldap-0.58-1 courier-authlib-mysql-0.58-1 courier-authlib-debuginfo-0.58-1 courier-authlib-userdb-0.58-1 また、プロセスの起動も確認してみました <プロセスの起動確認> # ps ax | grep courier-authlib 5126 ? S 0:00 /usr/sbin/courierlogger -pid=/var/spool/authdaemon/pid -facility=local1 -start /usr/libexec/courier-authlib/authdaemond 5127 ? S 0:00 /usr/libexec/courier-authlib/authdaemond 5128 ? S 0:00 /usr/libexec/courier-authlib/authdaemond 5214 pts/0 R+ 0:00 grep courier-authlib また、認証用モジュールの読み込みも「authpam」にしています。 <認証用モジュールの読み込み確認> # grep authmodulelist /etc/authlib/authdaemonrc ##NAME: authmodulelist:2 authmodulelist="authpam" ##NAME: authmodulelistorig:3 authmodulelistorig="authpam" アドバイスお願いします。 |
|
投稿日時: 2006-12-21 22:41
>authentication error: No such file or directory
>authdaemon: s_connect() failed: No such file or directory 辺りからして、何かのファイルにアクセスできない、 または見つからないみたいですね。 /etc/authlib/authdaemonrc のauthdaemonvar=/var/run/courier/authdaemon にアクセスできないんじゃないですか? これはdebianなので、環境よって、 ファイルが違うからもしれませんが。 |
|
投稿日時: 2006-12-22 12:12
たおさん
返信ありがとうございます。 >/etc/authlib/authdaemonrc >のauthdaemonvar=/var/run/courier/authdaemon >にアクセスできないんじゃないですか? >これはdebianなので、環境よって、 >ファイルが違うからもしれませんが。 設定を確認すると、 authdaemonvar=/var/spool/authdaemon となっており、下のようにこのディレクトリ配下にpidファイルが作成 されてるんで、アクセスはできていそうです。 # ls -l /var/spool/authdaemon/ 合計 4 -rw-r--r-- 1 root root 5 12月 21 21:23 pid -rw------- 1 root root 0 12月 13 11:01 pid.lock srwxrwxrwx 1 root root 0 12月 21 21:23 socket 先程、authtestというコマンドがあるということを知って実行したら、 下のような結果になりました。 # /usr/sbin/authtest ateam Password Authentication succeeded. Authenticated: ateam (system username: ateam) Home Directory: /home/ateam Maildir: (none) Quota: (none) Encrypted Password: $1$ttpFEIpJ$Wal47XT/7or2VMkHP4j3o. Cleartext Password: Password Options: (none) 結果のMaildirがnoneになっているために「No such file or directory」 といエラーがでるのかなと思いました。 Maildirの設定に間違いがあるようなのですが、どこが間違っているのでしょうか? /usr/lib/courier-imap/etc/pop3dのMAILDIRPATHは下のようになっており、 MAILDIRPATH=Maildir エラーになったユーザateamのMaildirは以下の場所にあります。 # ls /home/ateam/Maildir/ cur new tmp |
|
投稿日時: 2006-12-22 13:53
>authentication error: No such file or directory
ぐぐってみたら、authdaemondがあがってないってのが多いですね。 でも、プロセスも動いてるし、 authtest?で、認証はいけてるみたいですね・・・。 pam認証がだめなのかな?? authmodulelistにauthpwdとかauthshadowとか追加してみたら どうでしょうか? 環境も教えてください。 OSと各デーモンなりのバージョンとか。 |
|
投稿日時: 2006-12-22 15:10
たおさん
返信ありがとうございます。 以下、返信です。 長くてすいません。 >authmodulelistにauthpwdとかauthshadowとか追加してみたら >どうでしょうか? アドバイス頂いたとおり、authmodulelistにauthpwdやauthshadowとか 追加してみました。 # cat /etc/authlib/authdaemonrc | grep authmodulelist= authmodulelist="authpam authpwd authshadow" この設定でauthdaemonを再起動し、起動ログを確認してみました。 # /etc/rc.d/init.d/courier-authlib restart Stopping Courier authentication services: authdaemond Starting Courier authentication services: authdaemond # less /var/log/poplog Dec 22 14:40:39 test198 authdaemond: stopping authdaemond children Dec 22 14:40:39 test198 authdaemond: modules="authpam authpwd authshadow", daemons=1 Dec 22 14:40:39 test198 authdaemond: Installing libauthpam Dec 22 14:40:39 test198 authdaemond: Installation complete: authpam Dec 22 14:40:39 test198 authdaemond: Installing libauthpwd Dec 22 14:40:39 test198 authdaemond: libauthpwd.so: cannot open shared object file: No such file or directory Dec 22 14:40:39 test198 authdaemond: Installing libauthshadow Dec 22 14:40:39 test198 authdaemond: libauthshadow.so: cannot open shared object file: No such file or directory ログを確認すると、authpwdとauthshadowの読み込みに失敗しているようです。 ですが、authtestコマンドで認証は成功しているのでauthpamの読み込みができて いれば問題ないのかなと思いましたが、やはりauthpwdが読み込めないのは 問題ですか? この状態でauthtestコマンドを実行しましたが、やはり状況はかわりませんでした。 # /usr/sbin/authtest ateam Password Authentication succeeded. Authenticated: ateam (system username: ateam) Home Directory: /home/ateam Maildir: (none) Quota: (none) Encrypted Password: $1$ttpFEIpJ$Wal47XT/7or2VMkHP4j3o. Cleartext Password: Password Options: (none) また、ログを確認しましたが認証は成功しているようですが、 maildirがnullになっています。 <authtestを実行したときのログ> Dec 22 15:00:31 host authdaemond: received auth request, service=login, authtype=login Dec 22 15:00:31 host authdaemond: authpam: trying this module Dec 22 15:00:31 host authdaemond: authpam: sysusername=ateam, sysuserid=<null>, sysgroupid=1000, homedir=/home/ateam, address=ateam, fullname=, m aildir=<null>, quota=<null>, options=<null> Dec 22 15:00:31 host authdaemond: pam_service=login, pam_username=ateam Dec 22 15:00:31 host authdaemond: dopam successful Dec 22 15:00:31 host authdaemond: Authenticated: sysusername=ateam, sysuserid=<null>, sysgroupid=1000, homedir=/home/ateam, address=ateam, fullna me=, maildir=<null>, quota=<null>, options=<null> authdaemonはなぜmaildirを認識できないのでしょうか? どこかの設定に抜けがあるのでしょうか? >OSと各デーモンなりのバージョンとか。 OSはcentOS4.4になります。 デーモンのバージョンというのはcourier-authlibのバージョンってことでしょうか? |
|
投稿日時: 2006-12-22 15:39
ちなみに、メーラからのアクセス時のエラーって何ですか?
|
|
投稿日時: 2006-12-22 16:06
>ちなみに、メーラからのアクセス時のエラーって何ですか?
メーラからのアクセス時のエラーは以下になります。 ■メーラーに表示されるエラー(Becky!) メールサーバから接続を拒否されました。 ユーザIDまたはパスワードが間違っていないかご確認下さい。 -ERR Temporary problem, please try again later ■サーバに出力されたログ Dec 22 15:59:31 host pop3d: Connection, ip=[::ffff:202.○.○.○] Dec 22 15:59:31 host pop3d: authdaemon: s_connect() failed: No such file or directory Dec 22 15:59:31 host pop3d: LOGIN FAILED, user=ateam, ip=[::ffff:○.○.○.○] Dec 22 15:59:31 host pop3d: authentication error: No such file or directory |
|
投稿日時: 2006-12-22 16:49
>maildirがnullになっています。
自分のはdebianで、 /usr/sbin/courierauthtest とうのがあり試してみました。 $ sudo /usr/sbin/courierauthtest user1 Password: Trying authdaemon... Authenticated: module authdaemon Home directory: /home/user1 UID/GID: 1002/1002 AUTHADDR=user1 AUTHFULLNAME=test user,1,1,1,1 OPTIONS=<none> maildir自体無いみたいです。 OS違うので参考にならないですけど。。 pop3d側の設定はどうですか? >/usr/lib/courier-imap/etc/pop3dのMAILDIRPATHは下のようになっており、 >MAILDIRPATH=Maildir とのことですが、起動スクリプトを追ってみるとか、 いかがでしょう? debianでは上書きされてました。 rpmは手作りですか? サイトを徘徊してたら、CentOSにはrpm無いみたいですね。 もし、手作りなら configureのオプションやpamの設定などの 見直しがいいかもしれません。 ご参考 http://www.kajukaju.net/centos/courierimap_1.php |