設定パラメータ

このセクションの内容

コンポーネントパラメータ

トラフィックモニタリングとアクセスブロックのルール

このコンポーネントは、Dr.Web for UNIX Internet Gatewaysの統合された設定ファイル[ICAPD]セクションで指定されている設定パラメータを使用します。

コンポーネントパラメータ

セクションには以下のパラメータが含まれています。

パラメータ

説明

LogLevel

{logging level}

コンポーネントのロギングレベル

パラメータの値が指定されていない場合は、[Root]セクションDefaultLogLevelパラメータの値が使用されます。

デフォルト値:Notice

Log

{log type}

コンポーネントのロギング方式

デフォルト値:Auto

ExePath

{path to file}

コンポーネントの実行パス。

デフォルト値:<opt_dir>/bin/drweb-icapd

GNU/Linuxの場合:/opt/drweb.com/bin/drweb-icapd

FreeBSDの場合:/usr/local/libexec/drweb.com/bin/drweb-icapd

RunAsUser

{UID | user name}

このパラメータは、その権限によりコンポーネントを実行するユーザーを決定します。ユーザーのUIDまたはログイン情報を指定できます。ログイン情報が数字で構成され、UIDと区別できない場合は、「name:」というプレフィックスを前に付けます(例:RunAsUser = name:123456)。

ユーザー名が指定されていない場合、コンポーネントは、開始後に発生するエラーによって終了します。

デフォルト値:drweb

Start

{Boolean}

Dr.Web ConfigD設定デーモンによってコンポーネントを起動するかどうかを指定します。

このパラメータにYes値を指定すると、設定デーモンはただちにコンポーネントを開始します。また、No値を指定すると、設定デーモンはただちにコンポーネントを終了します。

デフォルト値:No

DebugDumpIcap

{Boolean}

詳細なICAPメッセージをデバッグレベルでログファイルに含めます(つまり、LogLevel = DEBUGを設定した場合)。

デフォルト値:No

ListenAddress

{network socket}

Dr.Web ICAPDがHTTPプロキシサーバーからの接続をリッスンするネットワークソケット(IPアドレスとポート)を指定します。

デフォルト値:127.0.0.1:1344

UsePreview

{Boolean}

ICAPプレビューモードを有効/無効にします。

必要でない限り、このパラメータのデフォルト値は変更しないでください

デフォルト値:Yes

Use204

{Boolean}

ICAPプレビューモードが有効でない場合に、レスポンスコード204を返します。

必要でない限り、このパラメータのデフォルト値は変更しないでください

デフォルト値:Yes

AllowEarlyResponse

{Boolean}

ICAPの早期レスポンスモードを有効にします。つまり、Dr.Web ICAPDがHTTPプロキシサーバーからリクエスト全体を受信する前にクライアントにレスポンスを送信することを許可します。

必要でない限り、このパラメータのデフォルト値は変更しないでください

デフォルト値:Yes

TemplatesDir

{path to directory}

Webリソースをブロックしたときに送信されるHTML通知のテンプレートを含むディレクトリへのパス。

デフォルト値:<var_dir>/templates/icapd

GNU/Linuxの場合:/var/opt/drweb.com/templates/icapd

FreeBSDの場合: /var/drweb.com/templates/icapd

Whitelist

{domain list}

ドメインのホワイトリスト。このリストに含まれるドメイン(およびそのサブドメイン)は、望ましくないリソースリストに含まれる場合でも、常にユーザーがアクセスできるようになります。

リストの値は、コンマ(引用符内の各値)で区切る必要があります。パラメータはセクションで複数回指定できます(この場合、そのすべての値が1つのリストにまとめられます)。

例:ドメインexample.comexample.netのリストに追加します。

1.設定ファイルに値を追加します。

1行に2つの値:

[ICAPD]
Whitelist = "example.com", "example.net"

2行(1行に1つの値):

[ICAPD]
Whitelist = example.com
Whitelist = example.net

2.drweb-ctl cfsetコマンドを使用して値を追加します。

# drweb-ctl cfset ICAPD.Whitelist -a example.com
# drweb-ctl cfset ICAPD.Whitelist -a example.net

注意

