sendmailで特定ドメインに送信できない

このQ&Aのポイント
  • さくらのクラウドでCentOS5を利用しています。最近ストレージの障害が発生し、サーバーの再起動が必要になりました。しかし、その後、sendmailで特定ドメイン*@hoge.comにメールが送信できなくなり、rootにメールが送信されるようになってしまいました。
  • hoge.comは自分の運営するWebサイトのドメインで、メールはGoogleAppsのGMailを使用しています。sendmailの設定は初期状態のままで、これまでは問題なく運用できていました。MXレコードはnslookupでもgoogleに向いていることを確認しました。
  • テストメールを送信すると一件送信できたかのように表示されますが、maillogを確認すると最後にto=rootになってしまっています。原因は分かりませんが、おそらくサーバーの再起動時に設定が切り替わったためだと思われます。設定すべき箇所を教えていただければと思います。
回答を見る
  • ベストアンサー

sendmailで特定ドメインに送信できない

さくらのクラウドでCentOS5を利用しています。 先日ストレージの障害が発生し、サーバーの再起動が発生したのですが、 その後、sendmailで特定ドメイン*@hoge.comにメールが送信できなくなり、 rootにメールが送信されるようになってしまいました。 hoge.comは自分の運営するWebサイト(同じサーバー)のドメイン(Aレコード)で、 メール(MXレコード)はGoogleAppsのGMailを使用しています。 sendmailの設定は初期状態のままです。 これまでは問題なく運用できていました。 MXレコードはnslookupでもgoogleに向いていることを確認しました。 Yahoo!などの別のアドレスや、異なるドメインのGoogleAppsへは問題なくsendmailできますし、 別のサーバーからは*@hoge.comにsendmail可能です。 $ sendmail -v hoge@hoge.com < /dev/null でテストメールをすると、一件問題なく送信したかのように処理が表示されますが、 maillogを確認すると、 Jan 8 22:42:47 *** sendmail[24564]: ***24564: from=root, size=0, class=0, nrcpts=1, msgid=<201201081342.***24564@hoge.com>, relay=root@localhost Jan 8 22:42:47 *** sendmail[24567]: ***24567: from=<root@hoge.com>, size=261, class=0, nrcpts=1, msgid=<201201081342.***24564@hoge.com>, proto=ESMTP, daemon=MTA, relay=hoge.com [127.0.0.1] Jan 8 22:42:47 *** sendmail[24564]: ***24564: to=hoge@hoge.com, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30000, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (***24567 Message accepted for delivery) Jan 8 22:42:47 *** sendmail[24568]: ***24567: to=root, ctladdr=<root@hoge.com> (0/0), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30455, dsn=2.0.0, stat=Sent のようになっており、なぜか最後にto=rootになってしまっています。 おそらくサーバーの再起動時に、なんだかの設定が切り替わったせいだと思いますが、 原因がわからず、どこを設定すれば良いのか困っています。 気になる点 ・逆引きホストを、hoge.comにしています。 ・仮想サーバーのホストネームをhoge.comにしています。 ご教授頂ければ幸いです。よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • pakuti
  • ベストアンサー率50% (317/631)
回答No.1

sendmailが。hoge.comをローカルとして認識しています。 恐らくシステムのインストール設定時(sendmail起動時)に、 ホスト名の指定をしていなかったが、後から変更していませんか? sendmailはデフォルトで、hostsファイルの記載を元にローカルとして認識するFQDNを決定します。 hostsファイルで、hoge.comが自分自身と記述しているのではないかと推測されます。 hostsファイルが変更可能であれば、hostsファイルで自分自身のhosts名を変更 不可であれば、sendmailが認識している自分自身のローカルのFQDNを変更しましょう sendmail.mcであれば、MY_NAME MY_DOMAIN sendmail.cfであれば、Dw Dm を変更する必要があります。 (sendmail.cfの手動での編集は推奨されていません) 余談 sendmail -bt で、宛先のドメインがどう処理されるかを確認可能です。 > が表示されて入力待ちになるので /parse test@hoge.com とします。 mailer local, user test と表示された場合には、上記のようにローカルとして認識されています。 終了するには、Ctrlとdを同時に押します。

ink_step_ink
質問者

お礼

大変ご丁寧にありがとうございます! まさにご指摘の通り、hoge.comをローカルと認識しておりました。 ホストネームを変更し、sendmailを再起動したところ、すっかり解決しました。 分かりやすいご説明、本当にありがとうございました!

