milterを使った効果的な迷惑メール対策 - milter manager

milter-test-client

milter-test-client — milter側のmilterプロトコルを実装したプログラム

名前

milter-test-client - milter側のmilterプロトコルを実装したプログラム

書式

milter-test-client [ オプション ... ]

説明

milter-test-clientはMTA側から渡ってきた情報を表示するだけの milterです。マクロも含めてMTA側から渡っている情報を表示する ので、MTA側のmilterの設定を確認するために利用できます。

Postfixのアーカイブの中にも同様のツールがあります。 src/milter/内にあるtest-milter.cがそれで、Postfixのmilterの実 装のテストにも使っているようです。ただし、test-milterはマクロ までは表示してくれません。もし、マクロを利用しているmilterが 期待通りに動かない場合の問題調査を行うのであれば、 milter-test-clientが役立つでしょう。

オプション

--help

利用できるオプションを表示して終了します。

--connection-spec=SPEC

接続を待ち受けるソケットを指定します。SPECの書式は次のう ちのどれかです。

  • unix:パス

  • inet:ポート番号

  • inet:ポート番号@ホスト名

  • inet:ポート番号@[アドレス]

  • inet6:ポート番号

  • inet6:ポート番号@ホスト名

  • inet6:ポート番号@[アドレス]

例:

  • unix:/tmp/milter-test-client.sock

  • inet:10025

  • inet:10025@localhost

  • inet:10025@[127.0.0.1]

  • inet6:10025

  • inet6:10025@localhost

  • inet6:10025@[::1]

--log-level=LEVEL

ログに出力する項目を指定します。複数の項目を指定する場合は「|」で区 切って「error|warning|message」というようにします。

LEVELに指定できる項目は ログ一覧 - 出力レベル を参照してください。

--log-path=PATH

ログの出力先のパスを指定します。指定しない場合は標準出力に出力します。 「-」を指定しても標準出力に出力します。

--verbose

実行時のログをより詳細に出力します。

「--log-level=all」を指定した場合と同じ効果があります。

--syslog

Syslogにもログを出力します。

--no-report-request

MTAから受け取った情報を表示しません。

--report-memory-profile

milterセッションが終了する毎にメモリ使用量を表示します。

MILTER_MEMORY_PROFILE環境変数をyesに設定するとより詳細な 情報を表示します。

例:

% MILTER_MEMORY_PROFILE=yes milter-test-client -s inet:10025

--daemon

デーモンプロセスとして起動します。

--user=USER

実効ユーザをUSERとします。root権限が必要です。

--group=GROUP

実効グループをGROUPとします。root権限が必要です。

--unix-socket-group=GROUP

SPECで「unix:パス」を指定したときにUNIXドメインソケットの グループを変更します。

--n-workers=N_WORKERS

メールを処理するプロセスを N_WORKERS 個起動します。 指定できる値は0以上、1000以下です。0のときにワーカープロセスを使用し ません。

注意: この項目は実験的な機能扱いです。

--event-loop-backend=BACKEND

イベントループのバックエンドを指定します。 BACKEND に指定できる値は、 gliblibev のいずれかです。 glibをバックエントとして使う場合、以下の諸注意に目を通してください。

注意: milter-managerは1プロセスあたりの処理性能を高める都合上、 イベント駆動ベースのモデルで実装されています。 glibを用いて実現する場合、コールバックにより表現されます。 この時、glibのコールバックの登録数の上限により通信回数が制限されることに注意してください。 この制限事項はglibバックエンド対してのみあります。

--packet-buffer-size=SIZE

end-of-message時に送信パケットをバッファリングするための バッファサイズを指定します。パケットの量が SIZE バイ ト以上になるとまとめてパケットを送信します。0を指定すると バッファリングしません。

既定値は0KBで、バッファリングしません。

--version

バージョンを表示して終了します。

終了ステータス

MTAからの接続を受け付ける状態になった場合は0になり、そうでな い場合は0以外になります。milter-test-clientはソケットの書式が 間違っている場合か、ソケットまわりの問題が起こると接続を受け 付ける状態になれません。ソケットまわりの問題とは、例えば、ポー トがすでに使用されているとか、UNIXドメインソケットを作成する パーミッションがない、などです。

以下の例では、10025番ポートでMTAからの接続を待つmilterを起動 します。

% milter-test-client -s inet:10025