設定パラメータ

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

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

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

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

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

パラメータ

説明

LogLevel

{logging level}

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

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

デフォルト値:Notice

Log

{log type}

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

デフォルト値:Auto

ExePath

{path to file}

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

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

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

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

XtablesLockPath

{path to file}

iptables(NetFilter)テーブルブロックファイルへのパス。パラメータ値が指定されていない場合は、/run/xtables.lock/var/run/xtables.lockパスが検査されます。指定されたパスまたはデフォルトのパスにファイルが見つからない場合は、コンポーネントを起動したときにエラーが発生します。

デフォルト値:(指定なし)

InspectFtp

{On | Off}

FTPプロトコルを介して転送されたデータをスキャンします。

データはルールに従ってスキャンされます(下記参照)。

デフォルト値:On

InspectHttp

{On | Off}

HTTPプロトコルを介して転送されたデータをスキャンします。

データはルールに従ってスキャンされます(下記参照)。

デフォルト値:On

InspectSmtp

{On | Off}

SMTPプロトコルを介して転送されたデータをスキャンします(インストールされている場合は、Dr.Web MailDコンポーネントが使用されます)。

実際のデータスキャンは、指定されたスキャンルールに従って実行されます(下記参照)。

デフォルト値:On

InspectPop3

{On | Off}

POP3プロトコルを介して転送されたデータをスキャンします(インストールされている場合は、Dr.Web MailDコンポーネントが使用されます)。

実際のデータスキャンは、指定されたスキャンルールに従って実行されます(下記参照)。

デフォルト値:On

InspectImap

{On | Off}

IMAPプロトコルを介して転送されたデータをスキャンします(インストールされている場合は、Dr.Web MailDコンポーネントが使用されます)。

実際のデータスキャンは、指定されたスキャンルールに従って実行されます(下記参照)。

デフォルト値:On

AutoconfigureIptables

{Yes | No}

iptablesインターフェースを介してNetFilterシステムコンポーネントを設定するためのルール。

使用可能な値:

Yes - コンポーネントを起動するときにNetFilterのルールを設定し、動作を自動的に終了するときにルールを削除します(推奨)。

No - ルールを自動的に設定しません。必要なルールは、コンポーネントを起動する前に管理者が手動で追加し、動作が完了した後に削除する必要があります。

注意

iptablesのルールの自動設定が許可されていない場合は、iptablesに必要なルールがコンポーネント動作開始前に利用できるようになっている必要があります。

デフォルト値:Yes

AutoconfigureRouting

{Yes | No}

ip routeip ruleのルーティングルールとポリシーの設定モード。

使用可能な値:

Yes - コンポーネントを起動するときにip routeip ruleのルーティングルールとポリシーを設定し、動作を自動的に終了するときにルーティングルールとポリシーを削除します(推奨)。

No - ルールを自動的に設定しません。必要なルールは、コンポーネントを起動する前に管理者が手動で追加し、動作が完了した後に削除します。

注意

ルーティングルールとポリシーの自動設定が許可されていない場合は、ip routeip ruleに必要なルールがコンポーネント動作開始前に利用できるようになっている必要があります。

デフォルト値:Yes

LocalDeliveryMark

{integer | Auto}

接続を監視するためにDr.Web Firewall for Linuxネットワークソケット(TproxyListenAddressパラメータで指定、下記参照)にリダイレクトされるパケットの<LDM>マーク。

使用可能な値:

<integer> - パケットの<LDM>マーク。2Nに等しく、Nがパケット内のLDMビット数の場合、0 ≤ N ≤ 31。

Auto - Dr.Web Firewall for Linuxはパケットマークの適切なビット数を自動的に選択できます(推奨)。

注意

<LDM>番号を手動で割り当てるときは、(NetFilter経由を含む)ルート接続とパケットを管理する他のアプリケーションが、パケットマークで相応するビット数を使用していないことを確認してください。無効な値を指定した場合、コンポーネントの起動は失敗します。

AutoconfigureIptables = NoAutoconfigureRouting = Noの場合、指定された<LDM>番号は、手動で追加する必要があるルーティングルールで使用してください。

デフォルト値:Auto

ClientPacketsMark

{integer | Auto}

接続を開始するクライアントとDr.Web Firewall for Linuxの間で転送されるパケットの<CPM>マーク。

