- PR -

qmail + vpopmail + courier-imapでIMAP before SMTP

投稿者投稿内容
hide
会議室デビュー日: 2002/07/10
投稿数: 10
投稿日時: 2002-07-11 16:46
ちかやすさん
>pamとvchkpwを逆にしてみるとか・・・だめか(笑)・・
vchkpwモジュールを先にすると、pam認証を行ってくれません。
この場合、cdbファイルに変更はないものの、open-smtpなどの
ファイルを作成しようとしてます。

pam認証を先にすると両方OKです。
ただし、open-smtpその他のファイル作成などのことはしていません。

また、ソースをのぞいてみたところrelayに関するコードは
vchkpwモジュール関連のソースのみにしか記述されていませんでした。
つまり、pamが通った時点でvchkpwの処理はされていないように思われます。
結論としてはシェルアカウントを使っている限りvpopmail + imapでの
IMAP before SMTPは無理なのかと・・・
でも、一方でvchkpwモジュールはIPアドレスをちゃんととれてないんじゃない?
という疑問がのこるわけですが・・・

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

authuserdbって独自のアカウント管理ですよね?
それだとアカウント追加、パスワード変更ごとに
userdbを作り直しなので要件からはずれるため、まずいです。
ちかやす
常連さん
会議室デビュー日: 2002/06/13
投稿数: 46
投稿日時: 2002-07-11 17:53
>authuserdbって独自のアカウント管理ですよね?
>それだとアカウント追加、パスワード変更ごとに
>userdbを作り直しなので要件からはずれるため、まずいです

そうですよね・・私もそれがいやで渋ってたのですが仕方なく、という
感じでした。

あの・・・シェルアカウントでメールを使うのにvpopmailを使うのは
なぜなのでしょうか?・・・逆質問ですねこりゃ・・すみませんが。

vpopmailのメリットのひとつとしてシェルアカウントでメールを
使われない、というのがあると思うのですが・・・なぜ・・・
すいません気が向いたらでかまいませんので教えてください。
hide
会議室デビュー日: 2002/07/10
投稿数: 10
投稿日時: 2002-07-11 18:15
>あの・・・シェルアカウントでメールを使うのにvpopmailを使うのは
>なぜなのでしょうか?・・・逆質問ですねこりゃ・・すみませんが。

正確に言うとシェルアカウントとバーチャルアカウントを併用したいのです。
バーチャルアカウントはqmailadminを使いたいのでvpopmailを採用したしだいです。

あき
会議室デビュー日: 2002/07/10
投稿数: 8
投稿日時: 2002-07-11 23:39
こんばんは。

>そもそも論としてcourier-imapのauthvchkpwで
>*.cdb(tcpserverの制御ファイル)にIMAPの認証が通ったIPが
>追加されるのだろうかということです。
私の環境(vpopmail-5.3.7+courier-imap-1.5.1)ではうまくいってます。
open-smtpファイルは作られるのに、中身は空になっちゃうんですね。
う〜ん、それは分からないな〜。

取り敢えず、authpamとauthvchkpwを併用したいというなら、
vpopmailで--enable-passwd=yというオプションを付ければ良いのではないでしょうか。
これならauthvchkpwだけでシェルアカウントとバーチャルアカウントを認証できると思うのですが。

[ メッセージ編集済み 編集者: あき 編集日時 2002-07-12 00:11 ]
あき
会議室デビュー日: 2002/07/10
投稿数: 8
投稿日時: 2002-07-12 00:23
もしかしてvpopmail-5.2.1を使ってらっしゃいます?
Development Versionの5.3.7を使うと直るかもしれません。
ChangeLogを見るとvchkpw関連が幾つか修正されてますので。

[ メッセージ編集済み 編集者: あき 編集日時 2002-07-12 00:39 ]
ちかやす
常連さん
会議室デビュー日: 2002/06/13
投稿数: 46
投稿日時: 2002-07-12 09:46
お世話になります。

シェルアカウントと併用できるのですか?私はそれは途中で挫折しました。
とりあえずシェルアカウントはほとんどつかわないのでPOPで落とすように
してバーチャルドメインのユーザーをimap-beforeで使えるようにしました。

はじめの段階でimapがまったくいうことをきかず、メーラーがタイムアウト
でギブアップをくりかえしていました。マニュアルを読んだところ、vchkは
レガシーサポートだからuserdbをつかってくれ、とのことでしたので仕方なく
userdbに変えたのです。userdbへの変更はスクリプト実行&imap再起動という
やっかいな作業が発生しますが、とりあえずバーチャルドメインでimap-before
でまず稼動したかったので実施した次第です。

