Postfix の設定
» main.cf
Postfix 側の最小設定は、vi で /etc/postfix/main.cf を開いて、少し変更するだけです。
relay_domains = hogehoge.local, foo.bar myhostname = (***ホスト名***) inet_interfaces = all transport_maps = hash:/etc/postfix/transport
- relay_domains = には、セカンダリMX として、メールを受け取るドメインを指定します。
- inet_interfaces = は、LISTEN するIPアドレスなどを指定しますが、0.0.0.0 で良い場合は all にします。
- あと、myhostname = も変更しておきます。
セキュリティのことを考えて、さらに以下の設定を追加しておくと良いです。
# vi /etc/postfix/main.cf
disable_vrfy_command = yes smtpd_helo_required = yes smtpd_banner = $myhostname ESMTP smtpd_client_restrictions = permit_mynetworks, reject_rbl_client all.rbl.jp, reject_rbl_client bl.spamcop.net, reject_rbl_client sbl-xbl.spamhaus.org, permit
セキュリティに関する設定と、all.rbl.jp と bl.spamcop.net、sbl-xbl.spamhaus.org を RBL(Real-Time Blackhole List) として使い、スパムメールをブロックする設定をしています。
RBL を使う部分(smtpd_client_restrictions) については、指定しなくても構いません。RBL は IPアドレス ベースやネットワークアドレス ベースで SMTPサーバへの接続を拒否するため、スパム送信サイトとは関係の無い MTA の接続まで拒否してしまう可能性があるからです。
そう言った理由で、smtpd_client_restrictions パラメータの reject_rbl_client については、使うか使わないかは賛否が分かれます。使う場合は有償のちゃんとメンテされているリストを使うのが良いとされていますが、個人で動かしてるメールサーバに有償の RBLリストはちょっと。。。
私はというと、上記の3つは何年も前から指定しており、もしかするとメールの一部は BOUNCE してしまっているかもしれませんが、注文確認メールが来ないなどといったトラブルは一度も経験していません。
» transport
transport ファイルを作成します。transport ファイル自体は既に存在していると思うので、ファイルの先頭に
hogehoge.local smtp:mx.hogehoge.local foo.bar smtp:mx.foo.bar
のように、受け取るドメイン名を書き、TABまたはスペースで区切った後に smtp: という文字列の後にメールを転送するプライマリ・メールサーバの FQDNまたは IPアドレスを記載します。
これは、DNS の MXレコードを引かずにメールを転送するための設定になります。(なぜなら、MXレコードを調べてしまうと、無限にこのセカンダリサーバへメールを転送する危険があるからです。)
ファイルを編集後は、
# postmap /etc/postfix/transport
コマンドを実行して、transport.db ファイルを作成します。
そして、
# service postfix restart
コマンドで、Postfix を再起動します。(リロードでも OK だと思います。)
» DNS の変更
最後に、DNS サーバを変更します。DNSサーバでは、MXレコードをもう一つ追加します。
@ MX 10 mx.foo.bar @ MX 100 mxs.foo.bar
セカンダリMX の方は普段は使われないように、優先順位を100や200など大きな値にしておきます。
前のページ 次のページ
関連するコンテンツ
- 複数ドメイン環境における SpamAssassin の設定にハマる
- Syslog-ng 3.x を Cent OS にインストールする
- LogZilla を Cent OS にインストールする
- 正規の格安SSL証明書で、My WebDAVサーバ
- 9月分の電気使用量
コメントを残す