- PR -

Qmail + Vpopmail が正しく動作しない

投稿者投稿内容
虎エモン
常連さん
会議室デビュー日: 2005/01/01
投稿数: 33
投稿日時: 2005-10-02 23:16
・・・と思ったら、メールが送信できませんでした・・(涙


クライアントから送信しようとすると、

不明なエラーが発生しました。 アカウント : 'my.domain.com', サーバー : 'mail.mydomain.com', プロトコル : SMTP, サーバーの応答 : '421 Cannot connect to SMTP server 221.xxx.xxx.xxx (221.xxx.xxx.xxx:25), connect error 10061', ポート : 25, セキュリティ (SSL): なし, サーバー エラー : 421, エラー番号 : 0x800CCC67

のエラーが返ってきてしまいました。。

一応起動状態をもう一度確認してみると

bash-3.00# ps -ef|grep qmail
qmails 488 1 0 22:43:11 ? 0:00 qmail-send
qmaill 489 488 0 22:43:11 ? 0:00 splogger qmail
root 490 488 0 22:43:11 ? 0:00 qmail-lspawn ./Maildir
qmailr 491 488 0 22:43:11 ? 0:00 qmail-rspawn
qmailq 492 488 0 22:43:11 ? 0:00 qmail-clean
root 497 1 0 22:43:13 ? 0:00 /var/qmail/bin/splogger pop3d 3
root 498 497 0 22:43:13 ? 0:00 tcpserver -H -R -l galaxy -v 0 pop3 /var/qmail/bi
n/qmail-popup galaxy /hom <....切れてる


うーん・・tcpserverは立ち上がってるみたいですね。。
しかしrelay-ctrlの名前がどこにも・・

bash-3.00# ps -ef|grep relay
bash-3.00# ps -ef|grep relay-ctrl
bash-3.00#

やはりどこかうまくいってないみたいです。

もう一度見直してみます;



水都
大ベテラン
会議室デビュー日: 2004/07/22
投稿数: 111
投稿日時: 2005-10-02 23:41
引用:
qmails 488 1 0 22:43:11 ? 0:00 qmail-send
qmaill 489 488 0 22:43:11 ? 0:00 splogger qmail
root 490 488 0 22:43:11 ? 0:00 qmail-lspawn ./Maildir
qmailr 491 488 0 22:43:11 ? 0:00 qmail-rspawn
qmailq 492 488 0 22:43:11 ? 0:00 qmail-clean
root 497 1 0 22:43:13 ? 0:00 /var/qmail/bin/splogger pop3d 3
root 498 497 0 22:43:13 ? 0:00 tcpserver -H -R -l galaxy -v 0 pop3 /var/qmail/bi
n/qmail-popup galaxy /hom <....切れてる


smtp側のtcpserverが立ち上がっていないのではありませんか?
虎エモン
常連さん
会議室デビュー日: 2005/01/01
投稿数: 33
投稿日時: 2005-10-03 03:01
水都さま

レスありがとうございます。

tcpserverを確認してみましたが、いまいち確信がもてないまま
以下の設定をしてみました。


/etc/init.d/qmail
--------------
#FOR SMTP
tcpserver -H -R -l $HOSTNAME -v \
-x /home/vpopmail/etc/tcp.smtp.cdb -u $QMAILDUID -g $QMAILDGID 0 smtp \
/var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger smtpd 3 &
--------------

vpopmailのcdbを参照する項目を足してみました。
(勘違いだったのかもしれないのですが、当方の認識では
relay-ctrlを使用する上では、cdbの参照はもう必要ないと思ってたので
前回の起動スクリプトからは除外していました)

すると



# ps -ef|grep qmail
root 655 638 0 02:53:34 pts/2 0:00 grep qmail
root 493 1 0 02:47:00 ? 0:00 /var/qmail/bin/splogger smtpd 3
qmails 488 1 0 02:47:00 ? 0:00 qmail-send
qmaill 489 488 0 02:47:00 ? 0:00 splogger qmail
root 490 488 0 02:47:00 ? 0:00 qmail-lspawn ./Maildir
qmailr 491 488 0 02:47:00 ? 0:00 qmail-rspawn
qmailq 492 488 0 02:47:00 ? 0:00 qmail-clean
qmaild 494 493 0 02:47:00 ? 0:00 tcpserver -H -R -l galaxy -v -x /home/vpop
mail/etc/tcp.smtp.cdb -u 252 -
root 495 1 0 02:47:00 ? 0:00 /var/qmail/bin/splogger pop3d 3
root 496 495 0 02:47:00 ? 0:00 tcpserver -H -R -l galaxy -v 0 pop3 /var/qmail/bi
n/qmail-popup galaxy /hom


スクリプトに書き足したとおり、正常に起動しました。




また、クライアント側にて、メールの送信を確認すると。

@POPによる受信を行う前に、hotmail等に送信をおこなう →送信失敗
APOPにより受信動作を行い、一度認証を完了させ、再度hotmailへメールを送信する
→送信成功

とPOPbeforeSMTPの特性を生かした動作にて、正常にメールを配信することができました。
しかし、私の翻訳がまずかったのか

以前の
--------
relay-ctrlのNEWSより
Changes in version 3.0

- Removed all CDB management code in favour of doing the check in a new
program, relay-ctrl-check, which is a front-end to qmail-smtpd.
--------

の内容で、Remove all CDB management code と記されてる部分がある事から
どうして、tcpserverにてcdbを使用するスクリプトを入れないと
動作をしてくれなかったのか、謎が深まるばかりです。

とりあえず、現状は正常に動作をおこなってくれてるので
よしとしましょう(・・・していいのだろうか・・^^;)


kalze
ぬし
会議室デビュー日: 2003/10/23
投稿数: 406
お住まい・勤務地: 東京・東京
投稿日時: 2005-10-03 08:20
引用:

虎エモンさんの書き込み (2005-10-03 03:01) より:
vpopmailのcdbを参照する項目を足してみました。
(勘違いだったのかもしれないのですが、当方の認識では
relay-ctrlを使用する上では、cdbの参照はもう必要ないと思ってたので
前回の起動スクリプトからは除外していました)



えーっと、今はrelay-ctrlでの制御じゃなくてvpopmailでの制御になってません?これ
図らずしものようですが、vpopmailでの制御でできているようなので、それはそれで虎エモンさんの希望通りなのかな・・・
cdbに関する記述がなくていいのは正しいとおもいます。

んーっと、とりあえずrelay-ctrlのときの以下の起動スクリプトは間違い多数なので、
起動しなくても正解かと

引用:

/usr/local/bin/envdir /etc/relay-ctrl relay-ctrl-chdir /etc/relay-ctrl
tcpserver -H -R -l $HOSTNAME -v 0 pop3 \
/var/qmail/bin/qmail-popup $HOSTNAME \
/home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d ./Maildir/ 2>&1 | /var/q mail/bin/splogger pop3d 3 &



1行目の終わりに\(バックスラッシュ)がないのでつながっていないとか。

引用:

/usr/local/bin/envdir /etc/relay-ctrl \
/usr/local/bin/relay-ctrl-chdir \
/usr/local/bin/tcpserver -H -R -l 0 110 \
/var/qmail/bin/qmail-popup $HOSTNAME \
/usr/local/bin/checkvpw \
/usr/local/bin/relay-ctrl-allow \
/var/qmail/bin/qmail-pop3d Maildir 2>&1 | /var/qmail/bin/splogger pop3d 3 &



えーっと、あとSMTPの起動スクリプトもちょっと気になったのですが、
インストールパスをデフォルトから変えてあるなら問題ないのですけど、
引用:

/etc/relay-ctrl-chdir


この部分は
引用:

/usr/local/bin/relay-ctrl-chdir


でなくてよいのかな?

ちょっとぱぱーっとみた感じだけなので間違ってる部分もあるかもしれませんが。
とりあえず起動スクリプトをもう一度確認されてみては?ってことで

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