あき様
貴重な情報をありがとうございます。これでひょっとすると私も
あきらめてたのを実現できるかもしれません。
だんな
会議室デビュー日: 2002/07/12
投稿数: 11
投稿日時: 2002-07-12 10:52
こんにちわ。私も苦労したクチなので経験談(ちょっと長くてすみません)

open-smtpが更新されない件はそのopen-smtpのパーミッションとimapdの実行アカウントのパーミッションを確認してみてください。(imapdの起動スクリプトで指定していませんか?)

vpopmail(vchkpw)の認証につかうcdbはvpopmailおよび、courier-imapのコンパイル時に指定が可能だったと思います。(デフォルトではvpopmailのcdbは~/vpopmail/etc/以下に作成されるんじゃなかったかな。/etc/以下ではなかったような・・・)
ご存知とは思いますが、vpopmailのPOP before SMTPはこのopen-smtpにアクセス元のIPアドレスを追加して、それをcdbファイルに変換しています。courier-imap(Authvchkpw)もこの機構を利用しているようです。(ソースは見てないので憶測です)なので、open-smtpが作成されていないのであればXXX before SMTPは実装されていないと思います。(もともとのcdbファイルに書き込まれているIPアドレスはPOP,IMAPに関わらずrelayします。)

ちかやすさんも質問していますが、シェルアカウントの利用はなぜでしょうか。
「利用したいから」と回答されても・・・。まぁ言えない場合もあるでしょうがね。
ユーザアカウントに@ドメインを利用したくないとかであれば
vpopmailにデフォルトドメインを設定することにより解決できます。

TurboLinux7Server,vpopmail5.2,courier-imap1.4.5にて(シェルアカウントはデフォルトドメイン設定)実装しております。Authvchkpwのみの認証なのでシンプルです。


[ メッセージ編集済み 編集者: だんな 編集日時 2002-07-12 10:56 ]
hide
会議室デビュー日: 2002/07/10
投稿数: 10
投稿日時: 2002-07-15 12:11
#あきさん
>vpopmailで--enable-passwd=yというオプションを付ければ良いのではないでしょうか。
>これならauthvchkpwだけでシェルアカウントとバーチャルアカウントを認証できると思うので>すが。
--enable-passwd=yのコンパイルオプションは指定してますが、これをつけても
authpamが前にないとシェルアカウントでの認証はされないようです。

>Development Versionの5.3.7を使うと直るかもしれません。
早速変えてみました。ところが、今度はIMAPでのバーチャルアカウントの認証後に
空のopen-smtpさえも作られなくなってしまいました。

#ちかやすさん
>シェルアカウントと併用できるのですか?私はそれは途中で挫折しました。
認証だけだったら当方でも問題なくできてます。
要はcourier-imapのetc/authdaemonrcのなかでauthpamをauthvchkpwより先に指定すれば
問題ないみたいです。

#だんなさん
>open-smtpが更新されない件はそのopen-smtpのパーミッションとimapdの実行アカウントの
>パーミッションを確認してみてください。(imapdの起動スクリプトで指定していませんか?)
デフォルトのlibexec/imaprd.rc startをrootで起動しています。
一応中を見たらユーザーの指定はしていないみたいです。

>open-smtpが作成されていないのであればXXX before SMTPは実装されていないと思います。
>(もともとのcdbファイルに書き込まれているIPアドレスはPOP,IMAPに関わらずrelayします。)
一応、当方の現象をまとめなおすと
vpopmain (5.2.1)
・Shell account + POP -> OK
・Virtual account + POP -> OK
・Shell account + IMAP -> NG (authvchkpwで認証できない。authpamだと認証できるがcdbにレコードが追加されない
・Virtual acoount + IMAP -> NG (認証はOK。open-smtpが無い場合は空のopen-smtpが作られる。cdbへのレコードの追加はされない)
vpopmain (5.3.7)
・Virtual acoount + IMAP -> NG (認証はOK。open-smtpさえも作られない。)

<<configure option(関連部分だけ)>>
vpopmail
--prefix=/var/vpopmail
--enable-roaming-users=y
--enable-default-domain=(ServerのFQDN)
--enable-passwd=y
--enable-qmail-ext=y
courier-imap
なし(configure実行前に~vpopmail/libと~vpopmail/lib/libvpopmail.aのパーミッションを変更)

先方を説き伏せて全部バーチャルアカウントに移行したくなってきました・・・

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