これ、今まで1台のサーバでWebとメールサーバを共用していて、メールだけGmailに移したりしたときに嵌りました。
ここの内容が助けになりました。
冷静によく考えれば、そりゃ飛ばないよなと思うのですが、焦っているときは、メールはMXレコードを参照するはずだし・・・と見当違いなことを考えてズブズブ嵌っていきます・・・
例えば、Webサーバがexample.comとし、いままで1台のサーバでメールも運用していましたが、
別サーバに移すことになりました。
ここで、Webサーバであるexample.comのサーバからテストとして、hoge@yahoo.co.jpに送るとします。
Webサーバは、@yahoo.co.jpなので、yahoo.co.jpのメールサーバへメールを転送し、無事届きます。
次に、Webサーバからhoge@example.comへ送信してみます。
Webサーバは、example.comのメールサーバへメールを転送・・・・しません。
なぜなら、example.comは自分自身なので、外部に送るまでもない。と判断し、内部でリレーされます。
当然、自分自身はメールサーバではないので、そんなユーザ知らんがな。と却下されます。
結果、外部にメールは飛ばないばかりか、UserUnknownでメール自体消滅します。
では参考サイトに従って、動作を確認してみましょう。
WebサーバのSendmailをテストモードで起動し、SendMailが自分宛と認識するホストを調べます。
# sendmail -btでは、対処法です。ようはSendmailが自分宛と判断しなければよいので、Webサーバ名をwww.example.comのように”www”のサブドメインをつけます。
SendMailが自分宛と認識するホストを調べます。 /quitで抜けれます。
> $=w
example.com <----------同じドメインが入っている
localhost.localdomain
localhost
> /quit
/etc/sysconfig/network
HOSTNAME=www.example.com <------wwwをつける
/etc/hosts
127.0.0.1 www.example.com localhost localhost.localdomain
設定をしたら、反映させるためにサーバを再起動します。
また、DNSの設定を変更し、www.example.comをexample.comへのCNAME設定をします。
> $=w
localhost.localdomain
localhost
[127.0.0.1]
www.example.com
0 件のコメント:
コメントを投稿