隔離管理のコマンド

隔離の管理には以下のコマンドを使用します。

quarantine-search [range:START/NUMBER] [sort:SORT_TYPE] [sender:EMAIL_SUBSTR] [rcpt:EMAIL_SUBSTR]* [period:DATE1[/DATE2]] [size:SIZE] [subject:'SUBJECT_SUBSTR'] [id:id-like] [order:ascent|descent] - 指定した条件で隔離内のメッセージを検索します。メッセージはSTART0で始まる数字)から始まり、NUMBERの数だけ出力されます。STARTおよびNUMBERが指定されていない場合、その他の条件を満たす、見つかったメッセージが全て出力されます。NUMBER 0値は全てのエレメントの出力を意味します。

以下は使用されているパラメータの説明です。

oSORT_TYPE - ソートの種類です。使用可能な値は以下のとおりです。
date (デフォルト) - メッセージが隔離に移された日付でソートします。
size - メッセージサイズでソートします。
sender - 送信者アドレスでソートします。
subject - メッセージの件名でソートします。
oEMAIL_SUBSTR - rcptまたはsenderフィールド内で検索するサブストリング。
operiod - メッセージが出力される期間です。指定されていない場合、メッセージは全期間に渡って出力されます。
oDATE1 - 指定された時間(その時間を含む)の後に隔離へ移されたメッセージを出力します。
oDATE2 - 指定された時間(その時間を含む)よりも前に隔離へ移されたメッセージを出力します。DATEの書式はISO書式YYYYMMDDTHHMMSSTは時間と日付の区切りです)を使用します。時間は動作中のDr.Web MailDを持つホストに対するローカルタイムとして設定、出力されます。
oSIZE - 指定された値(バイト)を超えるサイズのメッセージのみを返します。値が0に設定されている場合、サイズの制限はありません。
oSUBJECT_SUBSTR - メッセージの元の件名(コンポーネントによってメッセージが変更される前の)内にある、引用符で囲まれたサブストリングです。サブストリングに空白が含まれていない場合、引用符は省略することが出来ます。名前に引用符が含まれている場合、名前の前に'記号をもう1つ置く必要があります。
oorder - 結果を返す順番です(ascent - 昇順、descent  降順)。デフォルト値はdescentです。

パラメータの中に間違いがあると、quarantine-searchコマンドは実行されません。受信者のテンプレートが複数指定されている場合、全てのテンプレートを含んだメッセージのみが出力されます(論理演算ANDと同様)。rcpt以外の全てのパラメータでは、コマンドラインの最後に指定された値が使用され、rcptでは新しい値が入力される度に受信者の数が増えます。

出力書式:

N. id SENDER RCTPS

SIZE DATE SUBJECT

BLOCK_OBJECT1

BLOCK_OBJECT2

...

oN - 見つかったメッセージのシーケンス番号
oSENDER - エンベロープ内のメッセージ送信者
oRCPTS - エンベロープ内のメッセージ受信者
oSUBJECT - メッセージの件名(UTF8出力)
oSIZE - バイトでのメッセージサイズ
oDATE - メッセージを隔離に移動した日付
oBLOCK_OBJECTN - このメッセージをブロックしたオブジェクト

:

# quarantine-search

最も新しいものから始めて、隔離内の全てのメッセージのリストを返します。

# quarantine-search range:45/15 id:def/drweb/%

隔離内にある、drwebプラグインに対する最初の45個を抜かした最新15メッセージを返します。

# quarantine-search rcpt:vasya@pupkin.com

隔離内にある、受信者がvasya@pupkin.comである全てのメッセージを最新のものから返します。

# quarantine-search sort:size sender: period:20090101T100001/20090102T100000 size:5242880 id:def/vaderetro/%

2009年1月1日の午前10時から翌日の午前10時にvaderetroプラグインに対して受信し、サイズが5メガバイトよりも大きいメッセージを降順で出力します。

出力例:

quarantine-search

0. def/drweb/9/00021569.maild.BMED3y <ai@drweb.com> <alias_ai81@drweb.com>

829 20091117T102126 [EICAR] test2

EICAR Test File (NOT a Virus!)

1. def/backup/9/00021569.maild.3PLb8e <ai@drweb.com> <alias_ai81@drweb.com>

828 20091117T100213 [EICAR] test

quarantine-count [range:START/NUMBER] [sort:SORT_TYPE] [sender:EMAIL_SUBSTR] [rcpt:EMAIL_SUBSTR]* [period:DATE1[/DATE2]] [size:SIZE] [subject:'SUBJECT_SUBSTR'] [id:id-like] [order:ascent|descent] - quarantine-searchコマンドと同様ですが、メッセージではなく見つかったメッセージの総数が出力されます。

出力例:

quarantine-count

234

quarantine-remove id-like [part-of-email1, part-of-email2, ..] - 指定された受信者(サブストリングとして検索された)part-of-email1, part-of-email2, ...を、IDがid-likeと一致する(指定された受信者は全てエンベロープ内に存在する必要があります)メッセージのエンベロープから削除します。メッセージに受信者が残っていないか、削除するリストが指定されていない場合、メッセージが完全に隔離から削除されます。

:

# quarantine-remove %/backup/% drweb.com>

drweb.comで終わるアドレスを持つ全てのメッセージを、隔離およびバックアップから削除します。

# quarantine-remove % <foo@dwreb.com> <foo2@dwreb.com>

受信者が同時にfoo@dwreb.comおよびfoo2@dwreb.comである全てのメッセージを、隔離およびバックアップから削除します。

# quarantine-remove client2/drweb/E/00020EFE.maild.Q5FRbO

指定されたIDを持つメッセージが削除されます。

quarantine-limits - 隔離に設定された現在の制限を出力します。

出力書式:

client-id1: NUMBER/MAX-NUMBER SIZE/MAX-SIZE

...

total: NUMBER/MAX-NUMBER SIZE/MAX-SIZE

where:

oNUMBER/MAX-NUMBER - メッセージの現在の数、および数の上限です。上限が設定されていない場合0が出力されます。
oSIZE/MAX-SIZE - 隔離内のメッセージの現在のサイズ、およびサイズの上限です(バイト)。上限が設定されていない場合0が出力されます。
oclient-id1 - クライアントのIDで、それに対して情報を出力します。
ototal - 全てのデータベースに関する情報です。
quarantine-send id-like [email1 email2 ...] - 指定された受信者(email1 email2 ...)に隔離からメッセージを送信します。受信者が指定されていない場合、メッセージはエンベロープの元の受信者に送信されます。出力書式は全てのメッセージの送信結果によって定義されます。

RES in sending (to RCPTS_LIST): id

 

oRCPTS_LIST - メッセージ受信者の実際のリスト
oRES - 送信結果に応じてOKまたはERROR
oid - メッセージ本文のファイルパス

出力書式:

OK in sending (to <ai@drweb.com> <as@sd>): def/backup/6/00004DD6.maild.VQ80Ro

OK in sending (to <ai@drweb.com> <as@sd>): def/backup/6/00004DC6.maild.PWfqe3

quarantine-add id from rcpt1 rcpt2... - 指定されたファイルを隔離に加えます。fromはメッセージ送信者で、rcptNは受信者です。アドレスは山括弧<>で囲むことが出来ます。指定されたidを持つファイルが存在しない場合、エラーが出力されます。