Milterプロトコルを使用した動作

milterプロトコル経由によるPostfixとの連携は以下の方法で行います。

drweb-milterReceiverコンポーネントとして動作する)のトランスポートアドレスによって定義されたトランスポート接続経由で、PostfixがMilter APIから内部コマンドとメッセージを受け取ります。メッセージはメールセッションのステージ(helomail from:rcpt to:など)に応じて、セグメントに分けられて送信され、drweb-milterモジュールによって一時ディレクトリに保存されます。drweb-milterは、メッセージに適用するアクションに関する命令をMilter API経由でPostfixに送ります。

Milter APIはマルチスレッドライブラリで、同時に複数のメールセッションを処理することができます。上記に記載した統合スキーマにおいて、Postfixはクライアント、drweb-milterはサーバとなります。従って、Postfixのmail.cf設定ファイル内でdrweb-milterモジュールのアドレスを指定する必要があり、この接続に適したクライアントアドレスがPostfixによって選択されます。

drweb-milterモジュールは、他のトランスポート接続経由でdrweb-maildモジュールにコマンドを送り、応答を待ちます。

上記に記載したスキーマにおいて、drweb-milterモジュールはPostfixlインターフェースとdrweb-maildモジュール間のエージェントとして動作します。Postfixとdrweb-milterモジュールは別々のコンピューター上で動作することが可能ですが、drweb-milterモジュールとdrweb-maildモジュールは同じコンピューター上で動作する必要があります。