こんな感じの環境を想定しています。
<社外メールサーバー>(SMTP Auth必須)
____|____(FW)
<開発環境用メールサーバー>(SMTP Auth不要)
____|____
<開発用サーバー・開発機>
開発環境用メールサーバーが特定ドメインしかメールを転送しないので、ウィルスメールが蔓延してその被害を社外に広げたり、テスト中で社外にメールを送ったりといったことを防げる。社内の開発環境などにお勧め。
以下、CetnOS 5.3で確認しています。
【手順1 中継設定ファイル新規追加】 /etc/postfix/transport
中継サーバーを利用したい(許可したい宛先ドメイン)を書き込みます。
allowdomain.co.jp smtp:relay.mail.jp
.allowdomain.co.jp smtp:relay.mail.jp
wktm.jp smtp:relay.mail.jp
.wktm.jp smtp:relay.mail.jp
形式は
<中継メールサーバー> <認証ID>:<認証パスワード>
上記の設定では@allowdomain.co.jpと@*.allowdomain.co.jp(つまりサブドメイン)、そしてwktm.jpとwktm.jpのサブドメイン宛のメール送信が許可されます。
【手順2 パスワードファイル新規追加】/etc/postfix/sasl_passwd
SMTP AUTHに使うIDとパスワードを書き込んでおくファイルです。パーミッション注意!
relay.mail.jp ID:Password
形式は
<中継メールサーバー> <認証ID>:<認証パスワード>
SMTP Auth用のIDとパスワードの設定を行います。中継メールサーバーが複数ある場合は複数行このファイルに並べて記載します。
【手順3 設定ファイル追記】 /etc/postfix/main.cf
SMTP Authを使うようにPostfixのメイン設定ファイルに追記。
transport_maps = hash:/etc/postfix/transport
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
あとは忘れずに以下のコマンドを実行
【手順4 設定反映】
# postmap /etc/postfix/sasl_passwd
# postmap /etc/postfix/transport
# /etc/init.d/postfix reload
以上です。
最 近は仮想サーバー技術でサーバーなど立ち上げたい放題のはず。そういう意味でもやっておいて損はないです。よく「ウチの環境はアンチウィルス対策済みだ」 とか「テストデータなどは常に適切にマスク済みだ」とかいう意見は聞きますが、現実問題、それらの運用が確実に回らずに事故を起こしたという話を、私は数多く 聞いています。人手を信用しては、いけない。
何より私は、自分自身を信用していません。何しろ私のことだから、明日にでもミスを犯すに違いありません。でもこの対策をしておけば安心。