Reputation IP Filter

Reputation IP Filterは、Dr.Web for UNIX mail serversに接続された各IPアドレスに関する統計情報の収集を可能にするテクノロジーで、収集されたデータに応じて、IPアドレスに対するアクションを実行します(例えば、そのIPを一時的にブロックなど)。このテクノロジーはスパマーの検出を可能にし、DHA攻撃も防ぎます。

Reputation IP FilterモジュールはReputationIPFilterパラメータでフィルタが1つだけ指定されている場合、またはMaxConcurrentConnectionパラメータの値が0に設定されている場合に有効になります。

デフォルトではReputationIPFilterパラメータの値はscore_filterに設定され、IPフィルタは有効になり、IPアドレスからの全てのメッセージおよびセッションに割り当てられた平均スコアに応じて、それらのアドレスがフィルタリングされます。

IPアドレスに関する全ての情報はRAMメモリ内に置かれ、定期的にファイルに保存されます。情報はdrweb-receiverプロセスがSIGALRMシグナルを受信する度に(StalledProcessingIntervalパラメータ設定に応じて自身でこのシグナルを作成します)、またはdrweb-receiver処理が停止した際にファイルに保存されます。ファイルはdrweb-receiverが起動した時のみ読み込まれます。

ファイルは、ReputationIPFilterパラメータでフィルタが1つ指定されてさえいれば、保存およびロードされます。IP接続が無い場合、情報は収集されず保存されません。IP接続に関する情報は[General]セクションのBaseDirパラメータで指定されたディレクトリにあるipv4.binおよびipv6.binファイルに(それぞれIPv4およびIPv6アドレスに対して)保存されます。ファイル保存中および読み込み中にエラーが発生した場合、この情報はログに出力されます。これらのファイルに保存されたデータはバイナリでOS依存なので、他のシステム上での使用は推奨できません。

このIPがTrusted IPとされていない場合、Reputation IP Filterモジュール内のIPチェックがSessionRestrictionsステージの直後に実行されます(*RestrictionsおよびTrusted IPについての詳細は[Receiver] セクションを参照してください)。

Reputation IP FilterにブロックされたくないIPアドレスがある場合、SessionRestrictionsパラメータ内でそれらをTrusted IPにする必要があります。Reputation IP Filterによって誤ってブロックされてしまったIPアドレスをブロック解除する場合も、それらをSessionRestrictionsパラメータ内でTrusted IPにしてください。その後のこのIPからの接続は全てReputation IP Filterに無視されます。

Reputation IP filter によって、収集された統計情報に応じてスコアをIPアドレスに割り当てることができ、またIPアドレスの合計スコアが閾値よりも大きい場合にこのIPアドレスを一時的にブロックすることも出来ます。

使用可能なフィルタはanti_dhaerrors_filterscore_filterです。

Reputation IP filter はIPアドレスがSessionRestrictionの検査を通過するとすぐにそれを検査します(trustedになっていない場合。SessionRestrictionsパラメータ内でTrusted IPとされた場合はReputation IP filterには検査されません)。

フィルタはカンマで区切って列挙され、指定された順番で検査されます。各フィルタに対して最初に名前が指定され、次にそのパラメータが空白で区切って指定されます(パラメータは全てオプションです)。

パラメータはNAME=VALのペアとして設定されます(値と等号の間に空白は置かないでください)。

フィルタの一般パラメータには以下のものがあります(Uは正の整数で、Iは整数、Dは浮動小数点数です)。

min_msgs=U - drweb-maildがフィルタをアクティベートする為に必要な、検査を通過するメッセージの最小限の数の指定です。 値が0に設定されている場合、このパラメータは無視されます。
min_errors=U - フィルタをアクティベートする為に必要な、SMTPセッションのステージに登録されるエラーの最小限の数の指定です。値が0に設定されている場合、このパラメータは無視されます。
min_wrong_rcpts=U - フィルタをアクティベートする為に必要な、SMTPクライアントによって転送される無効な受信者(RCPT TOコマンドの後に拒否された)の最小限の数の指定です。値が0に設定されている場合、このパラメータは無視されます。
min_conn=U - フィルタをアクティベートする為に必要な、IPアドレスからの接続の最小限の数を指定します。値が0に設定されている場合、このパラメータは無視されます。
block_period=T - フィルタの制限内でIPアドレスが通過しない場合にブロックする期間の指定です。T{time} で記述します。値が0に設定されている場合、このフィルタの制限内でIPが通過しない場合でもブロックは実行されません。
score=I - 現在のセッション内の全てのメッセージに割り当てられるスコアの指定で、このスコアはIPアドレスの一般スコアにも追加されます。スコア値が0でない場合、block_periodの代わりにこのパラメータ値が適用され、ブロックする代わりにスコアがIPアドレスに割り当てられます。

