質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.53%

  • メール

    255questions

    メールは、コンピュータネットワークを利用し、 情報等を交換する手段のことです。

CentOS7でroot宛メールをISPメールに問題無く送信する方法を教えてください

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 223

komadorri

score 1

 前提・実現したいこと

CentOS7+Samba4で構築したファイルサーバーでの各種対策ソフト(chkrootkit、Tripwire、clamdscan)のroot宛結果メールを
自分の所有するISPメールアドレスに転送して、普段使用するメインPCでトラブル検知をしたい。

 発生している問題・エラーメッセージ

Postfixで上記機能を達成する為に、
各実行sh内(chkrootkit、Tripwire、clamdscan)で直接送信先ISPアドレスを指定すると問題無く届きます。

但し、下記問題が発生したので、root宛メールを正しく送信先ISPアドレスに届ける方法をとるのが目標です。
1.Tripwire自体がshでのメール送信以外にrootにメールを転送するので、これが正しく送信出来ない
2.apcupsdのエラーメールもroot宛に届くので、これを正しく送信出来ない
3.ファイルサーバーの構築と検証開始から日が浅い為、他にもroot宛メールを送信するソフトがある可能性がある

rootメールの転送設定に問題がある為、
発送元として指定したzzzz@xx.yyyy.co.jpにメール送信エラーとして戻ってしまいます。

ローカル内に設置したファイルサーバーの為、ドメイン登録はしていません。
例え、ドメイン登録をしても外部発呼の接続をルータで許容していないので、DNSの問い合わせに返信出来ません。
※内部発呼の外部接続は認めているので、ウイルス対策ソフト等のデータベース更新は出来ております。

   ----- The following addresses had permanent fatal errors -----
<root@xx.yyyy.or.jp>
    (reason: 550 5.1.1 <root@xx.yyyy.or.jp>... User Unknown)

   ----- Transcript of session follows -----
... while talking to mx.yyyy.or.jp.:
>>> DATA
<<< 550 5.1.1 <root@xx.yyyy.or.jp>... User Unknown
550 5.1.1 <root@xx.yyyy.or.jp>... User unknown
<<< 503 5.0.0 Need RCPT (recipient)

加えて、エラーメールで戻ってきたメールヘッダーは、Return-Path: <>と空欄になっています。
正しく届いたメールのReturn-Path: <Return-Path: <zzzz.xx.yyyy.or.jp>と送信元アドレスとして指定したメアドが正しく入っています。
それ以外にヘッダー部分に違いは見つけられませんでした。

登録しているISPでroot@のメールが取れれば良いのですが、既に全て取得されており入手出来ません。

 試したこと

/etc/postfix/main.cfに下記を追加

mydomain = xx.yyyy.or.jp
myorigin = $mydomain        ここ迄でroot@hosts.localdomain→root@xx.yyyy.or.jp迄変更は出来てます
mydestination =    
relayhost = [mbox.yyyyy.or.jp]:587

SMTP認証を行うための設定
smtp_use_tls = no
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/relay_password
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_sasl_mechanism_filter = PLAIN LOGIN CRAM-MD5

送信されるメールアドレスを変更するための設定
local_header_rewrite_clients = permit_mynetworks
sender_canonical_classes = envelope_sender
sender_canonical_maps = regexp:/etc/postfix/sender_maps

/etc/postfix/relay_passwordに下記を追加

[mbox.yyyy.or.jp]:587 zzzz.xx.yyyy.or.jp:ABCDEF

/etc/postfix/sender_mapsに下記を追加

/^.*$/ zzzz@xx.yyyy.or.jp

/etc/aliasesの一番下の部分を修正

root:marc→root:宛先ISPメール

上記設定で、chkrootkit、Tripwire、clamdscanの各shに直接宛先ISPアドレスを記載すると正しく届く
chkrootkit、Tripwire、clamdscanの宛先をrootにして動作させると、送信元ISPアドレスにエラーメールとして戻ってきます。
ソフト独自でroot宛メールを発信されると同様に、送信元ISPアドレスにエラーメールとして戻ってきます。

