最終更新:2009-08-27 (木) 03:06:42 (5498d)
Postfix
Top / Postfix
インストール
/etc/init.d/sendmail stop chkconfig sendmail stop
yum install postfix alternatives --config mta chkconfig postfix on
設定
/etc/postfix/main.cf
myhostname = mail.example.com mydomain = example.com myorigin = $mydomain inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain home_mailbox = Maildir/ message_size_limit = 10485760
SMTP-AUTHの設定
smtpd_sasl_auth_enable = yes smtpd_sasl_local_domain = $myhostname smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
Maildirのスケルトンの作成
mkdir -p /etc/skel/Maildir/{new,cur,tmp} chmod -R 700 /etc/skel/Maildir/
バーチャルホスト
バーチャルユーザーの設定
/etc/postfix/virtual //hoge.com用設定 hoge.com 設定名 user1@hoge.com UNIXユーザ名 user2@hoge.com UNIXユーザ名 //huge.com用設定 huga.com 設定名 user1@huga.com UNIXユーザ名 user2@huga.com UNIXユーザ名
設定の反映
postmap /etc/postfix/virtual /etc/init.d/postfix reload
OP25B対策
- 現象:ホスティングのサーバにSMTPで接続しようとしてタイムアウトになる
- 解決策:サブミッションポートあてに送るようにすればOP25Bに引っかからない。
- サブミッションポートを使うにはSMTP-AUTHの設定をする必要がある
サブミッションポートの有効化
/etc/postfix/master.cfの
submission inet n - n - - smtpd
の行のコメントアウトを外せば良い。
OCNの場合
- Postfixを使用していてプロバイダがOCNの場合、Submissionポート(587番)の中継用SMTPサーバに転送する必要があるが、SMTP-AUTH時にPostfixがデフォルトでMAIL FROM: に"AUTH=<>"を付加するため、「said:555 Unsupported option: AUTH=<> (in reply to RCPT TO command)」と拒否されてしまう。
- 対策としては、PostfixにパッチをあてMAIL FROM: に"AUTH=<>"を付加しないようにするか、条件付で外部でSMTP中継をしてくれるサービスがあるのでそれを使用する方法もある。
http://www.aconus.com/~oyaji/mail2/op25b.htm
コマンド
- postfix
- メールシステムの 活動を制御します。メールシステムの起動や停止、その他いくつかの 管理操作のためのインターフェースです。このコマンドはスーパーユーザ 専用です。
- postalias
- alias データベースを保守します。 これは newaliases コマンドの裏で 動くプログラムです。
- postcat
- キューファイルの中身を表示します。これは制限された、予備的な ユーティリティです。このプログラムは キューファイルの 編集もできるような、よりパワフルな何かと置き換えられることに なるでしょう。
- postconf
- main.cf パラメータを表示します: 実際の値やデフォルト値、 デフォルトでない設定のパラメータなど。これは制限された、予備的な ユーティリティです。このプログラムはリストするだけでなくmain.cf ファイルの編集も可能な、よりパワフルな何かと置き換えられることに なるでしょう。
- postdrop
- メールを maildrop ディレクトリに置くために、 sendmail コマンドによって起動される メール投函ユーティリティです。
- postkick
- 例えば シェルスクリプトなどの中で使うことができる内部通信チャネルを作ります。
- postlock
- 例えば シェルスクリプトなどの中で使われる Postfix 互換のメールボックスの ロックを提供します。
- postlog
- Postfix 互換のログ出力をシェルスクリプトに提供します。
- postmap
- canonical や virtual 他のような Postfix 検索テーブルを 保守します。UNIX -makemap コマンドの従兄弟です。 The postqueue コマンドは メールキューをフラッシュしたりリストしたりするために、 sendmail コマンドから起動される ユーティリティです。
- postsuper
- キューを保守します。古いテンポラリファイルを削除し、 キューディレクトリのハッシュ深度の変更後に、キューファイルを 正しいディレクトリに移動します。このコマンドはメールシステムの 起動時に実行されます。