使用可能な値:

<integer> - パケットの<СPM>マーク。2Nに等しく、Nがパケット内のCPMビット数の場合、0 ≤ N ≤ 31。

Auto - Dr.Web Firewall for Linuxはパケットマークの適切なビット数を自動的に選択できます(推奨)。

注意

<СPM>番号を手動で割り当てるときは、(NetFilter経由を含む)ルート接続とパケットを管理する他のアプリケーションが、パケットマークで、対応するビット数を使用していないことを確認してください。無効な値を指定した場合、コンポーネントの起動は失敗します。

AutoconfigureIptables = Noの場合、指定された<СPM>番号は、手動で追加する必要があるルーティングルールで使用する必要があります。

デフォルト値:Auto

ServerPacketsMark

{integer | Auto}

Dr.Web Firewall for Linuxと接続を受信するサーバーの間で転送されるパケットの<SPM>マーク。

使用可能な値:

<integer> - パケットの<SPM>マーク。2Nに等しく、Nがパケット内のSPMビット数の場合、0 ≤ N ≤ 31。

Auto - Dr.Web Firewall for Linuxはパケットマークの適切なビット数を自動的に選択できます(推奨)。

注意

<SPM>番号を手動で割り当てるときは、(NetFilter経由を含む)ルート接続とパケットを管理する他のアプリケーションが、パケットマークで相応するビット数を使用していないことを確認してください。無効な値を指定した場合、コンポーネントの起動は失敗します。

AutoconfigureIptables = NoAutoconfigureRouting = Noの場合、指定された<SPM>番号は、手動で追加する必要があるルーティングルールで使用してください。

デフォルト値:Auto

TproxyListenAddress

{network socket}

Dr.Web Firewall for Linuxが監視した接続を受信するネットワークソケット(<IP address>:<port>)。ポート0を指定すると、システムによって自動的に選択されます。

注意

該当するソケットが他のアプリケーションによって使用されていないことを確認する必要があります。無効な値を指定した場合、コンポーネントの起動は失敗します。

AutoconfigureIptables = Noの場合、指定されたIPアドレスとポートは、手動で追加する必要があるルーティングルールで使用してください。

デフォルト値:127.0.0.1:0

OutputDivertEnable

{Yes | No}

受信接続(つまりローカルホストに接続があるリモートホストのアプリケーションによって開始された接続)の監視モードを有効/無効にします。

使用可能な値:

Yes - 送信接続の監視と処理を行います。

No - 送信接続の監視と処理は行いません。

注意

この設定は、AutoconfigureIptables = Noの場合に、手動で追加または削除されるルーティングルール番号5を追加または削除します。

デフォルト値:No

OutputDivertNfqueueNumber

{integer | Auto}

Dr.Web Firewall for Linuxが、送信接続を開始するSYNパッケージを取得するキュー番号NFQUEUE

使用可能な値:

<integer> - NFQUEUEで監視された送信接続のSYNパケットを監視するためのキュー番号<ONum>

Auto - Dr.Web Firewall for Linuxは適切なキュー番号を自動的に選択できます(推奨)。

注意

<ONum>番号を手動で割り当てるときは、(NetFilterルール経由を含む)接続とパケットを管理する他のアプリケーションが、相応するキュー番号を使用していないことを確認してください。無効な値を指定した場合、コンポーネントの起動は失敗します。

AutoconfigureIptables = Noの場合、指定された<ONum>番号は、手動で追加する必要があるルーティングルール番号5で使用する必要があります。

デフォルト値:Auto

OutputDivertConnectTransparently

{Yes | No}

送信接続のために監視されたパケットの送信者(クライアント)のIPアドレスを使用して、受信者(サーバー)に接続するためのエミュレーションモードを有効/無効にします。

使用可能な値:

Yes - 接続を監視するときに、自分のアドレスの代わりに接続をリクエストしたクライアントのアドレスを使用してサーバーに接続します。

No - Dr.Web Firewall for Linuxアドレスからサーバーに接続します。

クライアントとDr.Web Firewall for Linuxアドレスは通常、送信接続監視モードでは同じであるため、デフォルト値はNoになります。

デフォルト値:No

InputDivertEnable

{Yes | No}

受信接続(つまりローカルホストに接続があるリモートホストのアプリケーションによって開始された接続)の監視を有効/無効にします。