関連するQ&A

  • SunOs 5.8 で sendmailが送信できません。

    サーバ管理では初心者ですので、情報提供等不足していると思いますが 表題の件について、困っています。 syslogで以下エラーが出ているのですが、まったく検討がつきません。 Dec 10 13:34:59 ultra5 sendmail[5453]: [ID 801593 ○○○.○○○] mBA4Ywc05451: to=○○○@○○○.co.jp, ctladdr=root (0/1), delay=00:00:01, xdelay=00:00:00, mailer=relay, pri=150542, relay=kinkyumail.ic.○○○.co.jp. [210.143.94.94], dsn=5.1.3, stat=User unknown なにか手がかりになる情報があればご教授していただけないでしょうか?

  • Sendmailで外部へ送信できない。

    こんにちは、初めて質問させていただきます。 非固定IPアドレス環境でfedora10搭載のsendmailを使って メールサーバー構築中ですが、外部への送信だけができません。 OP25対策でISP(so-net)メールサーバを中継させて送信できるように いろんな設定紹介サイトを参考にしながらOP25対策設定を 進めているのですが、なかなか上手く行きません。 /var/log/maillogを見ると以下のログが出ています。 server sendmail[2937]: n6M4YMrV002937: from=test, size=45, class=0, nrcpts=1, msgid=<200907220434.n6M4YMrV002937@server.test.test.jp>, relay=root@localhost server sendmail[2942]: n6M4ZHIL002942: from=<test@server.test.test.jp>, size=341, class=0, nrcpts=1, msgid=<200907220434.n6M4YMrV002937@server.test.test.jp>, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1] server sendmail[2937]: n6M4YMrV002937: to=test@ab0.so-net.ne.jp, ctladdr=test (500/500), delay=00:00:55, xdelay=00:00:00, mailer=relay, pri=30045, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (n6M4ZHIL002942 Message accepted for delivery) server sendmail[2944]: STARTTLS=client, relay=mail.so-net.ne.jp., version=TLSv1/SSLv3, verify=FAIL, cipher=DHE-RSA-AES256-SHA, bits=256/256 server sendmail[2944]: n6M4ZHIL002942: to=<test@ab0.so-net.ne.jp>, ctladdr=<test@server.test.test.jp> (500/500), delay=00:00:00, xdelay=00:00:00, mailer=esmtp, pri=120341, relay=mail.so-net.ne.jp. 送信したメールは(reason: 530 5.7.0 Authentication required) との内容のメールが返ってきます。 設定内容の不備や不足している機能もあると思います。 全くの素人で、八方塞の状態で悩んでいます。 どなたかお知恵をお貸しください。 よろしくお願いします。

  • Nagiosで通知メールが送れない

    Nagiosで通知メールが送れない Fedora にNagiosをインストールして、監視サーバを構築しようとしています。 ブラウザでのアクセスができるようになりましたので、httpdあたりの設定まではうまくいったようです。 ただ、アラームメールがどうしても送れずに困っています。 maillogでは Jun 19 22:07:13 fedora sendmail[17733]: o5JBu57M017024: to=<xx@xxxxxx.co.jp>, ctladdr=<nagios@xxxx.xxxxxx.co.jp> (501/501), delay=01:11:08, xdelay=00:00:00, mailer=esmtp, pri=390743, relay=xxxxxx.co.jp. [192.168.1.2], dsn=4.0.0, stat=Deferred: Connection refused by xxxxxx.co.jp. というログが残っています。 sendmailの設定が必要なのかと思いますが、ネット上の情報等を参考にして、sendmailを再インストールしたり、設定を一からやり直したりしていますが、どうしてもだめです。 ログから判断すると、relayのところで、192.168.1.2となっているのが、気になります。 mailコマンドで送った場合のログは以下になります。 Jun 19 23:24:36 fedora sendmail[22008]: o5JEOagR022008: from=root, size=212, class=0, nrcpts=1, msgid=<201006191424.o5JEOagR022008@fedora.xxxxxx.co.jp>, relay=root@localhost Jun 19 23:24:36 fedora sendmail[22008]: o5JEOagR022008: to=xxxx@xxxxxx.co.jp, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30212, relay=[127.0.0.1] [127.0.0.1], dsn=4.0.0, stat=Deferred: Connection refused by [127.0.0.1] ちょっと違いますね・・・ どこをどう確認して、どう修正すればよいのか、アドバイスいただきたくお願いいたします。

  • redhat8で外部にメールが送信できなくなりました。

    redhat8で外部にメールが送信できなくなりました。 sendmailの設定はデフォルトの状態です。 外部にpingが飛び、名前解決も問題ないようです。 原因がよくわからないのですが、 いつのまにかメールが送信できなくなっていました。 どこかの設定をさわってしまったんだと思うのですが・・。 うまく送信できていた時のログ(/var/log/maillog)は 下記のような感じです。 from=xxx, size=47, class=0, nrcpts=1, msgid=<2003@vaio>, relay=xxx@localhost from=<xxx@vaio>, size=279, class=0, nrcpts=1, msgid=<2003@vaio>, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1] to=aaa@aaa.aaa, ctladdr=xxx (500/500), delay=00:00:06, xdelay=00:00:05, mailer=relay, pri=30034, relay=localhost.localdomain. [127.0.0.1], dsn=2.0.0, stat=Sent (h3U1IQxG000866 Message accepted for delivery) to=<aaa@aaa.aaa>, ctladdr=<xxx@vaio> (500/500), delay=00:00:00, xdelay=00:00:00, mailer=esmtp, pri=30266, relay=aaa.aaa.aaa. [210.xxx.xxx.xx], dsn=2.0.0, stat=Sent (ok 1051665216 qp 9132) 現在のログは下記のような感じです。 from=xxx, size=39, class=0, nrcpts=1, msgid=<2003@vaio>, relay=xxx@localhost to=aaa@aaa.aaa, delay=00:00:20, mailer=esmtp, pri=30034, dsn=4.4.3, stat=queued いずれもメーラーを使用せず、mailコマンドで送信した結果です。 何かヒントを頂けるとうれしいです。 よろしくお願いします。

  • Sendmail8.11.2について

    Sendmail8.11.2について教えて下さい。 ledhat Linux7.1 にSendmail8.11.2をインスートルしてCFファイルを設定後、mailコマンドにて一般ユーザ同士及びrootから一般ユーザ宛のメールのやり取りはうまく出来るのですがroot宛にメールを送信しようとするとログファイル(/var/log/maillog)に以下のようなエラーが出力されます。 vod sendmail[24661]: f99ClRw24661: from=vod, size=29, class=0, nrcpts=1, msgid=<200110091247.f99 ClRw24661@vod.f-road.ne.jp>, relay=vod@localhost vod procmail[24662]: Insufficient privileges to deliver to "root" vod sendmail[24661]: f99ClRw24661: to=root, ctladdr=vod (501/500), delay=00:00:00, xdelay=00:00: 00, mailer=local, pri=30029, dsn=5.0.0, stat=Insufficient permission なにかのパーミッションでエラーになっているように思われるのですが。なにが悪いのでしょうか。 ちなみにCFのWIDE CFを使用し以下の項目のみを設定しています。 OS_TYPE=linux-redhat MX_SENDMAIL=yes MY_DOMAIN='ドメイン名' OFFICIAL_NAME='オフィシャル名' FROM_ADDRESS='$m' DIRECT_DELIVER_DOMAINS=all QUEUE_DIR='/var/spool/mqueue' その他はデフォルトとなっています。 御存知の方、御教示をお願いします。

  • メールが送信できない。mail.logの中身

    Feb 12 16:28:00 user-PC-LL550GD1T sendmail[2259]: q1C7Rxqj002259: to=t***@ezweb.ne.jp, ctladdr=www-data (33/33), delay=00:00:01, xdelay=00:00:00, mailer=relay, pri=30248, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (q1C7S0Ps002261 Message accepted for delivery) と出ました。何がいけないですか??

    • 締切済み
    • PHP
  • maillog内のsendmailエラー

    いつもお世話になっております。 Linuxサーバの /var/log/maillog 内において、毎朝4時頃、定期的にsendmailのログが発生しており、原因解明に苦戦しております。 OSは Red Hat Enterprise Linux AS release 3 (Taroon)です。 以下のコマンドで、sendmailが起動していないことは確認済みです。 ▼コマンド1 [root@HOST名 root]# /etc/init.d/sendmail status sendmailは停止しています ▼コマンド2 [root@HOST名 root]# chkconfig --list sendmail sendmail 0:オフ 1:オフ 2:オフ 3:オフ 4:オフ 5:オフ 6:オフ ▼コマンド3 [root@HOST名 root]# crontab -l no crontab for root その他、ps -ef コマンドにて、sendmailのプロセスが起動していないかも確認しましたが、起動していませんでした。 sendmailが起動していない状態で、何かの原因でsendmailが起動しようとしているときに発生しているのではないか?と推測しましたが、ログの意味が分からず、先に勧めない状態です。ご教授いただけましたら幸いです。どうか、宜しくお願い致します。 --以下、ログになります。最初のブロックのみ貼り付けています。 Aug 13 04:23:01 HOST名 sendmail[27222]: My unqualified host name (HOST名) unknown; sleeping for retry Aug 13 04:24:01 HOST名 sendmail[27222]: unable to qualify my own domain name (HOST名) -- using short name Aug 13 04:24:01 HOST名 sendmail[27222]: k7CJO1EC027222: from=root, size=329, class=0, nrcpts=1, msgid=<200608121924.k7CJO1EC027222@HOST名>, relay=root@localhost Aug 13 04:24:01 HOST名 sendmail[27222]: k7CJO1EC027222: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30329, relay=[127.0.0.1] [127.0.0.1], dsn=4.0.0, stat=Deferred: Connection refused by [127.0.0.1]

  • sendmailで特定ドメインに送信できない

    いつもお世話になってます。 ・Aサーバー(192.168.65.170) ・Bサーバー(192.168.13.38) が存在し、両方にqmail、vpopmailがインストールされています。 このたび、AサーバーからBサーバーに移行を予定しておりますが、 現在はAサーバーのqmailが、fuga@hoge.comのSMTPを行っています。 そこで、BサーバーのPHPからメールを送信する際、他のドメインでは 正常に配信されますが、hoge.comへの配信ができません。 試しに、Bサーバーのsendmailコマンドがら実行してみました。 ◎届く echo "test" | /usr/sbin/sendmail -t -i fuga@domain.com ×届かない echo "test" | /usr/sbin/sendmail -t -i fuga@hoge.com maillogを確認したところ、どうやらBサーバーがローカルに配信して いるらしく、Aサーバーに配信していないようです。 (実際はvpopの設定が不完全で、ローカルでボックスに入らずに どこかに消えたか貯まっている模様) コマンドで以下の確認も行いましたが、正常にAサーバーに 向いています。 ◎正常 [www@B ~]$ nslookup mail.hoge.com Server: 192.168.65.153 Address: 192.168.65.153#53 Name: mail.hoge.com Address: 192.168.65.170 ◎正常 [www@B ~]$ telnet mail.hoge.com smtp Trying 192.168.65.170... Connected to mail.hoge.com (192.168.65.170). Escape character is '^]'. 220 mail.hoge.com ESMTP そこで質問ですが、BからAに配送するには ・sendmailコマンドの設定 ・qmailの設定 ・/etc/resolv.confの設定 あたりを変えれば良いのかな、と思ってはいるものの、 どこをどう変更すれば良いのか、ご教示ください。 補足: 負荷分散環境だったりと、実際はもう少し混み入って いますが、このあたりのレジュメはひとまずは不要かと 思い、入れておりません。 IP、ドメインは架空のものですが、A、Bが内部で繋がって いるのは同じです。セグメントの違いも問題ありません。 最終的にはBサーバーに統合されますので、現在の問題は 解決するかと思いますが、移行までは何とか凌ぎたいです。 よろしくお願いします。

  • googleからメールリレー?

    centOS上でsendmailを使っているのですが、googleにメールが送信できなくなったのでログを見たところ、以下のようなログが大量に残っておりました。 A)送信失敗のログ(googleのブラックリスト入り?) Apr 12 16:36:48 ****** sendmail[30748]: r3C5Auuw004157: to=<******@gmail.com>, ctladdr=<mail@******.com> (8/12), delay=02:25:52, xdelay=00:00:02, mailer=esmtp, pri=572773, relay=alt4.gmail-smtp-in.l.google.com. [173.194.73.26], dsn=4.0.0, stat=Deferred: 421-4.7.0 [***.***.***.***] Our system has detected an unusual amount of B)googleからのリレー? Apr 12 18:17:13 ****** sendmail[8443]: r36Hgv7Y028734: to=<******@gmail.com>, delay=5+15:34:15, xdelay=00:01:59, mailer=esmtp, pri=2469474, relay=gmail-smtp-in.l.google.com. [74.125.129.26], dsn=5.1.1, stat=User unknown 多分Bのせいでgoogleに規制されたではないかと思っているのですが、 relay=gmail-smtp-in.l.google.com というのがどうにも解せません。 これってgmailのサーバがこちらのメールサーバにアクセスしてメールを送信しようとしている意味ですよね? しかもUser unknownで失敗しています。 これはいったいどういう意味なのでしょうか? そもそもログの意味を勘違いしているのでしょうか? アドバイス頂けると助かります。 よろしくお願い致します。

  • sendmailでメール送信できない

    CentOS5.2で以下のようにメールを送信しようとしたのですが、 メール送信できません。 echo "test" | /usr/sbin/sendmail -t -i aaaa@***.co.jp メールログは以下のように出力されます。 Jul 14 19:06:25 rescodev sendmail[5243]: n6E9p9uj005211: to=<aaaa@***.co.jp>, delay=00: 15:15, xdelay=00:02:00, mailer=esmtp, pri=210276, relay=mx.***.co.jp. [211.13.204.14], dsn =4.0.0, stat=Deferred: Connection timed out with mx.***.co.jp. 内部的にメールを送信しようとしても同じエラーで送信できません。 ルーターで破棄しているわけでもないようです。 調べていて気になったのが、グローバルIPが固定でないことです。 固定でないと相手方のメールサーバーに拒否されてしまうのでしょうか。 いろいろ試したのですが、未熟なせいかどうしても送信できません。 どなたか、教えていただけないでしょうか。 よろしくお願いします。