メールサーバソフトウェアにはPostfixを使用しました。第3者中継対応には今回はSMTP AUTHを利用しました。まず、SMTP AUTHに対応したPostfixにするためにはコンパイル前にUSEフラグに saslを追加します。
emergeコマンドでPostfixをインストールしたら、/etc/postfix/main.cfの設定です。saslに関係する部分とスパ
ムメール対策が特に注目すべき点です。、ブラックリストに載っているホストやつじつまの合わないヘッダを持つメールをはじく設定などがされています。
#キューをためるディレクトリ
queue_directory = /var/spool/postfix
#メールオーナー
mail_owner = mail
#ホストネーム
myhostname = mail.tamochan.com
#ドメイン
mydomain = tamochan.com
# myorigin パラメータにはローカルで送信されたメールがどのドメインから
# 来るように見えるかを指定
myorigin = $mydomain
#このマシンが自分自身が最終目的地だとみなすドメインのリストを指定
mydestination = $myhostname, localhost.$mydomain, $mydomain,
mail.$mydomain, www.$mydomain, ftp.$mydomain
#エイリアスのファイル
alias_maps = hash:/etc/aliases
#/sbin/newaliacesを実行したとき,どんなデータベースを作るか
alias_database = hash:/etc/aliases
#メールをためるディレクトリ
mail_spool_directory = /var/spool/mail
#このメールシステムがどのクライアントから
#リレーを受けるか、またはどの目的地にメールをリレーするかを制限
relay_domains = $mydestination
#SMTPを受け付けるアドレス
mynetworks = 192.168.0.0/16, 127.0.0.0/8, 211.133.147.90/32
#ユーザの、メールを受ける場所。/home/***/.maildir/以下にメールが保存される。
home_mailbox = .maildir/
#わかんないドメインからのメールは拒否
smtpd_sender_restrictions = reject_unknown_sender_domain
#送信を許可する最大のファイルサイズ
message_size_limit = 1024000
#メールの寿命
maximal_queue_lifetime = 12h
#ここらへんからsmtp auth(sasl)の設定
smtpd_recipient_restrictions = permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain =
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = no
allow_mail_to_commands = alias,forward,include
#スパムメール対策。reject_rbl_clientの後ろにかかれている
#データベースに登録されているホストからは受け付けなくなります。
smtpd_client_restrictions = permit_mynetworks,
reject_invalid_hostname,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_sender_domain,
reject_unknown_recipient_domain,
reject_rbl_client bl.spamcop.net,
reject_rbl_client blackholes.mail-abuse.org,
reject_rbl_client dynablock.wirehub.net,
reject_rbl_client korea.services.net,
reject_rbl_client opm.blitzed.org,
reject_rbl_client relays.ordb.org,
reject_rbl_client relays.visi.com,
reject_rbl_client sbl.spamhaus.org,
reject_rbl_client sbl-xbl.spamhaus.org,
permit
送信を許可する最大のファイルサイズも設定しておいたほうが,メール爆弾などが送られなくてすみます.マシン起動時にデーモンも起動する設定を行いましょう。
# rc-update add postfix default
次に、SASLでパスワード認証を行えるようにします。/etc/sasl2/smtpd.confを下記のように編集します。
pwcheck_method: pwcheck
pwcheckを起動し、デフォルトでサーバ起動時に自動で立ち上がるようにします。
# /etc/init.d/pwcheck start
# rc-update add pwcheck default
一番トラフィックが多いのはメールになってくると思います.きちんと設定しなければ損害賠償!なってこともあるかもしれないので,慎重に設定をしてください.なお,第三者中継のチェックはhttp://www.nanet.co.jp/rlytest/relaytest.htmlでやってくれますので,公開する前に試してみてください.