使用可能な値:

Yes - 受信接続の監視と処理を有効にします。

No - 受信接続の監視と処理を無効にします。

注意

この設定は、AutoconfigureIptables = Noの場合に、手動で追加または削除されるルーティングルール番号6を追加または削除します。無効な値を指定した場合、コンポーネントの起動は失敗します。

デフォルト値:No

InputDivertNfqueueNumber

{integer | Auto}

Dr.Web Firewall for Linuxが、受信接続を開始するSYNパッケージを取得するキュー番号NFQUEUE

使用可能な値:

<integer> - NFQUEUEで監視された送信接続のSYNパケットを監視するためのキュー番号<INum>

Auto - Dr.Web Firewall for Linuxは適切なキュー番号を自動的に選択できます(推奨)。

注意

<INum>番号を手動で割り当てるときは、(NetFilterルール経由を含む)接続とパックを管理する他のアプリケーションが、相応するキュー番号を使用していないことを確認してください。無効な値を指定した場合、コンポーネントの起動は失敗します。

AutoconfigureIptables = Noの場合、指定された<INum>番号は、手動で追加する必要があるルーティングルール番号6で使用する必要があります。

デフォルト値:Auto

InputDivertConnectTransparently

{Yes | No}

受信接続のために監視されたパケットの送信者(クライアント)のIPアドレスを使用して、受信者(サーバー)に接続するためのエミュレーションモードを有効/無効にします。

使用可能な値:

Yes - 接続を監視するときに、自分のアドレスの代わりに接続をリクエストしたクライアントのアドレスを使用してサーバーに接続します。

No - Dr.Web Firewall for Linuxアドレスからサーバーに接続します。

受信接続監視モードでは、すべてのトラフィックがDr.Web Firewall for Linuxを通過するため、不正なクライアントのアドレスを使用してサーバーに安全に接続する可能性があります。これがデフォルト値がYesである理由です。

デフォルト値:Yes

ForwardDivertEnable

{Yes | No}

トランジット接続(つまりその他のリモートホストに接続があるリモートホストのアプリケーションによって開始された接続)の監視を有効/無効にします。

使用可能な値:

Yes - トランジット接続の監視と処理を有効にします。

No - トランジット接続の監視と処理を無効にします。

注意

この設定は、AutoconfigureIptables = Noの場合に、手動で追加または削除されるルーティングルール番号7を追加または削除します。

デフォルト値:No

ForwardDivertNfqueueNumber

{integer | Auto}

Dr.Web Firewall for Linuxが、トランジット接続を開始するSYNパッケージを取得するキュー番号NFQUEUE

使用可能な値:

<integer> - NFQUEUEで監視されたトランジット接続のSYNパケットを監視するためのキュー番号<FNum>

Auto - Dr.Web Firewall for Linuxは適切なキュー番号を自動的に選択できます(推奨)。

注意

<FNum>番号を手動で割り当てるときは、(NetFilterルール経由を含む)接続とパックを管理する他のアプリケーションが、相応するキュー番号を使用していないことを確認してください。無効な値を指定した場合、コンポーネントの起動は失敗します。

AutoconfigureIptables = Noの場合、指定された<FNum>番号は、手動で追加する必要があるルーティングルール番号7で使用してください。

デフォルト値:Auto

ForwardDivertConnectTransparently

{Yes | No}

トランジット接続のために監視されたパケットの送信者(クライアント)のIPアドレスを使用して受信者(サーバー)に接続するためのエミュレーションモード。

使用可能な値:

Yes - 接続を監視するときに、自分のアドレスの代わりに接続をリクエストしたクライアントのアドレスを使用してサーバーに接続します。

No - Dr.Web Firewall for Linuxアドレスからサーバーに接続します。

トランジット接続監視モードでは、すべてのトラフィックがDr.Web Firewall for Linuxがインストールされているのと同じホスト(ルーター)を通過するという保証はないため、正しい動作のデフォルト値はNoになります。保護されたアプリケーションが同じルーターを使用することがネットワーク設定によって保証されている場合、このパラメータをYesに設定できます。この場合は、Dr.Web Firewall for Linuxがサーバーに接続するときは常にクライアントのアドレスへの接続を評価します。

デフォルト値:No

ExcludedProc

{path to file}