エラーメールを確認するとroot@xx.yyyy.co.jp

 補足情報(FW/ツールのバージョンなど)

CentOS Linux release 7.4.1708 (Core)
Postfix 2.10.1

※※※/var/log/mailinの本日分を記載致します。
Jun 27 00:12:57 hosts postfix/pickup[16035]: 514A6607063F: uid=0 from=<root>
Jun 27 00:12:57 hosts postfix/cleanup[16492]: 514A6607063F: message-id=<20180626151257.514A6607063F@hosts.xx.yyyy.or.jp>
Jun 27 00:12:57 hosts postfix/qmgr[14814]: 514A6607063F: from=<zzzz@xx.yyyy.or.jp>, size=473, nrcpt=1 (queue active)
Jun 27 00:12:57 hosts postfix/smtp[16497]: 514A6607063F: to=<送信先IPアドレス>, relay=mbox.yyyy.or.jp[210.130.0.166]:587, delay=0.24, delays=0.01/0.01/0.1/0.12, dsn=2.0.0, status=sent (250 2.0.0 w5QFCvdC015643 Message accepted for delivery)
Jun 27 00:12:57 hosts postfix/qmgr[14814]: 514A6607063F: removed
Jun 27 01:28:46 hosts postfix/pickup[16606]: 130D4607063F: uid=0 from=<root>
Jun 27 01:28:46 hosts postfix/cleanup[16842]: 130D4607063F: message-id=<20180626162846.130D4607063F@hosts.xx.yyyy.or.jp>
Jun 27 01:28:46 hosts postfix/qmgr[14814]: 130D4607063F: from=<zzzz@xx.yyyy.or.jp>, size=1285, nrcpt=1 (queue active)
Jun 27 01:28:46 hosts postfix/smtp[16844]: 130D4607063F: to=<root@xx.yyyy.or.jp>, orig_to=<root>, relay=mbox.yyyy.or.jp[210.130.0.166]:587, delay=0.35, delays=0.01/0.01/0.21/0.12, dsn=2.0.0, status=sent (250 2.0.0 w5QGSkCn029783 Message accepted for delivery)
Jun 27 01:28:46 hosts postfix/qmgr[14814]: 130D4607063F: removed
Jun 27 01:28:49 hosts postfix/pickup[16606]: 7F2CD607063F: uid=0 from=<root>
Jun 27 01:28:49 hosts postfix/cleanup[16842]: 7F2CD607063F: message-id=<20180626162849.7F2CD607063F@hosts.xx.yyyy.or.jp>
Jun 27 01:28:49 hosts postfix/qmgr[14814]: 7F2CD607063F: from=<zzzz@xx.yyyy.or.jp>, size=1311, nrcpt=1 (queue active)
Jun 27 01:28:49 hosts postfix/smtp[16844]: 7F2CD607063F: to=<root@xx.yyyy.or.jp>, orig_to=<root>, relay=mbox.yyyy.or.jp[210.130.0.167]:587, delay=0.22, delays=0/0/0.09/0.14, dsn=2.0.0, status=sent (250 2.0.0 w5QGSnjd029808 Message accepted for delivery)
Jun 27 01:28:49 hosts postfix/qmgr[14814]: 7F2CD607063F: removed
Jun 27 03:00:07 hosts postfix/pickup[17010]: 26CD6607063F: uid=0 from=<root>
Jun 27 03:00:07 hosts postfix/cleanup[17227]: 26CD6607063F: message-id=<20180626180007.26CD6607063F@hosts.xx.yyyy.or.jp>
Jun 27 03:00:07 hosts postfix/qmgr[14814]: 26CD6607063F: from=<zzzz@xx.yyyy.or.jp>, size=6269, nrcpt=1 (queue active)
Jun 27 03:00:07 hosts postfix/smtp[17229]: 26CD6607063F: to=<送信先IPアドレス>, relay=mbox.yyyy.or.jp[210.130.0.166]:587, delay=0.39, delays=0.02/0/0.24/0.14, dsn=2.0.0, status=sent (250 2.0.0 w5QI07Jg017759 Message accepted for delivery)
Jun 27 03:00:07 hosts postfix/qmgr[14814]: 26CD6607063F: removed
Jun 27 03:16:10 hosts postfix/pickup[17010]: 26Dxx607063F: uid=0 from=<root>
Jun 27 03:16:10 hosts postfix/cleanup[17326]: 26Dxx607063F: message-id=<20180626181610.26Dxx607063F@hosts.xx.yyyy.or.jp>
Jun 27 03:16:10 hosts postfix/qmgr[14814]: 26Dxx607063F: from=<zzzz@xx.yyyy.or.jp>, size=5318, nrcpt=1 (queue active)
Jun 27 03:16:10 hosts postfix/smtp[17331]: 26Dxx607063F: to=<root@xx.yyyy.or.jp>, orig_to=<root>, relay=mbox.yyyy.or.jp[210.130.0.167]:587, delay=0.27, delays=0.01/0.01/0.1/0.15, dsn=2.0.0, status=sent (250 2.0.0 w5QIGAK0026696 Message accepted for delivery)
Jun 27 03:16:10 hosts postfix/qmgr[14814]: 26Dxx607063F: removed
Jun 27 04:00:02 hosts postfix/pickup[17491]: 95DF6607063F: uid=0 from=<root>
Jun 27 04:00:02 hosts postfix/cleanup[18570]: 95DF6607063F: message-id=<20180626190002.95DF6607063F@hosts.xx.yyyy.or.jp>
Jun 27 04:00:02 hosts postfix/qmgr[14814]: 95DF6607063F: from=<zzzz@xx.yyyy.or.jp>, size=515, nrcpt=1 (queue active)
Jun 27 04:00:02 hosts postfix/smtp[18575]: 95DF6607063F: to=<送信先IPアドレス>, relay=mbox.yyyy.or.jp[210.130.0.166]:587, delay=0.34, delays=0.01/0/0.2/0.12, dsn=2.0.0, status=sent (250 2.0.0 w5QJ02ih018612 Message accepted for delivery)
Jun 27 04:00:02 hosts postfix/qmgr[14814]: 95DF6607063F: removed
Jun 27 05:06:16 hosts postfix/postfix-script[18932]: stopping the Postfix mail system
Jun 27 05:06:16 hosts postfix/master[14812]: terminating on signal 15
Jun 27 05:06:16 hosts postfix/postfix-script[19016]: starting the Postfix mail system
Jun 27 05:06:16 hosts postfix/master[19018]: daemon started -- version 2.10.1, configuration /etc/postfix
Jun 27 05:06:33 hosts postfix/pickup[19019]: 7A885607063F: uid=0 from=<root>
Jun 27 05:06:33 hosts postfix/cleanup[19025]: 7A885607063F: message-id=<20180626200633.7A885607063F@hosts.xx.yyyy.or.jp>
Jun 27 05:06:33 hosts postfix/qmgr[19020]: 7A885607063F: from=<zzzz@xx.yyyy.or.jp>, size=454, nrcpt=1 (queue active)
Jun 27 05:06:33 hosts postfix/smtp[19027]: 7A885607063F: to=<送信先IPアドレス>, relay=mbox.yyyy.or.jp[210.130.0.166]:587, delay=0.24, delays=0.02/0.01/0.1/0.12, dsn=2.0.0, status=sent (250 2.0.0 w5QK6XNG001060 Message accepted for delivery)
Jun 27 05:06:33 hosts postfix/qmgr[19020]: 7A885607063F: removed
Jun 27 05:06:48 hosts postfix/pickup[19019]: 5EF50607063F: uid=0 from=<root>
Jun 27 05:06:48 hosts postfix/cleanup[19025]: 5EF50607063F: message-id=<20180626200648.5EF50607063F@hosts.xx.yyyy.or.jp>
Jun 27 05:06:48 hosts postfix/qmgr[19020]: 5EF50607063F: from=<zzzz@xx.yyyy.or.jp>, size=455, nrcpt=1 (queue active)
Jun 27 05:06:48 hosts postfix/smtp[19027]: 5EF50607063F: to=<root@xx.yyyy.or.jp>, orig_to=<root>, relay=mbox.yyyy.or.jp[210.130.0.166]:587, delay=0.22, delays=0/0/0.09/0.13, dsn=2.0.0, status=sent (250 2.0.0 w5QK6m3m001185 Message accepted for delivery)

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • CHERRY

    2018/06/27 05:52

    /var/log/maillog の内容も質問に追記してください。

    キャンセル

  • komadorri

    2018/06/27 06:39

    上手く記述出来ないのて、本文に追記致します。

    キャンセル

  • otn

    2018/06/27 08:26

    mbox.yyyyy.or.jp というのはプロバイダのSMTPサーバーで合ってますか?そうすると、xx.yyyy.or.jp とは?ドメインは取得してないのですよね?

    キャンセル

  • komadorri

    2018/06/27 10:10

    mbox.yyyy.or.jpがISPのSMTPサーバです。そしてSMTPサーバーが当方のメールを確認する際に使用するのが、ISPに登録している@マーク以降のxx.yyyy.or.jpが逆引き可能なDNSか?確認する為に使用している部分です。zzzz@が正しくてもaa.yyyy.or.jpでは不正メール判定されます。

    キャンセル

