- PR -

qmail + vpopmail + courier-imapでIMAP before SMTP

投稿者投稿内容
ちかやす
常連さん
会議室デビュー日: 2002/06/13
投稿数: 46
投稿日時: 2002-07-15 13:55
お世話になります。

・・・すごくフクザツになってきましたね・・・ついていけない。
そうか、でもおはなしをうかがっているとuserdbで妥協しなくても
vchkでできるような気がしてきました。

今日気づいたのですが・・ひょっとするとimap-beforeはできてない
ようなきがしてきたのです。というのもrelayの設定ファイルをみて
いると、今使ってるネットワークアドレスがrelay対象になっているので。

外からメールを出してみてはじかれたのではじめて気づいた次第です・・
なんともなさけないお話ですが・・私ももう一度挑戦してみます。

open-smtpは/home/vpopmail/etcの下にありました。確かに今リレー
許可してるアドレスがはいってます・・なるほどなぁ〜

勉強になります、ありがとうございます。
だんな
会議室デビュー日: 2002/07/12
投稿数: 11
投稿日時: 2002-07-15 13:57
こんにちわ。
検証していないので悪しからず・・・。

1.大前提ですが、courier-imapのAuthpamで認証された場合、open-smtpへの変更はなされないのではないでしょうか。Authvchkpwのみopen-smtpへの変更が行われる。だとするとシェルアカウントでのIMAP bfore SMTPは不可能となりますよね。

2.vpopmailのconfigureオプションにprefixがありますが、有効でしょうか。
・/var/vpopmail/にインストールされてますでしょうか。その際、ユーザvpopmailのhomeディレクトリは/var/vpopmailになっていますでしょうか。
・特に指定されていないようですので、確認ですが、認証用.cdbファイルは/var/vpopmail/etc/xxxxx.cdbを利用していますでしょうか。(open-smtpは/var/vpopmail/etc/にできていますよね。)
・FAQか何かでこのcdbファイルを明確にconfigureで指定しないと間違う場合があると記述されていた記憶があります。
・また、バージョンによるようですが、vpopmailのデフォルトでの.cdb作成するディレクトリは/home/vpopmail(prefix?)/etc/以下のようです。

3.認証用.cdbはrootがオーナーでしょうか。

vpopmailのvchkpwはシェルとバーチャルと両方認証するオプション指定ができるけど、
courier-imapのAuthvchkpwはvpopmailのconfigureオプションに影響されないんじゃないかなぁ。

繰り返しますが、検証していないので悪しからず・・・。
hide
会議室デビュー日: 2002/07/10
投稿数: 10
投稿日時: 2002-07-15 16:32
>だんなさん
>1.大前提ですが、courier-imapのAuthpamで認証された場合、open-smtpへの変更はなされな
>いのではないでしょうか。Authvchkpwのみopen-smtpへの変更が行われる。だとするとシェル
>アカウントでのIMAP bfore SMTPは不可能となりますよね。
確かに大前提ですね。
こちらで色々試した結果、authpamを先に記述した時点でその後の認証モジュールでは
認証を行わないようです。
あとはvchkpwでシェルアカウントの認証が行われるのであれば
authpamをはずしてauthvchkpwで両方の種類のアカウントを認証させるなどの
代替手段がないかということです。

>2.vpopmailのconfigureオプションにprefixがありますが、有効でしょうか。
/var/vpopmailに指定してvpopmailユーザーのホームディレクトリとしています。
POPで試す限り、/var/vpopmail/etc以下にcdbなどのリレー情報は保存されています。

>3.認証用.cdbはrootがオーナーでしょうか。
はい。open-smtpなども全てrootがオーナーです。

>vpopmailのvchkpwはシェルとバーチャルと両方認証するオプション指定ができるけど、
>courier-imapのAuthvchkpwはvpopmailのconfigureオプションに影響されないんじゃないか
>なぁ。
ドキュメントをひっくり返したのですが、authvchpwでシェルアカウントを認証させる
オプションが見つかりませんでした。

ちなみにcourier-imapのconfigureオプションは何も指定していません。
指定しなくても、自動的に判別するみたいなので・・・
実際、/var/vpopmail/libのパーミッションのチェックなどもしているみたいです。
ただし、以前あきさんが指摘した通りcourier-imapのconfigureを実行する前に
export CFLAGS="-DHAVE_OPEN_SMTP_RELAY"を実行しないとopen-smtpでさえ
作成されないようです。
だんな
会議室デビュー日: 2002/07/12
投稿数: 11
投稿日時: 2002-07-16 16:44
hideさん