プロセスのホワイトリスト(ネットワークアクティビティが監視されないプロセス)

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

例:プロセスのリストにwgetcurlを追加します。

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

1行に2つの値:

[LinuxFirewall]
ExcludedProc = "/usr/bin/wget", "/usr/bin/curl"

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

[LinuxFirewall]
ExcludedProc = /usr/bin/wget
ExcludedProc = /usr/bin/curl

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

# drweb-ctl cfset LinuxFirewall.ExcludedProc -a /usr/bin/wget
# drweb-ctl cfset LinuxFirewall.ExcludedProc -a /usr/bin/curl

注意

このパラメータで示されるプロセスリストの実際の使用方法は、Dr.Web Firewall for Linuxに定義されているスキャンルールでの使用方法によって決まります。

デフォルトルールのリスト(以下参照)は、リストからの全プロセスのトラフィックがスキャンせずに許可されることを保証します。

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

UnwrapSsl

{Boolean}

SSL/TLS接続を介して転送された暗号化トラフィックをスキャンします。

注意

最近の実行例では、この変数の値は保護されたトラフィックの処理に影響しません。処理を管理するには、SET Unwrap_SSL = true/falseアクションを含むルールを作成する必要があります(以下参照)。

drweb-ctlユーティリティのcfsetコマンドまたはWebインターフェースを使用してこのパラメータの値を変更した場合、影響を受ける依存ルールが自動的に適応します。

デフォルト値:No

BlockInfectionSource

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:Yes

BlockNotRecommended

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:Yes

BlockAdultContent

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockViolence

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockWeapons

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockGambling

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockDrugs

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockObsceneLanguage

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockChats

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockTerrorism

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockFreeEmail

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockSocialNetworks

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockDueToCopyrightNotice

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockOnlineGames

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockAnonymizers

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockCryptocurrencyMiningPools

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

BlockJobs

{Boolean}

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

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

url_category in "LinuxFirewall.BlockCategory" : Block as _match

デフォルト値:No

Whitelist

{domain list}

ドメインのホワイトリスト(ブロックされたカテゴリーに含まれている場合でも、ユーザーの接続が許可されているドメイン。さらに、このリストに示されているドメインのすべてのサブドメインへユーザーがアクセスすることが許可されます)。

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

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

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

1つの文字列に2つの値:

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

2つの文字列(文字列ごとに1つの値):

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

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

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

注意

このパラメータで示されるドメインリストの実際の使用方法は、Dr.Web Firewall for Linuxに定義されているスキャンルールでの使用方法によって決まります。

デフォルトルールのリスト(下記参照)は、ブロックされるWebソースカテゴリーのリストのドメインがこのリストに含まれている場合でも、このリストのドメイン(およびそのサブドメイン)へのアクセスが提供されることを保証します(ただしHTTPプロトコルを経由したサーバーへのリクエストの場合のみ)。さらに、このデフォルトのルールセットは、ホワイトリストドメインからダウンロードしたデータが脅威に対してスキャンされることを保証します(データはレスポンスで返され、変数directionには値responseがあるため)。

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

Blacklist

{domain list}

ブラックリストとして使用できるドメインのリスト(つまり、これらのドメインがブロックされたカテゴリーに含まれていない場合でも、ユーザーの接続が禁止されているドメインのリスト。さらに、このリストに示されているドメインのすべてのサブドメインへユーザーがアクセスすることが禁止されます)。

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

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

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

1つの文字列に2つの値:

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

2つの文字列(文字列ごとに1つの値):

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

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

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

注意

このパラメータで示されるドメインリストの実際の使用方法は、Dr.Web Firewall for Linuxに定義されているスキャンルールでの使用方法によって決まります。

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

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

ScanTimeout

{time interval}

SpIDer Gateによって開始された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に設定すると、ネストされたオブジェクトはスキャンされません。

デフォルト値:8

MailMaxLevel

{integer}

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

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

デフォルト値:8

ContainerMaxLevel

{integer}

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

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

デフォルト値:8

MaxCompressionRatio

{integer}

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

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

デフォルト値:500

BlockKnownVirus

{Boolean}

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

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

threat_category in "LinuxFirewall.BlockThreat" : Block as _match

デフォルト値:Yes

BlockSuspicious

{Boolean}

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

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