回答 2

checkベストアンサー

0

root@xx.yyyy.co.jp 宛が User Unknown ですので、xx.yyyy.co.jp ドメインのメールサーバーが root@xx.yyyy.co.jp 用のメールボックスを用意していないということです。

直接宛先ISPアドレスを記載すると正しく届く

これは、root@xx.yyyy.co.jp ではない、someuser@xx.yyyy.co.jp を宛先にすると届くということですよね?
であれば、/etc/aliases で root:  someuser@xx.yyyy.co.jp に転送すればいいのでは?

(2018/06/27) 18:30 追記

To:root (ドメインなし) の場合、$mydomain が補完され、To:root@xx.yyyy.or.jp となりますが、このアドレスは $mydestination に含まれていないので、外部宛の扱いになり、/etc/aliases が効きません。
/etc/aliases で転送するには local 扱いにする必要があります。
$mydomain を別のものにし、$mydestination に $mydomain を含めるといいと思います。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/27 17:50

    root: 宛先ISPアドレスは既に設定してあります。
    ISPには2つのメアドを持っており、宛先ISPアドレスとzzzz@xx.yyyy.co.jpがあります。
    送信先と送信元アドレスが同じでも良いのでしょうが、2つあることもあり、
    Postfixでroot宛メールをzzzz@xx.yyyy.co.jpに変換しISPのSMTPサーバーに送信→宛先ISPアドレスで受信を目指しています。
    質問時の記載で、root@hosts.localdomain→root@xx.yyyy.co.jp迄変換出来ているのですが、
    rootの部分を変換出来ず、対応策が無い状態です。
    /etc/postfix/sender_mapsの記述を直接アドレス表記にして
    root@xx.yyyy.co.jp zzzz@xx.yyyy.co.jp
    postmap /etc/postfix/sender_maps
    を実行すると、
    echo "testmail" | mail -s "testmail" "宛先IPSアドレス"
    も送信されなくなってしまいます。

    /etc/postfix/sender_mapsの正規表記に誤りがあるのか?
    local_header_rewrite_clientsの設定条件が誤っているのか?
    辺りが怪しいとは思うのですが、自分の知識ではこれ以上の修正が出来ずに困っています。

    キャンセル

  • 2018/06/27 18:21

    > root@hosts.localdomain→root@xx.yyyy.co.jp迄変換出来ているのですが、

    この変換を止めて、/etc/aliases だけにしてください。

    キャンセル

  • 2018/06/27 18:32

    root@hosts.localdomain→root@xx.yyyy.co.jp ではなく root(ドメインなし)→root@xx.yyyy.co.jp ですよね?
    回答に追記しました。

    キャンセル

  • 2018/06/27 19:32

    TaichiYanagiya 様のご指摘に沿って、
    /etc/aliasesの一番下を変更
    # trap decode to catch security attacks
    decode: root
    # Person who should get root's mail
    #root: marc
    root: "宛先ISPアドレス"

    質問時の/etc/postfix/main.cfから下記3つをコメントアウト
    #mydomain = xx.yyyy.or.jp
    #myorigin = $mydomain
    #mydestination =

    #newaliases
    #postfix reload
    #systemctl restart postfix

    #echo "testmail" | mail -s "testmail" "宛先ISP" ※1
    #echo "testmail root" | mail -s "testmail root" root ※
    を実施した結果、
    ※1と※2とも狙い通りの差出人: zzzz@xx.yyyy.co.jp
    ※1の宛先:宛先ISP、※2の宛先:root@hosts.localdomain
    となっていますが、宛先ISPに両メール共受信出来ました。

    cronで実行しているセキュリティ対策ソフトのshをメール先を"宛先ISP"→rootに変更し、
    各shを直接実行してみましたが、
    差出人:zzzz@xx.yyyy.co.jp、宛先:root@hosts.localdomain
    で無事受信出来ました。

    本日深夜の自動実行の結果を待って、明日最終回答致しますが、教えて頂いた方法で解決出来そうです。

    キャンセル

  • 2018/06/28 12:52

    TaichiYanagiya 様
    昨日の夜のsh自動実行とそれ以外にcronで別途実行された結果のroot宛メールを指定した宛先ISPメアドで全て受け取ることが出来ました。
    また、DNS逆引き不可能で送信元zzzz@xx.yyyy.co.jpに戻ってきたメールは一切ありませんでした。
    今回は有難うございました。

    キャンセル