各フィルタに対してユニークなパラメータのセット、および一般パラメータに対する固有のデフォルト値のセットがあります。

anti_dha - DHA(Directory Harvest Attack)攻撃を防ぎます。このフィルタを使用するには、保護するアドレスをProtectedEmailsパラメータの値として省略せずに指定する必要があります。

固有のパラメータ:

owrong_per_valid_rcpts=D - 無効なメッセージ受信者の数(RCPT TOコマンドの後に拒否された)と有効な受信者数の間の比率で、フィルタの動作を定義するメインのパラメータです。有効な受信者が存在しない場合、この値は1と見なされます。値が0に設定されていた場合、フィルタは無視されます。

デフォルト値: 10.0

一般パラメータのデフォルト値:

omin_msgs=0
omin_errors=0
omin_wrong_rcpts=20
omin_conn=0
oblock_period=2h
oscore=0
errors_filter - 特定のIPアドレスから確立されたSMTPセッションの間に発生したエラーの数に応じてIPアドレスをフィルタリング出来るようにします。

固有のパラメータ:

oerrors_per_msg=D - SMTPセッションの間に生じたエラーの数とdrweb-maildに渡されたメッセージの数の比率です。drweb-maildに渡されたメッセージが無い場合、その数は1とみなされます。パラメータ値が0に設定されている場合、この検査は無視されます。

デフォルト値: 0

oerrors_per_conn=D - SMTPセッションの間に生じたエラーの数と、このIPアドレスからの接続数の比率です。フィルタは、パラメータ値が0以外で、このIPアドレスからの接続が少なくとも1つある場合にのみ適用されます。

デフォルト値: 2.0

これらのパラメータが両方指定されている場合、errors_per_msgパラメータが先に検査され、その後errors_per_connパラメータが検査されます。どちらのパラメータ値も0に設定されている場合、フィルタは無視されます。

一般パラメータのデフォルト値:

omin_msgs=0
omin_errors=100
omin_wrong_rcpts=0
omin_conn=50
oblock_period=2h
oscore=0
score_filter - 全てのメッセージ、およびこのIPアドレスからのセッションに割り当てられた平均スコアに応じてIPアドレスをフィルタリング出来るようにします。一般Unified Scoreシステムに含まれ、例えば、確立するSMTP接続ステージ上でスパマーをブロックすることが出来ます。

固有のパラメータ:

oscore_per_msg=D - 特定のIPアドレスに対する一般スコア(そのIPから送信されたメッセージの全てのスコアとそのIPによって開始された全てのセッションのスコアの合計)とdrweb-maildに渡されたメッセージ数の比率です。drweb-maildに渡されたメッセージが無い場合、その数は1とみなされます。パラメータ値が0に設定されている場合、この検査は無視されます。

デフォルト値: 0

oscore_per_conn=D - 特定のIPアドレスに対する一般スコアとそのIPアドレスからの接続数の比率です。フィルタは、パラメータ値が0以外で、このIPアドレスからの接続が少なくとも1つある場合にのみ適用されます。

デフォルト値: 100.0

これらのパラメータが両方指定されている場合、score_per_msgパラメータが先に検査され、その後score_per_connパラメータが検査されます。どちらのパラメータ値も0に設定されている場合、フィルタは無視されます。

一般パラメータのデフォルト値:

omin_msgs=0
omin_errors=0
omin_wrong_rcpts=0
omin_conn=100
oblock_period=2h
oscore=0

:

ReputationIPFilter = errors_filter score=20, score_filter

最初のフィルタは、SMTPセッションの間にあまりに多くのエラーを発生したIPアドレスによって確立されたセッション内の全てのメッセージにスコア20を設定します。2番目のフィルタは、そこからの接続数に対して平均スコアが大きすぎるIPアドレスを全てブロックします。