このセクションの内容:
•概要 •ルールフォーマット。 •条件。 •アクション。 •ルールで使用される変数。 •不要なWebサイトと脅威のカテゴリー。 •ルール条件で使用できる設定パラメータ。 •設定ファイルにルールを保存する機能。 概要
ルールは、IF <conditional_part> THEN <action_part>などのプロダクションルールで表されます。<conditional_part>の部分には、次のスキャンタイプが指定されます。「変数値が指定されている(いない)」または「変数値が指定セットに含まれている(いない)」。<action_part>には、一連のアクション(1つ以上)が含まれ、各アクションは最終的な解決(スキャンしたオブジェクトをスキップまたはブロックする)、または「スキャンしたオブジェクトの機能を変更」、「指定変数にセット値を割り当て」、または「指定変数の値の配列へセット値を追加」などの修正アクションになります。
ルールアクションの一部は、条件部分がtrueの場合にのみ実行されます。条件部分がfalseと評価された場合、この規則で指定されたアクションは実行されず、プログラムは次のルールにジャンプします。最終的な解決が実行されるまで、ルールは下に向かって垂直に評価されます。最終的な解決が実行されると、以降のルール(存在する場合)はすべて無視されます。ルールが実行されるとき、<action_part>内のアクションが左から右への指定の順序で実行されることが重要です。ルール処理を中断する一連のアクションに最終的な解決策がある場合、<action_part>に指定された残りのアクションは実行されません。
ルールフォーマット
ルール作成のフォーマット:
[<condition>[, <condition>[, …]]] : <action>[, <action>[, …]]
|
ルールの条件付き部分(':'の前)がない場合は、その部分のアクションは条件なしで実行されます。ルールの条件部分がない場合は、 ':'の区切り文字を省略できます。条件部分の条件とアクション部分のアクションとの間のコンマは、論理積(「and」)の役割を果たします。条件部分はすべての条件がtrueである場合にのみtrueになり、アクション部分に指定されたすべてのアクションは、ルールの処理を中断する最終的な解決まで、左から右への指定の順序で実行されます。ルールでは、キーワード、変数名、設定パラメータにとって登録は重要ではありません。
条件
次のタイプの条件は、ルールの条件部分で使用できます。
条件
|
条件の意味
|
<variable> <value >
|
指定された変数の値が設定値と一致している。
値の指定が可能な変数にのみ使用できます。
|
<variable> [not] in <set of values>
|
指定された変数の値が、指定された値のセット<set of values>に含まれている(notの場合 - 指定された値のセットに含まれない)。
|
<variable> [not] match <set of values>
|
指定された変数の値は、指定された値のセットにある任意の正規表現と一致する(notの場合 - 指定された値のセットのどの表現とも一致しない)。

