NuOnceで嵌った、メールが送れねい

| コメント(1)

先日インストしたNuOnceで見事にハマりました。

Sendmailで外から受信、SMTP経由で外へ送信は問題ないものの
CGIやPHPから送れないという症状。
具体的には

% cat | /usr/sbin/sendmail -t -n -oi メアド
test
detu
CTRL-D

/home/ユーザ/dead.letter... Saved message in /home/ユーザ/dead.letter

と死んでしまう。

CGIで

open(MAIL, "| /usr/sbin/sendmail -t -n -oi メアド");

などとしていると、上のエラーが

print "Content-Type: text/plain\n\n";

などより先に出力されてしまったりして、malformed headerエラー。
(CPANレス系のCGIですが・・・)

% tail /var/log/maillog

すると

Jan 4 23:17:12 www sendmail[1919]: l04EH9f8001919: to=メアド, ctladdr=ユーザ (501/501), delay=00:00:03, xdelay=00:00:00, mailer=relay, pri=30008, relay=[127.0.0.1] [127.0.0.1], dsn=5.6.0, stat=Data format error

"Data format error"じゃ、分からんじゃんけ!

で解決の切っ掛けは-vオプション。

% cat | /usr/sbin/sendmail -v -t -n -oi メアド
〜省略〜
553 5.3.0 <ユーザ@ホスト名>... No such user here
/home/ユーザ/dead.letter... Saved message in /home/ユーザ/dead.letter

どうやら、No such user hereとバウンスされている様。

% grep 'No such user here' /etc/mail/*

すると

/etc/mail/virtusertable:@ホスト名 error:nouser No such user here

とバウンス壁が用意されてる。
このルールはBQの「仮想サイト」に登録されると、作られる。

結論
BlueQuartz(NuOnce Installer)では
「システムのTCP/IPのホスト名とドメインネーム」で設定したFQDNは
「仮想ホスト」に登録しないこと!
(登録すると、その「仮想ホスト」に登録したユーザしかコマンドインターフェイスではメールが送れなくなります)

コメント(1)

助かりました。
嵌っていたところ助かりました。
BlueOnyxですが、ここらの仕様は一緒でした。
古い記事ですがお礼させていただきます。
ありがとうございます。

コメントする