このパラメータで示されるドメインリストの実際の使用方法は、Dr.Web ICAPDに定義されているWebソースへのアクセス管理ルールでの使用方法によって決まります。

デフォルトルールのリスト(下記参照)は、ブロックされるWebソースカテゴリーのリストのドメインがこのリストに含まれている場合でも、このリストのドメイン(およびそのサブドメイン)へのアクセスが提供されることを保証します。さらに、このデフォルトのルールセットは、ホワイトリストドメインからダウンロードされたデータに脅威が含まれているかどうかがスキャンされることも保証します。

デフォルト値:(未設定)

Blacklist

{domain list}

ドメインのブラックリスト。このリストに含まれるドメイン(およびそのサブドメイン)は、望ましくないリソースリストに含まれていない場合でも、常にユーザーのアクセスがブロックされます。

リストの値はコンマで区切ります(各値は引用符で囲みます)。このパラメータはセクションで複数回指定できます(その場合、すべての値が1つのリストにまとめられます)。

例:ドメインexample.comexample.netのリストに追加します。

1.設定ファイルに値を追加します。

1行に2つの値:

[ICAPD]
Blacklist = "example.com", "example.net"

2行(1行に1つの値):

[ICAPD]
Blacklist = example.com
Blacklist = example.net

2.drweb-ctl cfsetコマンドを使用して値を追加します。

# drweb-ctl cfset ICAPD.Blacklist -a example.com
# drweb-ctl cfset ICAPD.Blacklist -a example.net

注意

このパラメータで示されるドメインリストの実際の使用方法は、Dr.Web ICAPDに定義されているWebソースへのアクセス管理ルールでの使用方法によって決まります。

デフォルトルールのリスト(以下参照)は、このリストのドメイン(およびそのサブドメイン)へのアクセスが常に禁止されることを保証します。このドメインがホワイトリストブラックリストに同時に追加される場合、デフォルトのルールにより、そのドメインへのユーザーアクセスは確実にブロックされます。

デフォルト値:(未設定)

Adlist

{list of strings}

広告URLを表す正規表現のリスト。ここにリストされているいずれかの正規表現に一致するURLは広告URLと見なされます。

リストの値は、コンマ(引用符内の各値)で区切る必要があります。パラメータはセクションで複数回指定できます(この場合、そのすべての値が1つのリストにまとめられます)。

例:式「.*ads.+」および「.*/ad/.*\.gif$」をリストに追加します。

1.設定ファイルに値を追加します。

1行に2つの値:

[ICAPD]
Adlist = ".*ads.+", ".*/ad/.*\.gif$"

2行(1行に1つの値):

[ICAPD]
Adlist = .*ads.+
Adlist = .*/ad/.*\.gif$

2.drweb-ctl cfsetコマンドを使用して値を追加します。

# drweb-ctl cfset ICAPD.Adlist -a '.*ads.+'
# drweb-ctl cfset ICAPD.Adlist -a '.*/ad/.*\.gif$'

正規表現は、POSIX構文(BRE、ERE)またはPerl構文(PCRE、PCRE2)のいずれかを使用して指定されます。

注意

このパラメータで示される式リストの実際の使用方法は、Dr.Web ICAPDに定義されているWebソースへのアクセス管理ルールでの使用方法によって決まります。

デフォルトルールのリスト(以下参照)は、このリストのURLへのアクセスが、これらのURLのドメインがホワイトリストにない場合にのみ、常に禁止されることを保証します。

デフォルト値:(未設定)

BlockInfectionSource

{Boolean}

