- PR -

qmail + vpopmail + courier-imapでIMAP before SMTP

投稿者投稿内容
hide
会議室デビュー日: 2002/07/10
投稿数: 10
投稿日時: 2002-07-10 16:42
こんにちは。

本来のバーチャルドメインではなくPOP before SMTPを主な目的にして
qmail + vpopmailを使っています。
courier-imapを使ってIMAP before SMTPを使いたいのですが、動作しません。

バーチャルドメインを使わずにシェルアカウントで運用しているので
authdaemonrcをauthmodulelist="authpam authcram authuserdb authvchkpw"に
変更しましたが、これだと最初のauthpamで認証が通るとauthvchkpwでの
認証は行われないのでしょうか?
というか、そもそもauthvchkpwはcdbのアップデートは行ってくれないのでしょうか?
その場合代替案は何かあるのでしょうか?

わかりにくい質問で申し訳ありませんがよろしくお願いします。
何か必要な情報があるようだったら、指摘していただければ
公開します。
あき
会議室デビュー日: 2002/07/10
投稿数: 8
投稿日時: 2002-07-10 23:31
どこかの英語ページで読んだのですが、
courier-imapにはバグがあり、
vpopmailで--enable-roaming-users=yを指定したときに付く
"HAVE_OPEN_SMTP_RELAY"というフラグを認識しないみたいです。
ですので、courier-imapのconfigure前に
$export CFLAGS="-DHAVE_OPEN_SMTP_RELAY"
としてコンパイルすればOKです。
私もこれでずいぶん悩みました。
ですが、私はauthvchkpwだけで認証を行っているので、
authpamと同時に認証されるかは分かりません。



[ メッセージ編集済み 編集者: あき 編集日時 2002-07-11 00:20 ]
ちかやす
常連さん
会議室デビュー日: 2002/06/13
投稿数: 46
投稿日時: 2002-07-11 08:04
こんにちは。

私が以前に書いた内容と非常によく似てましたので
参考になればと思い書かせていただきます。

authvchkpwはレガシーサポート・・という風にマニュアルには
書いてあります。で、どうするかというとuserdb方式に変更
しなさい、とのことでした。

バーチャルドメインで作成されているのでしたら各ドメイン単位
でユーザーIDおよびパスワードが作成されているかと思いますが
それをuserdbに移行するスクリプトがあります。

vchkpw2userdbがそうなのですが・・・もしこれでokでしたら
お試しください。・・・何それ・・・どうするの?ということ
でしたら私のわかる範囲で(というか私が実際にしてみた)内容を
お答えしますので・・・がんばってください、その状況のつらさは
私もよくわかります。
hide
会議室デビュー日: 2002/07/10
投稿数: 10
投稿日時: 2002-07-11 11:43
あきさん
>vpopmailで--enable-roaming-users=yを指定したときに付く
>"HAVE_OPEN_SMTP_RELAY"というフラグを認識しないみたいです。
>ですので、courier-imapのconfigure前に
>$export CFLAGS="-DHAVE_OPEN_SMTP_RELAY"
>としてコンパイルすればOKです。

vpopmailのFAQに書いてある注釈ですね。今courier-imapの1.5.1で
試したところ、環境変数の追加を手でしなくても認識されたみたいです。

>ですが、私はauthvchkpwだけで認証を行っているので、
>authpamと同時に認証されるかは分かりません。

バーチャルアカウントを作ってauthvchkpwで認証させてみたのですが
RELAYを管理するcdbへの追加は行われていないみたいです。
よって、あいかわらずIMAP before SMTPは実現していません。

ちかやすさん
>authvchkpwはレガシーサポート・・という風にマニュアルには
>書いてあります。で、どうするかというとuserdb方式に変更
>しなさい、とのことでした。

これはアカウントの管理の話ですよね?
ちなみにauthvchpwを試しに使ったら、バーチャルアカウントによる
認証自体はうまくいったみたいです。

>お答えしますので・・・がんばってください、その状況のつらさは
>私もよくわかります。

IMAPは普及がいまいち(ってことないとは思うんだけど・・・)なので
日本語の情報が少なくて閉口しています。
英語がもうちょっとすんなり読めれば楽なのでしょうが・・・(^^;
hide
会議室デビュー日: 2002/07/10
投稿数: 10
投稿日時: 2002-07-11 11:47
上記の
>バーチャルアカウントを作ってauthvchkpwで認証させてみたのですが

ですが、もちろん念のためexport CFLAGS="-DHAVE_OPEN_SMTP_RELAY"
を行っての環境です。
ちかやす
常連さん
会議室デビュー日: 2002/06/13
投稿数: 46
投稿日時: 2002-07-11 12:48
ご返答ありがとうございます。

今できないのは認証ではなくて送信の方ですね・・・なんだろうか・・・

smtpの実行は実戦qmail・・をそのままお借りしてます
tcpserver -H -R -l *.*.*.* -v -x /etc/tcp.smtp.cdb

とりあえずpop-before&imap-beforeともできてます・・・多分・・・

私もいろいろ探しましたが・・結局imapのマニュアルを読んで
何とかなった次第です・・・私ではあまりお力になれそうも
ないですが・・がんばってください。
hide
会議室デビュー日: 2002/07/10
投稿数: 10
投稿日時: 2002-07-11 12:59
ちかやすさん
>smtpの実行は実戦qmail・・をそのままお借りしてます
>tcpserver -H -R -l *.*.*.* -v -x /etc/tcp.smtp.cdb
>とりあえずpop-before&imap-beforeともできてます・・・多分・・・

SMTPは上記の設定で問題ないかと思います。
実際こちらでもqmail + vpopmailでPOP before SMTPは実現しています。
あれから色々考えたところ、そもそも論として
courier-imapのauthvchkpwで
*.cdb(tcpserverの制御ファイル)にIMAPの認証が通ったIPが
追加されるのだろうかということです。

で、実際に試したところ、authvchkpwでIMAPの認証が通った時点で
~vpopmail/etc/以下に
open-smtp
open-smtp.lock
open-smtp.tmp.*
が追加されることを確認しました。
しかし、open-smtpの中には認証が通ったクライアントのIPが
追加されるはずなのにただの空ファイルでした。
よって、cdbファイルは作成されていませんでした。

また、authpamが通った時点でRELAYに関することは
一切してくれていないみたいです。

う〜む困った。
ちかやす
常連さん
会議室デビュー日: 2002/06/13
投稿数: 46
投稿日時: 2002-07-11 15:30
お世話になります。

pamとvchkpwを逆にしてみるとか・・・だめか(笑)・・
ひとつわからなかったことが・・・pamは使ってらっしゃる
のでしょうか?私はvpopmailと言われているのでてっきり
バーチャルドメインでユーザー管理されてるとばかり・・

あと・・authuserdbってつかわれてるのでしょうか?
もしよろしければそれを入れた状態でcdbファイルをチェック
されるのもテかと・・関係ないかなぁ〜すみません。

スキルアップ/キャリアアップ(JOB@IT)