メールサーバーって下手な設定すると、SPAMメール中継の温床になって、プロバイダに怒られたりするんだけど(過去に経験あり)、
そのような経緯もあってあまり込み入った設定とか、いちびった設定をせず普通に粛々と運用するだけにとどめたいんだけど、
訳あって設定を見直さないといけなくなったのでメモ。
契約しているプロバイダがOutboud port25 blockingを設定している場合があります。
かっこつけた言い方だとOP25Bというそうだ。
迷惑メール対策のために、契約ユーザーからのport 25(メール送信用ポートNo)のリクエストを外部に漏らさないためです。
しかし、自宅でメールサーバーを運用している場合、これが障害になり自前メールサーバからメールを送信することができません。
これの対策として、自メールサーバーからの送信メールはISPのメールサーバーに転送する設定を行います。
環境:debian + Postfix
saslモジュールが必要ですので、debianの場合は、以下のようにしてGET。
$apt-get install libsasl2-2 libsasl2-modules
/etc/postfix/main.cf を以下のようにする。
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl/saslpass
relayhost = [smtpauth.eonet.ne.jp]:587
smtp_use_tls = yes
/etc/postfix/sasl/saslpass を作成する。各自のリレー先メールサーバーの設定をここに記述する。
[転送する先のSMTPサーバ]:587 POPアカウント:POPパスワード
とする。
ハッシュファイルを作成する。
$ cd /etc/postmap/sasl/
$ postmap saslpass
これでsaslpass.db が作成される。
安全のため、元のsaslpass ファイルは削除しておくか、パーミッションを変更しておく。
postfixを再起動する。
/etc/init.d/postfix restart
テスト
mailx xxx@xxx.com
Subjectと本文を適当に入力して、Ctrl-Dを2回で送信。
これで一応いろんなところにメール送れるようになったけど、セキュリティ大丈夫だろうか…?