スキャンエンジン設定

スタンドアロンの Tenable Nessus Professional または Tenable Nessus Expert であるか、Tenable Vulnerability ManagementTenable Security Center によって管理されている Tenable Nessus スキャナーであるかに関わらず、すべての Tenable Nessus デプロイメントで詳細設定を行うことができます。これらの設定の一部はスキャンエンジン設定と呼ばれ、Tenable Nessus スキャンエンジンのスキャンパフォーマンスを制御します。スキャンポリシーの [Settings] (設定) の [Performance Options] (パフォーマンスオプション) セクションで、スキャンエンジン設定を調整できます。

Tenable Nessus スキャナー設定

次の表は、すべての詳細設定を網羅したリストではありません。スキャンエンジンのパフォーマンスに影響する設定のリストです。詳細設定の全一覧については、詳細なスキャン設定を参照してください。

設定 識別子 定義
Global Max Hosts Concurrently Scanned (同時スキャンされたグローバル最大ホスト数) global.max_hosts 実行中のすべてのスキャンでスキャナーが同時に処理するターゲットの総数。この値は、スキャンエンジンで実行されるターゲットの総数を制限します。スキャンエンジンは、global.max_hosts に割り当てられた値を超えるターゲットを処理しません。
Max Concurrent Scans (最大同時スキャン) global.max_scans スキャンエンジンが同時に実行するスキャンの総数。
Global Max TCP Sessions (最大グローバル同時 TCP セッション) global.max_simult_tcp_sessions すべてのスキャンに許可される同時 TCP セッションの最大数。
Global Max Port Scanners (最大グローバルポートスキャナ) global.max_portscanners ポートスキャナータスクスレッドプールに割り当てられるスレッドの最大数。この値は、すべてのスキャンでエンジンが同時に実行するポートスキャナーの最大数を表します。
Max Concurrent Hosts Per Scan (スキャンごとの最大同時ホスト数) max_hosts スキャンエンジンが特定のスキャンで同時に処理するターゲットの最大数。
Max Concurrent Checks Per Host (ホストごとの最大同時チェック数) max_checks 特定のターゲットに対して同時に実行できるプラグインの最大数。この設定の値によって、各エンジンスレッドがターゲットに対して実行するプラグインの数が決まります。
Max TCP Sessions Per Scan (スキャンごとの TCP セッションの最大数) max_simult_tcp_sessions 特定のスキャンに許可される同時 TCP セッションの最大数。
Max TCP Sessions Per Host (ホストごとの TCP セッションの最大数) host.max_simult_tcp_sessions 1 つのターゲットに許可される同時 TCP セッションの最大数。
Max Hosts Per Engine Thread (エンジンスレッドごとのホストの最大数) engine.max_hosts エンジンスレッドが処理するターゲットの最大数。
Optimal Hosts Per Engine Thread (エンジンスレッドごとの最適なホスト数) engine.optimal_hosts 新しいエンジンスレッドを開始する前にスキャンエンジンがエンジンスレッドに割り当てるターゲットの数。
Max Engine Checks (エンジンスチェックの最大数 engine.max_checks エンジンスレッドで実行されているすべてのターゲットにおいて、そのスレッドで実行できるプラグインの総数。
Max Engine Threads (エンジンスレッドの最大数) engine.max スキャンエンジンが開始するエンジンスレッドの最大数。
Minimum Engine Threads (エンジンスレッドの最小数) engine.min スキャンエンジンがスキャンの処理を開始するエンジンスレッドの最小数。

以降のセクションでは、優先順位とスキャンエンジンによるターゲットの処理に一部の設定がどのように影響するかに関する注意事項について簡単に説明します。

最大ホスト数の設定

次の設定は、スキャンエンジンのターゲットの処理に影響します。

  • global.max_hosts

  • max_hosts

  • engine.max_hosts

  • engine.max

ほとんどのシナリオでは、同時ターゲットの最大数を決定する際に、global.max_hosts がその他の設定よりも優先されますが、そうならないようにすることもできます。たとえば、engine.max_hostsengine.max を操作することで、スキャナーが同時にスキャンするターゲットの最大数を制限できます。engine.max_hosts および engine.max の値がそのように設定されている場合は、次のようになります。

(engine.max_hosts x engine.max) < global.max_hosts

この場合、スキャナーはより厳しい制限 (engine.max_hostsengine.max を乗算した値) を適用します。

最大同時 TCP セッションの設定

次の 3 つの詳細設定が、スキャンエンジンの同時 TCP セッションの数に影響を与えます。

  • global.max_simult_tcp_sessions

  • max_simult_tcp_sessions

  • host.max_simult_tcp_sessions

global.max_simult_tcp_sessions 設定は、スキャナーで実行されるすべてのスキャンに適用される絶対上限です。max_simult_tcp_sessions 値は特定のスキャンの同時 TCP セッションを制限し、host.max_simult_tcp_sessions 設定はホストあたりの同時 TCP セッションを制限します。

最大チェック数の設定

スキャンエンジンが同時に実行できるプラグインの数は、次の 2 つの設定で制御します。

  • max_checks

  • engine.max_checks

engine.max_checks 設定は max_checks の設定よりも優先されるため、エンジンが同時に実行するプラグインの総数が (engine.max_checks x engine.max) を超えることはありません。

Tenable Vulnerability Management および Tenable Security Center のポリシー設定

Tenable Vulnerability Management または Tenable Security Center でスキャンを起動すると、1 つのスキャンが 1 つのスキャナーに割り当てられるわけではありません。代わりに、複数のスキャナーを効果的に利用するために、1 つのスキャンをより小さなチャンク (タスクと呼ばれる) に分割し、タスクを複数のスキャナーに分散します。これにより、複数のスキャナーが 1 つの全体的なスキャンを並行して実行できますが、スキャンエンジン設定の適用方法にも影響します。Tenable Nessus スキャンエンジンは、個々のタスクを 1 つのスキャン全体として解釈します。

たとえば、1,000 の IP をターゲットとする 1 つのスキャンがあるとします。Tenable Vulnerability Management および Tenable Security Center は、次の方法でスキャンを処理します。

  • Tenable Vulnerability ManagementTenable Vulnerability Management はスキャンターゲットを、それぞれ 120 IP の 8 個のタスクに分割し、9 個目のタスクに 40 IP を割り当てます。そして、スキャンポリシーの max_hosts (ユーザーインターフェースでは [Max simultaneous hosts per scan] (スキャンごとの同時ホストの最大数)) が 5 に設定されていると仮定します。このシナリオでは、特定のスキャナーがこれらの 9 個のタスクのうちの 5 個のタスクを取得し、最大 25 ホストを並列実行します (スキャンエンジンの設定に従い、スキャンあたり 5)。最大 5 ホストを並列実行するわけではありません。スキャナーが 5 個のタスクを完了すると、Tenable Vulnerability Management からタスクの新しいバッチを受け取り、スキャンジョブ全体が完了するまでスキャンを続行する場合もあります。

  • Tenable Security CenterTenable Security Center はスキャンターゲットを、それぞれ 8 IP の 125 個のタスクに分割します。そして、スキャンポリシーの max_hosts (ユーザーインターフェースでは [Max simultaneous hosts per scan] (スキャンごとの同時ホストの最大数)) がデフォルト値の 30 に設定されていると仮定します。このシナリオでは、特定のスキャナーが 125 個のタスクのうち 4 個のタスクを取得し、最大 30 ホストを並列実行します (スキャンエンジンの設定に従い、最初の 3 つのタスクで 8、最後のタスクで 6)。スキャナーがタスクを完了すると、Tenable Security Center から新しいタスクを受け取り、スキャンジョブ全体が完了するまでスキャンを続行します。

それぞれの「スキャンごと」の設定は、スキャン全体ではなく、個々の Tenable Vulnerability Management タスクまたは Tenable Security Center タスクに適用されます。これにより、スキャンポリシーでこれらのパフォーマンス調整パラメーターを設定するときに、混乱やスキャナーの予期しない動作が発生することがあります。