悪意のあるソフトウェア(InfectionSourceカテゴリーに含まれる)を含むWebサイトへの接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加する必要があります(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:Yes

BlockNotRecommended

{Boolean}

非推奨サイト(NotRecommendedカテゴリーに含まれる)への接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加する必要があります(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:Yes

BlockAdultContent

{Boolean}

アダルトコンテンツ(AdultContentカテゴリーに含まれる)を含むWebサイトへの接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加する必要があります(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockViolence

{Boolean}

暴力的描写(Violenceカテゴリーに含まれる)を含むWebサイトへの接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加する必要があります(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockWeapons

{Boolean}

武器に関するWebサイト(Weaponsカテゴリーに含まれる)への接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockGambling

{Boolean}

ギャンブルのWebサイト(Gamblingカテゴリーに含まれる)への接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockDrugs

{Boolean}

麻薬に関するWebサイト(Drugsカテゴリーに含まれる)への接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockObsceneLanguage

{Boolean}

卑猥な表現(ObsceneLanguageカテゴリーに含まれる)を含むWebサイトへの接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockChats

{Boolean}

チャットWebサイト(Chatsカテゴリーに含まれる)への接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockTerrorism

{Boolean}

テロリズムに関するWebサイト(Terrorismカテゴリーに含まれる)への接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockFreeEmail

{Boolean}

無料メールサービスのWebサイト(FreeEmailカテゴリーに含まれる)への接続試行をブロックします。

ブロックをアクティブにするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockSocialNetworks

{Boolean}

ソーシャルネットワーキングWebサイト(SocialNetworksカテゴリーに含まれる)への接続試行をブロックします。

ブロックを有効にするには、次のルールを設定に追加する必要があります(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

BlockDueToCopyrightNotice

{Boolean}

著作権者のリクエストに従って追加されたWebサイトへの接続試行をブロックします。(DueToCopyrightNoticeカテゴリーに含まれるもの)。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:Yes

BlockOnlineGames

{Boolean}

オンラインゲームWebサイト(OnlineGamesカテゴリーに含まれる)への接続試行をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:Yes

BlockAnonymizers

{Boolean}

アノニマイザー(Anonymizersカテゴリーに含まれる)への接続試行をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:Yes

BlockCryptocurrencyMiningPools

{Boolean}

仮想通貨マイニングのための一般的なサービスへのアクセスを提供するWebサイト(CryptocurrencyMiningPoolカテゴリーに含まれる)への接続試行をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:Yes

BlockJobs

{Boolean}

求人検索Webサイト(Jobsカテゴリーに含まれます)への接続試行をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

url_category in "ICAPD.BlockCategory" : BLOCK as _match

デフォルト値:No

ScanTimeout

{time interval}

Dr.Web ICAPDによって開始された1つのファイルに対するスキャンのタイムアウト。

指定可能な値:1秒(1s)から1時間(1h)まで。

デフォルト値:30s

HeuristicAnalysis

{On | Off}

未知の脅威を検出するためのヒューリスティック解析を有効/無効にします。ヒューリスティック解析を使用すると保護レベルが上がりますが、スキャン時間が長くなります。

ヒューリスティックアナライザによって検出された脅威に適用されるアクションは、BlockSuspiciousパラメータ値として指定します。

使用可能な値:

On - ヒューリスティック解析を有効にします。

Off - ヒューリスティック解析を無効にします。

デフォルト値:On

PackerMaxLevel

{integer}

圧縮されたオブジェクトの最大ネスティングレベル。圧縮されたオブジェクトは、特別なソフトウェア(UPX、PELock、PECompact、Petite、ASPack、Morphineなど)で圧縮された実行コードです。そのようなオブジェクトには、圧縮されたオブジェクトなども含まれている、他の圧縮されたオブジェクトが含まれる場合があります。このパラメータの値はネスティングの上限を指定します。この上限を超えると、他の圧縮されたオブジェクト内の圧縮されたオブジェクトはスキャンされません。

ネスティングレベルの制限はありません。値を0に設定すると、ネストされたオブジェクトはスキャンされません。

デフォルト値:8

ArchiveMaxLevel

{integer}

他のアーカイブが含まれる可能性のあるアーカイブ(zip、rarなど)の最大ネスティングレベル(これらのアーカイブには他のアーカイブなどが含まれる場合もあります)。このパラメータの値はネスティングの上限を指定します。この上限を超えると、他のアーカイブに含まれるアーカイブはスキャンされません。

ネスティングレベルの制限はありません。値を0に設定すると、ネストされたオブジェクトはスキャンされません。

デフォルト値:0

MailMaxLevel

{integer}

他のファイルが含まれる可能性のあるメーラーのファイル(pst、tbbなど)の最大ネスティングレベル(これらのファイルには他のファイルなどが含まれる場合もあります)。このパラメータの値は、ネスティングの上限を指定します。この上限を超えると、他のオブジェクト内のオブジェクトはスキャンされません。

ネスティングレベルの制限はありません。値を0に設定すると、ネストされたオブジェクトはスキャンされません。

デフォルト値:0

ContainerMaxLevel

{integer}

他のオブジェクトが含まれる他のタイプのオブジェクト(HTMLページ、jarファイルなど)の最大ネスティングレベル。このパラメータの値はネスティングの上限を指定します。この上限を超えると、他のオブジェクト内のオブジェクトはスキャンされません。

ネスティングレベルの制限はありません。値を0に設定すると、ネストされたオブジェクトはスキャンされません。

デフォルト値:8

MaxCompressionRatio

{integer}

圧縮されたオブジェクトの最大圧縮率(非圧縮サイズと圧縮サイズの比率)。オブジェクトの比率が制限を超えると、そのオブジェクトはDr.Web ICAPDによって開始されたデータのスキャン中にスキップされます。

圧縮率には2よりも小さい値は指定できません。

デフォルト値:500

BlockKnownVirus

{Boolean}

既知の脅威を含むデータの受信または送信をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

threat_category in "ICAPD.BlockThreat" : BLOCK as _match

デフォルト値:Yes

BlockSuspicious

{Boolean}

未知の脅威(ヒューリスティックアナライザによって検出されたもの)を含むデータの受信または送信をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

threat_category in "ICAPD.BlockThreat" : BLOCK as _match

デフォルト値:Yes

BlockAdware

{Boolean}

アドウェアを含むデータの受信または送信をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

threat_category in "ICAPD.BlockThreat" : BLOCK as _match

デフォルト値:Yes

BlockDialers

{Boolean}

ダイアラープログラムを含むデータの受信または送信をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

threat_category in "ICAPD.BlockThreat" : BLOCK as _match

デフォルト値:Yes

BlockJokes

{Boolean}

ジョークプログラムを含むデータの受信または送信をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

threat_category in "ICAPD.BlockThreat" : BLOCK as _match

デフォルト値:No

BlockRiskware

{Boolean}

リスクウェアを含むデータの受信または送信をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

threat_category in "ICAPD.BlockThreat" : BLOCK as _match

デフォルト値:No

BlockHacktools

{Boolean}

ハッキングツールを含むデータの受信または送信をブロックします。

ブロックを有効にするには、次のルールを設定に追加します(以下の詳細を参照)。

threat_category in "ICAPD.BlockThreat" : BLOCK as _match

デフォルト値:No

BlockUnchecked

{Boolean}

スキャンできないデータの受信または送信をブロックします。

デフォルト値:No

MessageHook

{path to file | Lua function}

LuaでHTTPメッセージを処理するためのスクリプトまたはそのスクリプトを含むファイルへのパス(LuaでのHTTPメッセージ処理セクションを参照)。

Lua関数またはファイルパスが指定されていない場合、メッセージはルールに従って処理されます。指定したファイルが利用できない場合、コンポーネントの起動時にエラーが返されます。

デフォルト値:自動的に生成されます。デフォルト設定では、次のようなスクリプトになります。

local dw = require "drweb"
local cfg = require "drweb.config"
local dwl = require "drweb.lookup"
local rx = require "drweb.regex"

function message_hook(ctx)
  if ctx.direction == "request" then
    local url = ctx.request.url
    if url.in_list(cfg.blacklist) then
      return "block"
    end
    if not url.in_list(cfg.whitelist) then
      if rx.search(cfg.adlist, url) or rx.search(cfg.adlist, url.raw) then
          return "block"
      end
      if url.in_categories(cfg.block_url_categories) then
          return "block"
      end
    end
  end
  if ctx.body.has_threat{category = cfg.block_threats} then
    return "block"
  end
  if cfg.block_unchecked and ctx.body.scan_error then
    return "block"
  end
  return "pass"
end

トラフィックモニタリングとアクセスブロックのルール

このセクションには、上記のパラメータの他、7つのルールセットRuleSet*RuleSet0、…、RuleSet6)も含まれます。これらは、トラフィックスキャン、Webリソースへのユーザーアクセスのブロック、インターネットからのコンテンツのダウンロードのブロックを直接管理します。条件の一部の値(IPアドレス範囲、Webサイトカテゴリーのリスト、Webソースのホワイト/ブラックリストなど)については、テキストファイルから読み込まれる値の置き換えがあり、LDAPを介して外部データソースから抽出されます(Dr.Web LookupDコンポーネントを使用)。接続を設定する際には、最終的な解決を含むルールが見つかるまで、すべてのルールが昇順で検査されます。ルールリストのギャップは無視されます。

ルールについては、付録Dのトラフィックモニタリングのルールのセクションで詳しく説明されています。

ルールを表示して編集する

ルールリストを簡単に編集するために未設定のものが残されています。つまり、ルールが指定されていないRuleSet<i>があります(<i> - RuleSetルールセット番号)。RuleSet<i>以外の項目を追加することはできませんが、RuleSet<i>の要素内のルールは追加および削除できます。ルールの表示と編集は、次のいずれかの方法で実行できます。

(任意のテキストエディターで)設定ファイル設定ファイルを表示して編集する(このファイルにはデフォルトとは異なる値のパラメータのみが保存されます)。

Web管理インターフェースを使用する(インストールされている場合)。

コマンドラインベースのインターフェースDr.Web Ctldrweb-ctl cfshowおよびdrweb-ctl cfsetコマンド)を使用する。

ルールを編集して設定ファイルを変更した場合は、その変更を適用するためにDr.Web for UNIX Internet Gatewaysを再起動します。それにはdrweb-ctl reloadコマンドを使用します。

ルールを表示するには、drweb-ctl cfshowコマンドを使用します。

ルールセットICAPD.RuleSet1のコンテンツを表示するには、次のコマンドを使用します。

# drweb-ctl cfshow ICAPD.RuleSet1

ルールを編集するには、drweb-ctl cfsetコマンドを使用します(以降、<rule>はルールのテキストです)。

ICAPD.RuleSet1セットのすべてのルールを新しいルールに置き換えます。

# drweb-ctl cfset ICAPD.RuleSet1 '<rule>'

ICAPD.RuleSet1ルールセットに新しいルールを次のように追加します。

# drweb-ctl cfset -a ICAPD.RuleSet1 '<rule>'

ICAPD.RuleSet1セットから特定のルールを次のように削除します。

# drweb-ctl cfset -e ICAPD.RuleSet1 '<rule>'

ICAPD.RuleSet1ルールセットを次のようにデフォルトの状態にリセットします。

# drweb-ctl cfset -r ICAPD.RuleSet1

drweb-ctlツールを使用してルールのリストを編集するときは、追加するルールのテキストを一重引用符または二重引用符で囲み、ルール自体のテキストに二重引用符が含まれている場合には、ルールのテキスト内にある二重引用符の前にバックスラッシュ(「\」)をエスケープ文字として使用します。

設定のRuleSet<i>変数には、ルールの格納について次のような特徴があります。

無条件ルールを追加するときは、条件部分とコロンを省略できます。ただし、そのようなルールは常にルールのリストに文字列「 : <action>」として格納されます。

複数のアクションを含むルール(「<condition> : <action 1><action 2>」など)を追加すると、そのようなルールは基本ルールのチェーン「<condition> : <action 1>」と「<condition> : <action 2>」に変更されます。

ロギングまたはルールは、条件部分で条件の離接(論理和)を許可しないため、論理和を実装するには、各ルールに離接語条件がある条件で一連のルールを記録する必要があります。

接続をスキップするための無条件ルール(Passアクション)をICAPD.RuleSet1セットに追加するには、次のコマンドのみを実行します。

# drweb-ctl cfset -a ICAPD.RuleSet1 'Pass'

ただし、指定したルールセットからこのルールを削除するには、次のコマンドを実行する必要があります。

# drweb-ctl cfset -e ICAPD.RuleSet1 ' : Pass'

ICAPD.RuleSet1ルールを、接続用の標準テンプレートへのパスを未解決アドレスから変更してブロックを実行するルールセットに追加するには、次のコマンドを実行する必要があります。

# drweb-ctl cfset -a ICAPD.RuleSet1 'src_ip not in file("/etc/trusted_ip") : set http_template_dir = "mytemplates", Block'

ただし、このコマンドでは指定したセットに2つのルールが追加されるため、ルールのセットからこれらのルールを削除するには、次の2つのコマンドを実行する必要があります。

# drweb-ctl cfset -e ICAPD.RuleSet1 'src_ip not in file("/etc/trusted_ip") : set http_template_dir = "mytemplates"'
# drweb-ctl cfset -e ICAPD.RuleSet1 'src_ip not in file("/etc/trusted_ip") : Block'

「悪意のあるオブジェクトKnownVirusTerrorismカテゴリーに該当するURLが検出された場合はブロックする」などのルールをICAPD.RuleSet1ルールセットに追加するには、このルールセットに次の2つのルールを追加する必要があります。

# drweb-ctl cfset -a ICAPD.RuleSet1 'threat_category in (KnownVirus) : Block as _match'
# drweb-ctl cfset -a ICAPD.RuleSet1 'url_category in (Terrorism) : Block as _match'

ルールのセットからこれらのルールを削除する場合にも、2つのコマンドを実行する必要があります(上記の例を参照)。

デフォルトのルールセット

デフォルトでは、次のブロックルールセットが指定されています。

RuleSet0 =
RuleSet1 = direction request, url_host in "ICAPD.Blacklist" : BLOCK as BlackList
RuleSet1 = direction request, url_host not in "ICAPD.Whitelist", url match "ICAPD.Adlist" : BLOCK as BlackList
RuleSet2 =
RuleSet3 = direction request, url_host not in "ICAPD.Whitelist", url_category in "ICAPD.BlockCategory" : BLOCK as _match
RuleSet4 =
RuleSet5 = threat_category in "ICAPD.BlockThreat" : BLOCK as _match
RuleSet6 =

最初の2つのルールは送信HTTP接続を処理します。接続が試みられるホスト(またはURL)がブラックリストに含まれている場合、その接続はブラックリストに基づいてブロックされ、それ以上のスキャンは実行されません。ホスト(URL)がホワイトリストに含まれておらず、アクセスするのが望ましくないとマークされているWebサイトカテゴリーに属しているか、広告URLを表す正規表現のいずれかに一致する場合、URLは望ましくないカテゴリーに属しているため、接続はブロックされます。

RuleSet5で指定されたルールは、(設定に従って)ブロックする必要がある脅威カテゴリーに属する脅威のHTTPリクエストまたはレスポンスをスキャンします。そのような脅威がある場合、接続は脅威の検出に基づいてブロックされます。方向条件が指定されていないため、デフォルトでは、クライアントリクエスト(request)とサーバーレスポンス(response)の両方が検査されます。

トラフィックモニタリングとアクセスブロックのルールの例

1.IPアドレス範囲が10.10.0.0~10.10.0.254のユーザーにChats以外のすべてのカテゴリーのWebサイトへのアクセスを許可する。

src_ip in (10.10.0.0/24), url_category not in (Chats) : PASS

ルール

url_host in "ICAPD.Blacklist" : BLOCK as BlackList

が、指定されたルールより上記のルールリストに割り当てられている場合、IPアドレス範囲が10.10.0.0~10.10.0.254のユーザーは、ブラックリストのドメイン、つまりパラメータICAPD.Blacklistにリストされているドメインへのアクセスもブロックされます。また、このルールが下記に割り当てられている場合、IPアドレス範囲が10.10.0.0~10.10.0.254のユーザーは、ブラックリストのWebサイトにもアクセスできます。

PASSの処理は最終的なものであるため、これ以上のルールはチェックされず、したがってダウンロードされたデータのウイルススキャンも実行されません。IPアドレス範囲が10.10.0.0~10.10.0.254のユーザーに、ブラックリストに含まれていないChats以外のすべてのカテゴリーのWebサイトへのアクセスを許可し、同時に脅威のダウンロードをブロックするには、次のルールを使用します。

url_category not in (Chats), url_host not in "ICAPD.Blacklist", threat_category not in "ICAPD.BlockCategory" : PASS

2.ビデオファイルのコンテンツ(つまり、MIMEタイプが「video/*」のデータ(*はMIMEクラスvideoの任意のタイプ))のスキャンを実行しない。

content_type in ("video/*") : PASS