threat_category in "LinuxFirewall.BlockThreat" : Block as _match

デフォルト値:Yes

BlockAdware

{Boolean}

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

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

threat_category in "LinuxFirewall.BlockThreat" : Block as _match

デフォルト値:Yes

BlockDialers

{Boolean}

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

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

threat_category in "LinuxFirewall.BlockThreat" : Block as _match

デフォルト値:Yes

BlockJokes

{Boolean}

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

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

threat_category in "LinuxFirewall.BlockThreat" : Block as _match

デフォルト値:No

BlockRiskware

{Boolean}

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

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

threat_category in "LinuxFirewall.BlockThreat" : Block as _match

デフォルト値:No

BlockHacktools

{Boolean}

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

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

threat_category in "LinuxFirewall.BlockThreat" : Block as _match

デフォルト値:No

BlockUnchecked

{Boolean}

スキャンできないトラフィックをブロックします。

注意

このパラメータ値は、エラーのためにtrueまたはfalseに評価することが不可能なルールの処理に影響します。Noを指定した場合、ルールは実行されていないルールとしてスキップされます。Yesを指定した場合、Block as BlackListアクションが実行されます。

デフォルト値:No

InterceptHook

{path to file | Lua function}

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

使用できないファイルを指定すると、コンポーネントを読み込む際にエラーが表示されます。

デフォルト値:

local dwl = require 'drweb.lookup'

function intercept_hook(ctx)

 -- do not check if group == Root.TrustedGroup
 if ctx.divert == "output" and ctx.group == "drweb"
 then
     return "pass"
 end

 -- do not check connections from privileged ports
 -- except FTP active mode
 if ctx.src.port >= 0 and ctx.src.port <= 1024
     and ctx.src.port ~= 20
 then
     return "pass"
 end

 return "check"
end

接続スキャンの設定を変更しても、変更を加える前にアプリケーションによってすでに確立されている接続のスキャンには影響しません。それらをすでに実行中のアプリケーションに適用する必要がある場合は、アプリケーションを再起動するなどして、アプリケーションを強制的に切断してから再度接続する必要があります。

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

このセクションには、上記のパラメータの他、11個のルールセットRuleSet*RuleSet0、…、RuleSet10)も含まれます。これらは、トラフィックスキャン、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コマンドを使用します。

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

# drweb-ctl cfshow LinuxFirewall.RuleSet1

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

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

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

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

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

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

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

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

# drweb-ctl cfset -r LinuxFirewall.RuleSet1

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

RuleSet0 =
RuleSet1 = divert output : set HttpTemplatesDir = "output"
RuleSet1 = divert output : set MailTemplatesDir = "firewall"
RuleSet1 = divert input : set HttpTemplatesDir = "input"
RuleSet1 = divert input : set MailTemplatesDir = "server"
RuleSet1 = proc in "LinuxFirewall.ExcludedProc" : Pass
RuleSet1 =  : set Unwrap_SSL = false
RuleSet2 =
RuleSet3 =
RuleSet4 =
RuleSet5 = protocol in (Http), direction request, url_host in "LinuxFirewall.Blacklist" : Block as BlackList
RuleSet5 = protocol in (Http), direction request, url_host in "LinuxFirewall.Whitelist" : Pass
RuleSet6 =
RuleSet7 = protocol in (Http), direction request, url_category in "LinuxFirewall.BlockCategory" : Block as _match
RuleSet8 =
RuleSet9 = protocol in (Http), divert input, direction request, threat_category in "LinuxFirewall.BlockThreat" : Block as _match
RuleSet9 = protocol in (Http), direction response, threat_category in "LinuxFirewall.BlockThreat" : Block as _match
RuleSet9 = protocol in (Smtp), threat_category in "LinuxFirewall.BlockThreat" : REJECT
RuleSet9 = protocol in (Smtp), url_category in "LinuxFirewall.BlockCategory" : REJECT
RuleSet9 = protocol in (Smtp), total_spam_score gt 0.80 : REJECT
RuleSet9 = protocol in (Pop3, Imap), threat_category in "LinuxFirewall.BlockThreat" : REPACK as _match
RuleSet9 = protocol in (Pop3, Imap), url_category in "LinuxFirewall.BlockCategory" : REPACK as _match
RuleSet9 = protocol in (Pop3, Imap), total_spam_score gt 0.80 : REPACK as _match
RuleSet10 =

