harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

MAIL postfix メモ

[メモ][postfix] インバウンド、アウトバウンドにかかわらずすべてのメールを特定のアカウントに転送する設定

投稿日:2016年1月25日

Last Updated on 2016年3月25日 by かんりにん

テスト環境でデバッグやテスト時に開発サーバーのMTAから配信されるメールを特定のアドレスに転送させる設定を追加。
目的は、ソース内にハードコーディングされている本番サーバー向けのドメインに、誤ってメールが送信されちゃうトラブルを回避するため。
環境はEC2、rightscaleのCentOS6.7にて。

▼要件

    ・インバウンドメールを、本来の宛先にかかわらず、すべてローカルの特定のアカウントに転送する
    ・システム宛(root, postmaster等)は root 、それ以外は harumakiuser に送られる
宛先:harumakiuser@example.com → harumakiuser@example.com(ローカル)
宛先:info@example.com → harumakiuser@example.com(ローカル)
宛先:abuse@example.com → harumakiuser@example.com(ローカル)
宛先:webmaster@example.com → harumakiuser@example.com(ローカル)
    ・アウトバウンドメールについてもローカル内に転送し、外部には送らない。
    ソースコード内にハードコーディングされている 本番サービスのドメイン宛メール送信があって
    見落としによる外部送信を回避するため。

▼環境ドラフト

    ・SMTPはpostfixで動かす
    ・メール転送オプション”transport_map”または”header_checks”あたりで設定。
    ・ローカルの配送先は複数指定できないので、rootに統一する。
    ・メールの格納方式は、このタイミングでMaildir形式に変更する。

▼設定

– /etc/postfix/main.cf

# インバウンドのメールを受けないため、明示的にローカルホストを指定
myhostname = localhost.localdomain
mydomain = localhost.localdomain
myorigin = $myhostname

# アウトバウンドメールの配信は原則ローカルのみ、外部ホストからの転送は受け付けない
inet_interfaces = 127.0.0.1

# ローカル転送の際に指定するドメイン
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

# ローカルにためるメールをmaiboxからmaildir形式へ変更
home_mailbox = Maildir/

# 以下、アウトバウンド向けメールをローカルに転送する設定
# ローカル転送を拒否しない
local_recipient_maps =
# 今回、ここが分からなくてハマッたが、設定値をnullにすることでうまくいった。

# ローカルユーザーのリレー先アカウントの指定、以下ではrootを指定
luser_relay = root

# 宛先ドメインの条件判定式(transport)のファイルを指定
transport_maps = hash:/etc/postfix/transport

– /etc/postfix/transport

# すべてのメールをローカルへ転送する
*       local:

 

▼設定適用

※開発環境ではpostfixを未起動であったため、初期設定を含めて設定を適用。

– 1.aliases.db作成

# postalias /etc/aliases

– 2.自動起動設定

# chkconfig --list postfix
service postfix supports chkconfig, but is not referenced in any runlevel (run 'chkconfig --add postfix')
# chkconfig --add postfix
# chkconfig --list postfix
postfix         0:off   1:off   2:on    3:on    4:on    5:on    6:off

– 3.transport

# postmap /etc/postfix/transport

– 4.postfix起動

# /etc/init.d/postfix start
Starting postfix:                                          [  OK  ]

 

▼ログ

上記設定後での配信成功ログ。

Jan 25 11:58:46 ip-10-128-1-4 postfix/smtpd[15810]: connect from localhost[127.0.0.1]
Jan 25 11:58:55 ip-10-128-1-4 postfix/smtpd[15810]: BBA397615E: client=localhost[127.0.0.1]
Jan 25 11:59:09 ip-10-128-1-4 postfix/cleanup[15812]: BBA397615E: message-id=<20160125025855.BBA397615E@localhost.localdomain>
Jan 25 11:59:09 ip-10-128-1-4 postfix/qmgr[15801]: BBA397615E: from=<root@localhost.localdomain>, size=377, nrcpt=1 (queue active)
Jan 25 11:59:09 ip-10-128-1-4 postfix/local[15803]: BBA397615E: to=<root@localhost.localdomain>, orig_to=<harumakiuser@example.com>, relay=local, delay=19, delays=19/0/0/0, dsn=2.0.0, status=sent (delivered to maildir)
Jan 25 11:59:09 ip-10-128-1-4 postfix/qmgr[15801]: BBA397615E: removed

ひとまずこれでOK。

-MAIL, postfix, メモ

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

no image

メールサーバー構築ログ[postfix+mysql+postfixadmin]

[pukiwiki] 約2年ぶりくらいにpostfix+mysql+postfixadminでメールサーバーをセットアップしたので 備忘録として。 割とスタンダードな内容なので、参考になるかわかりませ …

no image

mbox2maildir

[pukiwiki]   会社のテストサーバが不調になり、調査のために/var/spool/mailsvr/rootにたまったLogwatchを取り込もうとしたのだが、テストサーバにqpopperを入 …

no image

[MySQL]mysqlbinlog[メモ]

[pukiwiki] バイナリログには実行したSQL文その他が記録されているので、リカバリに利用することができる。 my.cnfに設定し、デーモンを起動するとバイナリログが生成されるようになる。 -設 …

[自分用メモ]nagios​ plugin

  [pukiwiki] nagiosのプラグインに関する情報やリンク(nagios標準のnagios-pluginを除く) **一般的なプラグインの追加手順 [#p2898d55] プラグインをダウ …

no image

[メモ]FreeBSDでsendmail→postfixへの切り替え

[pukiwiki] FreeBSDでのsendmail→postfix切り替えの作業ログ。 お客さんの会社で、長らく管理人不在のまま使用していたFreeBSDのWebサーバーでハードウェア障害が起き …

宅麺