sendmail の設定でバーチャルホストを利用するには「/etc/mail/local-host-names に受信するドメインを登録しましょう。」ってのがほとんどなんだよねぇ・・。けど、まぁ、楽なのでええんですけど、送信時に問題があることが判明。
例えば、以下のファイルがあったとして、これを cat FILE | mail takachan@running-dog.net したとすると Reply-To: に指定したメールアドレスのドメイン名が sendmail.cf 内の DM に掲載されているドメイン名で上書きされてしまう。という、どうしようもない問題に遭遇するX-(。バーチャルドメインでのメールの送信時の問題ですね。バーチャルドメインのメールが受信できることだけで満足してたらいかんぜぉ。って感じ。
|
ドメイン名を上書きしてしまうのは Reply-To: ヘッダだけなので、あまり気にならない人とか気づかない人もいるのかな?
しゃーないので local-host-names を使わないバーチャルドメインの設定をするしかない。今回は VIRTUSER_DOMAIN_FILE 項を使って mc ファイルを書き直してみたい。
/etc/mail/freebsd.mc があるんだけど、この中の一部を以下のように修正。class{w} のバーチャルホストの設定を利用しないようにして class{VirtHost} を利用する。
|
この設定だけだと、sendmail.cf の DM が無くなるので、以下の行を更に追加。
|
以上、できたら make してでき上がり。sendmail.cf の Dj は自分の好みで編集するとして、ローカルホスト配信がもしかしたらエラーになるかもしれないので submit.cf の Dj も設定して上げれば問題はなくなることでしょう。
/etc/mail/virtdomains は、/etc/mail/local-host-names と同じ記述方法で特に問題はないでしょう。
あ、書いてないけど、/etc/mail/virtusertable については触れてませんけど、他のドキュメントとか読んでくださいね;-)。