2012/04/28
Postfix の大急ぎ設定メモ。FreeBSDのports からのインストールなので、tarballからの細かい作業はすっ飛ばしてある。
また、このセットアップは主にメールの受信についての設定である。送信用の設定はやらない。
portinstall なり cd /usr/ports/mail/postfix; make install なりで済ます。このドキュメント作成時点では Postfix 2.9.2 がインストールされる。
今回のインストールでは make config で CDB の利用を有効化してみた。
インストール過程で/etc/mail/mailer.confを修正するか聞かれるので、私は修正をさせた。
Would you like to activate Postfix in /etc/mail/mailer.conf [n]? y
これで/etc/mail/mailer.confで指定しているmailプログラム群がsendmailからpostfixに変更される。
FreeBSDではデフォルトでsendmailが動作しているので、もし動作しているのであれば停止させる。
/etc/rc.d/sendmail stop
/etc/rc.confの設定
/etc/rc.conf ファイルに次を追加。
postfix_enable="YES"
もしsendmail_enable=“YES”の行があれば
sendmail_enable="NO"
に変更する。FreeBSD9.0では記述無しの場合“NO”となる模様。
この設定をしくじると大変な問題が起こる可能性がある。インターネットに配置するサーバであればなおさら。
とりあえずの追加・修正箇所を挙げる。詳しくはマニュアルなり書籍なりをどうぞ。
mydomain = hogehoge.co.jp myorigin = $mydomain mydestination = $myhostname, localhost.$mydomain, localhost, fugafuga.com, $mydomain virtual_alias_maps = cdb:/usr/local/etc/postfix/virtual home_mailbox = Maildir/
このメールサーバのドメインが hogehoge.co.jp である事を示す。
アドレスにドメインが指定されていない際に $mydomain(hogehoge.co.jp) が使われる。
このサーバが受け付けるドメインは $myhostname, localhost.$mydomain, localhost, fugafuga.com, $mydomain である。
このドメインが宛先になっているメールは、他メールサーバへリレーされない。
リレーをさせないサーバであれば、このドメイン宛て以外のメールは受付しない。
受信したメールアドレスの別名定義一覧は /usr/local/etc/postfix/virtual である。
たとえば、support@hogehoge.co.jp のアドレス宛に来たメールを tarou@hogehoge.co.jp が受信したい場合などに使う。
support@hogehoge.co.jp tarou
postfix起動前にpostmapコマンドでこのファイルをCDBの形式でインデクスファイルに変換する。
postmap cdb:/usr/local/etc/postfix/virtual
変換後のインデクスファイル /usr/local/etc/postfix/virtual.cdb が実際に使用される。
ユーザのメールボックスが ~/Maildir/ である事を示す。またこのメールボックスは Maildir形式であることを示す。
最後が “/” で終わる指定の場合、それはMaildir形式を使う事を意味している。
/usr/local/etc/rc.d/postfix start
postmapコマンドでインデクスファイルを再作成した場合は
/usr/local/etc/rc.d/postfix reload
を実行する。
メールのリレーを許してしまうと色々とまずい事になる。SPAMの発信源にされたり、やばいものの発信源にされたり。
お金を出して問題の有無と対処を依頼出来るならそうしたほうがいいし、お金が無いなら、無料で検査してくれるツールを公開している人たちがいるのでそれを使うもよし。
検索エンジンで「smtp リレー チェック」くらいのキーワードで探せば色々見つかるかと。
ただし、あなたが見つけたそのツールが妥当な検査を行うものなのかどうかはわからない。ある程度有名なところを使うようにしたほうがよい。