|
正規表現は、POSIX構文(BRE、ERE)またはPerl構文(PCRE、PCRE2)のいずれかを使用して指定されます。
|
|
<variable> [not] gt <value>
|
指定された変数の値が設定値以下。
単一の値を持つことができる変数にのみ使用できます。
|
<variable> [not] lt <value>
|
指定された変数の値が設定値以上。
単一の値を持つことができる変数にのみ使用できます。
|
*)オプションのキーワードnotは否定を意味します。
変数と比較される<set of values>の部分は、以下の方法で指定できます。
構文
|
意味
|
(<value 1>[, <value 2>[, …]])
|
括弧内には、チェックする値のセットを直接列挙します(1つ以上の値)。値が1つしかなく、in条件が使用されている場合は、括弧を省略できます(場合によっては<variable> <value>になります)。
|
"<section>.<parameter>"
|
特定の設定パラメータに現在割り当てられている値のセット。引用符の間には、値(または値のセット)のチェックが必要な設定パラメータの名前を指定します(パラメータが属するセクションの名前も指定する必要があります)。
条件として使用できるパラメータのリストは、ルールが設定されているコンポーネントによって異なります。リストは以下に示します。
|
file("<file name>")
|
値の一覧はテキストファイル<file name>から読み込まれます(1つのファイル文字列 - 1つのリスト要素、文字列の先頭と末尾のスペースは無視されます)。ファイルへのパスは絶対パスである必要があります。<file name>に引用符とアポストロフィが含まれている場合は、それらをエスケープ('\')する必要があります。

|
ファイルサイズは64 MB未満である必要があります。
設定ファイルのダウンロード中に1回、ファイルの内容が読み込まれ、ルールに挿入されます。ファイルがない、またはファイルサイズが超過すると、ダウンロード中にエラーx102が表示されます。
Dr.Web for UNIX Internet Gatewaysの動作中にファイルの内容が変更された場合、変更を適用するには、drweb-ctlのreloadコマンドを使用してファイルをリロードする必要があります。
ファイルからの値のセットは、すべての変数に使用できるわけではありません。ファイルからの値のセットを用いて値のスキャンに変数を使用できるかどうかは、以下に示します。
|
|
<type_of_LOOKUP_request>@<tag>[@<value>]
|
値の配列は外部データソースからDr.Web LookupDを介して要求されます。<LOOKUP_query_type>はソースのタイプです。<tag>は、チェックされたパラメータのサンプリングのための接続を説明するセクションの名前です。オプションの<value>は、データソースから抽出された値の配列内に必要な値です。

|
Dr.Web LookupDの値は、すべての変数に使用できるわけではありません。また、条件の<scanning>を適用できない変数もあります。Dr.Web LookupDを用いて値のスキャンに変数を使用できるかどうかは、以下に示します。
|
|
変数が複数の値を持つ場合は、指定された変数<variable>の現在値と指定されたセット<set of values>の共通集合が空でない場合に、<variable> in <set of values>の条件はtrueになります。逆の場合は、not inがtrueになります。たとえば、Xが変数で、現在の値としてa、b、cが設定されているとします。その場合は、
•X in (a, b)は、aとbの値が両方のセットにあるため、trueになります。 •X in (a, d, e)は、aの値が両方のセットにあるため、trueになります。 •X in (d, e)は、変数の値(a、b、c)が(d、e)のセットにないため、falseになります。 •X in ()は、変数の値の配列が空白でないため、falseになります。 •X not in ()は、変数の値の配列が空白でないため、trueになります。 •X not in (d, e)は、変数の値(a、b、c)がセット(d、e)にないため、trueになります。 •X not in (a, d, e)は、aが両方のセットにあるため、falseになります。 以下の変数の説明では、各変数に値のセットを採用できるかどうかを示しています。
アクション
アクションは、オブジェクトの受け渡しを許可するかどうかを決定する最終的な解決策と、基本的なルールの条件をチェックするときに使用できる、いくつかの変数の値を変更するアクションに分かれます。
最終的な解決
解決策
|
説明(意味)
|
一般的な解決策
|
Pass
|
トラフィックをスキップします(接続の作成を許可し、オブジェクトを受信者に送信します)。下方ルール(ある場合)は使用されません。
|
Block as <reason>
|
トラフィックをブロックします(接続の作成をブロックし、オブジェクトを受信者に送信します)。下方ルール(設定されている場合)は使用されません。
ブロックの<reason>はログに記録されます。同じ理由が、ユーザーに表示されるブラウザ通知を定義する際にも使用されます。Blockの<reason>には2つの標準の理由を使用できます。
•BlackList - ブラックリストに含まれているためデータをブロックします。 •_match - ルールの実行をトリガーするカテゴリーに属する脅威がWebリソースまたはファイルに含まれているため、ブロックします(*_category in (Ξ)の条件の場合)。_match変数には、ブロックされたカテゴリーのリストに一致したものが含まれます。 |
最終的な解決を処理する機能:
•Block as BlackListは、常に「ブラックリストに含まれる」として処理されます(この解決策に指定された条件を考慮しません)。 •Block as _matchは、_matchが空白でない場合は「_matchカテゴリーに属する」ものとして処理されます。 •Block as _matchは、_matchが空白の場合は「ブラックリストに含まれる」として処理されます(この解決策に指定された条件を考慮しません)。 •すべてのルールが考慮されていて、解決策のあるルールがいずれも実行されない(またはルールに解決策がない)場合、この状況はPassアクションと同じです。 変数の値の変更
変数値を変更するには、次の命令を使用します。
SET <variable> = ([<value 1>[, <value 2>[, …]]])
|
大括弧内に何もない場合、変数値のリストは消去されます。値が1つしかない場合は、大括弧を省略して次の構文を使用する必要があります。
SET <variable> = <value >
|
ルールで使用される変数
ルールの中で変数を示すときは、記号の登録は考慮されません。複数のアクション名を持つ変数は、スペース用のアンダースコアを使用しても使用しなくても保存できます。したがって、レコードvariable_name、VariableName、variablenameは同じ変数を表します。このセクションでは、すべての変数はアンダースコアを使用して保存されます(つまり、variable_name書き込みオプションが使用されます)。
変数
|
説明
|
使用可能
|
条件部分
|
アクション部分(SET)
|
protocol
|
接続で使用されるネットワークプロトコルタイプ。
この変数は、複数の値を指定することができます。
使用可能な値:HTTP、SMTP、IMAP、POP3。
使用方法:
•変数値は、SSL/TLSが使用されていない場合、またはSSLのラップ解除が許可されている場合にのみ定義できます。 •Dr.Web ICAPDルールにHTTP以外の値を指定することは意味がありません。Dr.Web ICAPDにはHTTPしか指定できません。 •変数値をリストとして記述したファイルを参照することも可能です。 例:
protocol in (HTTP, SMTP)
protocol in (POP3)
protocol in file("/etc/file")
|
Yes
|
No
|
sni_host
|
SSL/TLSを介して接続が確立されるSNIホスト(アドレス)。
使用方法:
•SSLが使用されず、変数の値が定義されていない場合、条件はfalseと評価されます。 •Dr.Web ICAPDルールに使用しても意味がありません(SSLは処理されません。そのため条件は常にfalseと評価されます)。 •変数値をリストとして記述したファイルを参照することも可能です。 •proc変数と組み合わせて使用できます(以下を参照)。 例:
sni_host not in ('vk.com', 'ya.ru')
sni_host in "LinuxFirewall.BlackList"
sni_host in file("/etc/file")
|
Yes
|
No
|
sni_category
|
お使いのコンピューターがSSL/TLSを介して接続しようとしているホストで、ホスト(SNIヘッダーから識別される)が属するカテゴリー(AdultContentなど)のリスト(Webリソースカテゴリーのデータベースに準ずる)。
この変数は、複数の値を指定することができます。
使用方法:
•SSLが使用されず、変数の値が定義されていない場合、条件はfalseと評価されます。 •Dr.Web ICAPDルールに使用しても意味がありません(SSLは処理されません。そのため条件は常にfalseと評価されます)。 •Dr.Web ICAPDで使用されるルールの場合、スキャン結果によりホストが事前に定義されたカテゴリー(「安全な」ホスト)のいずれにも属していなくても、not inが使用される条件はtrueになります。Dr.Web Firewall for Linux(SpIDer Gate)のルールでは、この場合の条件はfalseになります。 •Webリソースカテゴリーのデータベースがインストールされていない場合、変数はルールで使用できません(ルールの条件がtrueであるかどうかを確認しようとすると、エラーx112が発生します)。 •変数値をリストとして記述したファイルを参照することも可能です。 例:
sni_category not in (AdultContent, Chats)
sni_category in "LinuxFirewall.BlockCategory"
sni_category in (FreeEmail)
sni_category not in file("/etc/file")
|
Yes
|
No
|
url
|
クライアントからリクエストされたURL。指定された文字列または正規表現と比較できます。
使用方法:
•Dr.Web ICAPDのルールでのみ使用できます。 •Dr.Web LookupDを使用してこの変数の値を確認できます。 •変数値をリストとして記述したファイルを参照することも可能です。 •proc変数と組み合わせて使用できます(以下を参照)。 例:
url match ("drweb.com", "example\..*", "aaa\.ru/")
url match "ICAPD.Adlist"
url not match LDAP@BadURLs
url match file("/etc/file")
|
Yes
|
No
|
url_host
|
接続が確立されるURL/ホスト。
使用方法:
•変数値は、SSL/TLSが使用されていない場合、またはSSLのラップ解除が許可されている場合にのみ定義できます。 •Dr.Web LookupDを使用してこの変数の値を確認できます。 •変数値をリストとして記述したファイルを参照することも可能です。 例:
url_host in ('vk.com', 'ya.ru')
url_host not in "ICAPD.Whitelist"
url_host in LDAP@hosts
url_host not in file("/etc/file")
|
Yes
|
No
|
url_category
|
URL/ホストが属するカテゴリーのリスト。情報はカテゴリーのデータベースまたはDr.Web Cloudの応答に基づきます。
この変数は、複数の値を指定することができます。
使用方法:
•変数値は、SSL/TLSが使用されていない場合、またはSSLのラップ解除が許可されている場合にのみ定義できます。 •Dr.Web MailDとDr.Web ICAPDで使用されるルールの場合、スキャン結果によりURL/ホストが事前に定義されたカテゴリー(「安全な」URL/ホスト)のいずれにも属していなくても、not inが使用される条件はtrueになります。Dr.Web Firewall for Linux(SpIDer Gate)のルールでは、この場合の条件はfalseになります。 •Webリソースカテゴリーのデータベースがインストールされていない場合、変数はルールで使用できません(ルールの条件がtrueであるかどうかを確認しようとすると、エラーx112が発生します)。 •変数値をリストとして記述したファイルを参照することも可能です。 例:
url_category not in (AdultContent, Chats)
url_category in "LinuxFirewall.BlockCategory"
url_category in (FreeEmail)
url_category in file("/etc/file")
|
Yes
|
No
|
threat_category
|
転送されたデータにある、脅威が属するカテゴリーのリスト(ウイルスデータベースからの情報に準ずる)。
この変数は、複数の値を指定することができます。
使用方法:
•変数値は、SSL/TLSが使用されていない場合、またはSSLのラップ解除が許可されている場合にのみ定義できます。 •Dr.Web ICAPDで使用されるルールの場合、スキャン結果によりオブジェクトが事前に定義されたカテゴリー(「安全な」オブジェクト)からの脅威を含んでいなくても、not inが使用される条件はtrueになります。Dr.Web Firewall for Linux(SpIDer Gate)のルールでは、この場合の条件はfalseになります。 •変数値をリストとして記述したファイルを参照することも可能です。 例:
threat_category in "LinuxFirewall.BlockThreat"
threat_category not in (Joke)
threat_category in file("/etc/file")
|
Yes
|
No
|
user
|
その管理者権限によりトラフィックを送信(または受信)しているプロセスが起動されるユーザー名。
使用方法:
•Dr.Web ICAPDルールでは、プロキシサーバーで認証されたユーザーの名前が暗示されます(プロキシサーバーが認証をサポートしている場合)。プロキシサーバーがユーザー認証をサポートしていない場合、変数には空の値が入ります。 •Dr.Web LookupDを使用してこの変数の値を確認できます。 •ユーザーが特定のユーザーグループに属しているかどうかを調べる必要がある場合、グループのリストを返すLDAPまたはActive Directoryデータソースを使用して、必要なグループ(ユーザーがそのメンバーであるかどうかを確認するグループ)の名前を指定します。<type of the source for LookupD>@<source of groups>@<required group>の形式を使用します。Active Directory(AD@)へのリクエストはグループのリストのみを返すため、これらのリクエストでは@<required group>部分を使用する必要があります。 •変数値をリストとして記述したファイルを参照することも可能です。 例:
user in ('user1', 'user2')
user in AD@Winusergroups@Admins
user in LDAP@AllowedUsers
user not in file("/etc/file")
|
Yes
|
No
|
src_ip
|
接続を確立しているホストのIPアドレス。
使用方法:
•Dr.Web LookupDを使用してこの変数の値を確認できます。 •変数値をリストとして記述したファイルを参照することも可能です。 例:
src_ip not in (127.0.0.1, 10.20.30.41, 198.126.10.0/24)
src_ip in LDAP@AllowedAddresses
src_ip not in file("/etc/file")
|
Yes
|
No
|
proc
|
接続を確立するプロセス(完全な実行可能パス)。
使用方法:
•Dr.Web ICAPDルールに使用しても意味がありません(コンポーネントにはプロセスに関する情報は含まれません。そのため条件は常にfalseと評価されます)。 •変数値をリストとして記述したファイルを参照することも可能です。 •sni_host、url、dst_addressの各変数と組み合わせて使用できます(以下を参照)。 例:
proc in ('/usr/bin/ls')
proc not in ('/home/user/myapp', '/bin/bin1')
proc in "LinuxFirewall.ExcludedProc"
proc in file("/etc/file")
|
Yes
|
No
|
direction
|
接続におけるトラフィックのタイプ。
使用可能な値:request(クライアントリクエスト)、response(サーバー応答)。
この変数は複数の値を同時に指定することはできません。matchとinの条件は適用できません。
例:
direction request
direction not response
|
Yes
|
No
|
divert
|
接続の方向。
使用可能な値:input(受信 - ローカルホストの外部から作成/開始)、output(送信 - ローカルホストで作成/開始)。
この変数は複数の値を同時に指定することはできません。matchとinの条件は適用できません。
例:
divert input
divert not output
|
Yes
|
No
|
content_type
|
接続中に転送されるデータのMIMEタイプ。
使用方法:
•SSL/TLSが使用されていない場合、またはSSLのラップ解除が許可されている場合にのみ定義できます。 •式「*/*」は、任意のMIMEタイプのデータと、ヘッダーContent-TypeなしのHTTP応答に一致します。 •Dr.Web LookupDを使用してこの変数の値を確認できます。 •変数値をリストとして記述したファイルを参照することも可能です。 例:
content_type in ("multipart/byteranges", "application/octet-stream")
content_type not in ("text/*", "image/*")
content_type not in ("audio/*")
content_type in ("*/*")
content_type in LDAP@BlockedContent
content_type not in file("/etc/file")
|
Yes
|
No
|
(proc, <variable>)
|
プロセスのネットワークアクティビティ。ここで、procは完全なプロセス実行可能パス(上記を参照)で、<variable>はアクティビティのタイプを定義し、次のいずれかの値になります。
•sni_host - SSL/TLSを介して接続が確立されるSNIホスト(アドレス)。 •url - クライアントによってリクエストされたURL(上記を参照)。 •dst_address - プロセスが接続を確立するネットワークアドレス(<IP address>:<port>)。 使用方法:
•条件一致({<Proc_reg>, <Var_reg>}[, …])でのみ使用します。ここで、<Proc_reg>はprocの正規表現で、<Var_reg>は<variable>の正規表現です。 •Dr.Web ICAPDルールに使用しても意味がありません(コンポーネントにはプロセスに関する情報は含まれません。そのため条件は常にfalseと評価されます)。 例:
(proc, url) match ({"/usr/bin/wget", "www\.ya\.*"})
(proc, dst_address) match ({"/usr/bin/.*", "192\.168\.1\.\d+:12345"})
|
Yes
|
No
|
unwrap_ssl
|
SSL/TLSを介して転送されたトラフィックがラップ解除されているかどうか。
使用可能な値:true、false。
使用方法:
•変数には常に任意の値があります。命令SET unwrap_ssl = ()は不可能です。 •変数は条件として使用できません。SSLのラップ解除のみ管理する必要があります(こちら側がトリガーしたブロッキングについての通知を含むWebページを表示するためなど)。 •Dr.Web ICAPDルールに使用しても意味がありません(SSLは処理されません。変数の変更はルールのプロセスに影響しません)。 例:
SET unwrap_ssl = TRUE
set Unwrap_SSL = false
|
No
|
Yes
|
http_templates_dir
|
HTTPリクエストをブロックする際の通知ページテンプレートが保存されているディレクトリへのパス。
パスが「/(スラッシュ)」で始まる場合は絶対パスになります。それ以外の記号で始まる場合は、相対パスになります。後者の場合、TemplatesDirパラメータで指定されたディレクトリに相対して指定されます。
使用方法:
•これはHTTP(S)プロトコルでのみ使用できます。 例:
SET http_templates_dir = "/etc/mytemplates"
set http_templates_dir = "templates_for_my_site"
|
No
|
Yes
|
不要なWebサイトと脅威のカテゴリー
1.望ましくないWebサイトのカテゴリー(変数sni_category、url_categoryでの使用)
文字・記号
|
Webサイトのカテゴリー
|
InfectionSource
|
悪意のあるソフトウェアを含むWebサイト(「感染源」)。
|
NotRecommended
|
閲覧が推奨されない、不正なWebサイト(「ソーシャルエンジニアリング」を使用しているもの)。
|
AdultContent
|
ポルノまたはエロティックなコンテンツ、出会い系サイトなどを含むWebサイト。
|
Violence
|
暴力行為を助長するWebサイトや、さまざまな死亡事故などに関するコンテンツを含むWebサイト。
|
Weapons
|
武器および爆発物に関するWebサイトや、それらの製造に関する情報を提供しているWebサイト。
|
Gambling
|
勝負事、カジノ、オークション、オンラインゲームへのアクセスを提供するWebサイト(賭けサイトを含む)。
|
Drugs
|
麻薬の使用、製造または流通を促進するWebサイト。
|
ObsceneLanguage
|
猥褻な言葉を含む(タイトル、記事などに)Webサイト。
|
Chats
|
テキストメッセージのリアルタイム送信を提供するWebサイト。
|
Terrorism
|
攻撃的なプロパガンダ、またはテロ攻撃に関する内容を含むWebサイト。
|
FreeEmail
|
メールボックスの無料登録を提供するWebサイト。
|
SocialNetworks
|
さまざまなソーシャルネットワークサービス:一般、仕事、企業、興味、テーマ別出会い系Webサイト。
|
DueToCopyrightNotice
|
一部の著作物(映画、音楽など)の著作権者によって定義されるWebサイト。
|
OnlineGames
|
インターネットへの常時接続を使用してゲームへのアクセスを提供するWebサイト。
|
Anonymizers
|
ユーザーが個人情報を隠し、ブロックされたWebリソースにアクセスすることを可能にするWebサイト。
|
CryptocurrencyMiningPool
|
仮想通貨マイニングのための一般的なサービスへのアクセスを提供するWebサイト。
|
Jobs
|
求人検索Webサイト。
|
変数sni_categoryとurl_categoryの値として、ブロッキングを制御するパラメータの名前を使用することもできます(以下参照)。
2.脅威のカテゴリー(変数threat_category用)
文字・記号
|
脅威のカテゴリー
|
KnownVirus
|
既知の脅威(ウイルス)。
|
VirusModification
|
既知の脅威(ウイルス)の亜種。
|
UnknownVirus
|
未知の脅威、疑わしいオブジェクト。
|
Adware
|
アドウェア。
|
Dialer
|
ダイアラー。
|
Joke
|
ジョークプログラム。
|
Riskware
|
リスクウェア。
|
Hacktool
|
ハッキングツール。
|
変数threat_categoryの値として、ブロッキングを制御するパラメータの名前を使用することもできます(以下参照)。
ルール条件で使用できる設定パラメータ
Dr.Web Firewall for Linuxのコンポーネントルールで使用されるパラメータ(プレフィックスLinuxFirewallで示されます)。
パラメータ
|
説明と使用例
|
Whitelist
|
ホワイトリストには、Dr.WebのURLカテゴリーのデータベースに対象のドメインが含まれている場合でも、アクセスが許可されるドメインのリストが含まれます。
例:
sni_host in "LinuxFirewall.Whitelist" : Pass
url_host not in "LinuxFirewall.Whitelist" : Block as _match
|
Blacklist
|
ブラックリストにはドメインのリストが含まれ、そのドメインへのアクセスはユーザー(または管理者)によってブロックされます。
例:
sni_host in "LinuxFirewall.Blacklist" :SET Unwrap_SSL = FALSE
url_host in "LinuxFirewall.Blacklist" : Block as BlackList
|
BlockCategory
|
「メタパラメータ」:値が、[LinuxFirewall]セクションで対応するBlock *パラメータがYesに設定されているWebリソースカテゴリー(Chats、AdultContentなど)の名前のリスト。
例:
url_category in "LinuxFirewall.BlockCategory" : Block as _match
sni_category in "LinuxFirewall.BlockCategory" : Block as BlackList
|
BlockThreat
|
「メタパラメータ」:値が、[LinuxFirewall]セクションで対応するBlock *パラメータがYesに設定されている脅威タイプ(KnownVirus、Jokeなど)の名前のリスト。
例:
threat_category in "LinuxFirewall.BlockThreat" : Block as _match
|
ExcludedProc
|
トラフィックをスキャンから除外する必要がある信頼できるプロセスのリスト。
例:
proc in "LinuxFirewall.ExcludedProc" : Pass
|
Dr.Web ICAPDのコンポーネントルールで使用されるパラメータ(プレフィックスICAPDで示されます)。
パラメータ
|
説明と使用例
|
Whitelist
|
ホワイトリストには、Dr.WebのURLカテゴリーのデータベースに対象のドメインが含まれている場合でも、アクセスが許可されるドメインのリストが含まれます。
例:
url_host not in "ICAPD.Whitelist" : Block as BlackList
|
Blacklist
|
ブラックリストにはドメインのリストが含まれ、そのドメインへのアクセスはユーザー(または管理者)によってブロックされます。
例:
url_host in "ICAPD.Blacklist" : Block as BlackList
|
Adlist
|
広告リスト。広告Webサイトを説明する正規表現のリストが含まれています。リストはユーザー(または管理者)によって定義されます。
例:
url match "ICAPD.Adlist" : Block as BlackList
|
BlockCategory
|
「メタパラメータ」:値が、[ICAPD]セクションで対応するBlock *パラメータがYesに設定されているWebリソースカテゴリー(Chats、AdultContentなど)の名前のリスト。
例:
url_category in "ICAPD.BlockCategory" : Block as _match
|
BlockThreat
|
「メタパラメータ」:値が、[ICAPD]セクションで対応するBlock *パラメータがYesに設定されている脅威タイプ(KnownVirus、Jokeなど)の名前のリスト。
例:
threat_category in "ICAPD.BlockThreat" : Block as _match
|
設定ファイルにルールを保存する機能
•設定ファイルのルールを使用するコンポーネントの設定セクションで、ルールはRuleSetなどの変数で保存され、それぞれが無制限のルールのセット(シーケンス)となります。さらに、各セットのルールは、最終的に解決されるまで、順次(下に向かって)考慮されます。 •無条件のルール(条件部分のないアクションのみを含むルール)を設定ファイルに書き込む場合、空の条件部分と区切り文字「:」が追加されます。 たとえば、次のルールは、条件部分を含まずアクションのみで構成されています。
設定ファイルには次のように書き込まれます。
•アクション部分に複数のアクションセットが含まれるルールを設定ファイルに書き込む場合、アクションが一覧表示されるとおりの順序で、同じ条件部分とアクション部分からのアクション1つがあるルールのシーケンスとして書き込まれます。 たとえば、次のルールはアクション部分に2つのアクションを含みます。
user in ('user1', 'user2') :SET http_templates_dir = "/etc/mytemplates", Block as _match
|
設定ファイルには2つのルールのシーケンスとして書き込まれます。
user in ('user1', 'user2') :SET http_templates_dir = "/etc/mytemplates"
user in ('user1', 'user2') : Block as _match
|
•ロギングまたはルールは、条件部分で条件の離接(論理和)を許可しないため、論理和を実装するには、各ルールに唯一の離接条件がある条件で一連のルールを記録します。たとえば、以下の2つのルールは、「悪意のあるオブジェクトKnownVirusまたはカテゴリーTerrorismからのURLが検出された場合にブロックする」ルールと同等です。
threat_category in (KnownVirus) : Block as _match
url_category in (Terrorism) : Block as _match
|
次のレコードは同等です。(a → x, b → x)、((a → x) ∧ (b → x))、((a ∨ b) → x)。
設定パラメータについては、管理ツールDr.Web Ctl(モジュールdrweb-ctl)のコマンドcfshowとcfsetを使用して、RuleSetなどのパラメータの値(ルールなど)を表示、変更できます。コマンドライン管理ツールDr.Web Ctl(drweb-ctlモジュール)のcfshowとcfsetのコマンド構文の詳細については、Dr.Web Ctlのセクションを参照してください。
|