最初のルールは、ExcludedProcパラメータ(上記を参照)で指定されたプロセスによって接続が確立された場合、他の条件を検査せずに接続をスキップすることを示します。次のルール(条件なしで実行されます)は保護された接続のラップ解除をブロックします。このルールとその下位にあるすべてのルールは、接続が除外されたプロセスで設定されていない場合にのみ考慮されます。また、後続のすべてのルールはプロトコルに依存するため、保護された接続のラップ解除が無効になっている場合は、条件がtrueと評価されるかどうかを定義できないため、ルールは実行されません。

次のルールは、送信HTTP接続に対する処理を制御します。

1.接続が確立されたホストがブラックリストに含まれている場合、そのホストがブラックリストに含まれているため、接続はブロックされます。他のスキャンは実行されません。

2.ホストがホワイトリストに含まれている場合、接続はスキップされ、他のスキャンは実行されません。

3.クライアントからリクエストされたURLが、望ましくないWebリソースのカテゴリーに含まれている場合は、脅威が検出されたために接続がブロックされます。他のスキャンは実行されません。

4.HTTP経由の脅威があるリモートホストから受信したレスポンスに、ブロックされたカテゴリーに属する脅威が含まれる場合、その脅威が検出されたために接続がブロックされます。他のスキャンは実行されません。

5.ローカルホストからリモートホストに移行したデータに、ブロックされたカテゴリーに属する脅威が含まれる場合、その脅威が検出されたために接続がブロックされます。他のスキャンは実行されません。

この5つのルールは、InspectHttpパラメータでOnが指定されている場合にのみ機能します。それ以外の場合、これらのルールはどれも機能しません。

RuleSet9で指定される次の6つのルールは、メールプロトコル(SMTP、POP3、IMAPプロトコル)を介して送受信されるデータのスキャンを制御します。これらのルールは、次の場合に有効になります。

送信されたメールメッセージに、添付ファイルが含まれている場合

送信されたメールメッセージに、望ましくないカテゴリーに属するURLが含まれている場合

送信されたメールメッセージがスパムとして分類された場合(スパムインデックスが0.8以上)

メールメッセージがSMTPプロトコルを介して送信される場合、メールの伝送(つまり送信または受信)はブロックされますが、IMAPとPOP3プロトコルの場合は、メールはそのコンテンツから悪意のあるコンテンツを削除するために処理(「再パッケージ」)されます。

メールメッセージのスパムの兆候をスキャンするためのコンポーネントであるDr.Web Anti-Spamが使用できない場合、スパムの兆候をスキャンするためのメールメッセージのスキャンは実行されません。この場合、スパムレベルのスキャン(total_spam_score値)を含むルールは使用できません。

メール処理ルールは、相応するInspect<EmailProtocol>パラメータにOnが指定されている場合にのみ実行されることに注意してください。それ以外の場合、これらのルールはどれも実行されません。さらに、送信されたメールメッセージのマルウェアの添付ファイルとスパムの兆候を調べるために、メールスキャン用のDr.Web MailDコンポーネントをインストールする必要があります。このコンポーネントがインストールされていない場合、「検査できません」というエラーのため、送信されたメールはブロックされます。検査できないメッセージの送信を許可するには、BlockUnchecked = Noパラメータを設定します(上記を参照)。また、メールスキャンコンポーネントがインストールされていない場合は、InspectSmtpInspectPop3InspectImapパラメータNoを指定することをお勧めします。

Dr.Web MailDはDr.Web for UNIX Internet Gatewaysに含まれていません。

 

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

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

protocol in (HTTP), src_ip in (10.10.0.0/24), url_category not in (Chats) : Pass

ルール

protocol in (HTTP), url_host in "LinuxFirewall.Blacklist" : Block as BlackList

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

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

protocol in (HTTP), url_category not in (Chats), url_host not in "LinuxFirewall.Blacklist", threat_category not in "LinuxFirewall.BlockCategory" : Pass

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

direction response, content_type in ("video/*") : Pass

ローカルコンピューターから読み込んだファイル(MIMEタイプが「video/*」のファイルを含む)は、レスポンスではなくリクエストで送信されるために(つまり変数directionには値requestがあるため)スキャンされます。