ソース読めますか?私は読めないのであてずっぽですけど
先にも書きましたが、vpopmailのPOP before SMTPって、vchkpwの動作になると
思いますが
1.POPが成功したらopen-smtpを作成
2.open-smtpとSMTPリレー許可用.cdb合わせて新たにSMTPリレー許可用.cdbを作成する。
3.SMTPリレー許可用.cdbにPOPしたユーザのIPアドレスが付加されているので
 SMTPが利用できる
(4.定期的にcron等でopen-smtpをクリアし、もともと許可のあるSMTPリレー許可IPと合わせて
SMTPリレー許可用.cdbを作成する)
なので、vchkpwでPOP認証をしている場合、POP before SMTPが実装できる。
POPの場合、open-smtpができていますでしょ。(シェルアカウントの場合もできてるかな。私は全部バーチャルにしているので)

courier-imapのAuthvchkpwって、vchkpwそのものを呼び出しているんじゃなくて
独自でAPIを使って認証しているため、バーチャルアカウントについてはvchkpwと同じく
open-smtpを作成してIMAP before SMTPがvchkpwと同じしくみで実装される。
その機能にはシェルアカウントの認証機能は想定していない。(仕様と思う)
AuthPAMはvpopmailとは無関係にPAM認証しているためopen-smtpファイルの作成とかcdbの作成とかは行わない。

ちょっと雑談ですが、どこかのサイトに認証用デーモン(authdaemond)がAuthvchkpwを正しく呼び出せない場合があるとかで私は--without-authdaemondでconfigureしてます。
マニュアルにあったと思いますが、courier-imapの認証は設定ファイルimapdのAUTHMODULESに記載されている順番で認証し、認証が通ったら以降の認証システムは利用しないとのことです。(というかAuthvchkpwしか利用してないので未検証。)

なので、Authvckpwをvchkpwの挙動をするように書き直すしかないかもです。
お力になれなくてすみません。
ちかやす
常連さん
会議室デビュー日: 2002/06/13
投稿数: 46
投稿日時: 2002-07-16 19:11
お世話になります。

imapのインストールで--without-authdaemondでconfigureする・・ということは
authdaemondは動かないんですよね・・あたりまえか・・

この場合認証のデーモンはどういうかたちになるのでしょうか?
ひょっとしてimapでvpopmailを使うのってこのconfig設定だけ
でできてしまうのでしょうか?・・・私にとってはかなり核心
に近づいているような気が・・・hideさんすみません・・・

またお時間があれば教えてください・・会社ではサブサーバが
スタンバイ完了状態です・・・

だんな
会議室デビュー日: 2002/07/12
投稿数: 11
投稿日時: 2002-07-16 20:06
ちかやすさん

記述間違えました。--without-authdaemonでした。こうするとauthdaemondはコンパイルされませんです。認証モジュールは各設定ファイルで指定してます。(例えば、imapであれば[prefix]/etc/imap内でAUTHMODULES="authvchkpw authpam")
起動スクリプトはデフォルトのままいけます。(authdaemondの有無を確認してくれているようです)
そうそう、CFLAGS="-DHAVE_OPEN_SMTP_RELAY"を忘れずにね。
ちかやす
常連さん
会議室デビュー日: 2002/06/13
投稿数: 46
投稿日時: 2002-07-17 12:27
だんな様

ありがとうございます。
CFLAGS="-DHAVE_OPEN_SMTP_RELAY"

はコンパイルの段階でいいんですよね?あともしよろしければ
おしえていただきたいのですが、この環境でIMP日本語版を
併用したいのですが・・・どうなります?

とりあえず今再度インストールをスタートしたところです
そこでまたいろいろ出てきたたら書かせていただきます。

ありがとうございます。
だんな
会議室デビュー日: 2002/07/12
投稿数: 11
投稿日時: 2002-07-18 09:50
ちかやすさん

あいにくIMPは利用していないのでわかりませんが、vpopmailのFAQに記載があります。
ご存知とは思いますがCFLAGS="-DHAVE_OPEN_SMTP_RELAY" は
bashの場合、
export CFLAGS="-DHAVE_OPEN_SMTP_RELAY"
です。作業前に(configure前に)やっておいてください。(Makefileとか見てないけど
最初にやっておけば悩みません)

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