0

まだ、状況がよくわかりませんが、プロバイダの内部で「root@プロバイダドメイン」に配送しようとしていて、エラーになっているのはわかりました。
外部に出て行くヘッダのメールアドレスを正しく書き直した方が良いと思います。

main.cf の mydomain をプロバイダドメインにするのではなく、ローカルドメインのままにしておいて、smtp_generic_maps を設定して、外部SMTPへ出ていくメールのローカルメールアドレスを 有効なグローバルアドレスに書き換える設定の方が良いかもしれませんね。

参考:
外行きSMTPメールの標準マッピング - Postfix アドレス書き換え

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/27 10:48

    紹介頂いたHPを私も確認していましたが、sender_canonical_classes/sender_canonical_mapsとsmtp_generic_mapsの両方併記が可能か?判らなかった為、まだ試していませんでした。
    併記して記述エラーがでる場合は、smtp_generic_mapsのみ記述して確認してみます。

    キャンセル

  • 2018/06/27 19:47

    komadorri 様
    ご指摘の方法で、
    質問時の/etc/postfix/main.cfから
    #local_header_rewrite_clients = permit_mynetworks
    #sender_canonical_classes = envelope_sender
    #sender_canonical_maps = regexp:/etc/postfix/sender_maps
    smtp_generic_maps = hash:/etc/postfix/sender_canonical

    /etc/postfix/sender_mapsを下記に変更
    root@TT10.localdomain ushi@bk.iij4u.or.jp

    #postmap /etc/postfix/sender_maps
    #postfix reload
    #systemctl restart postfix

    #echo "testmail" | mail -s "testmail" "宛先ISP"
    #echo "testmail root" | mail -s "testmail root" root
    を実施した結果、
    両メール共、宛先:宛先IPSメアド、差出人:宛先IPSメアドになってしまいました。

    /etc/postfix/relay_passwordを変更していないので、
    zzzz@xx.yyyy.co.jp→宛先ISPメアドで送信されていると思われますが、
    smtp_generic_maps = hash:/etc/postfix/sender_canonicalの強制書き換えが強力なのか?
    ヘッダー詳細内に
    reciveに一部zzzz@xx.yyyy.co.jp経由と思われる部分が見つかりましたが、
    そこも、全て宛先ISPになってしまいました。

    この方法で、結果としてのrootメールの宛先ISPメアドへの転送は可能となりましたが、
    途中の転送経路が追えない点で、現状はTaichiYanagiya 様の方式で進めようと思います。

    対応策を頂きながら、採用せず申し訳ありません。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.53%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • メール

    255questions

    メールは、コンピュータネットワークを利用し、 情報等を交換する手段のことです。