Linuxでウイルス対策スキャンをスケジュールする

この記事では、LinuxのMicrosoft Defender for Endpointでスケジュールされたウイルス対策スキャンを構成する方法について説明します。 これは、Linux デバイスを管理し、一元的なスキャン スケジュールを使用して継続的なウイルス対策保護を確保する IT およびセキュリティ管理者を対象としています。 開始する前に、前提条件を確認して 環境が必要な要件を満たしていることを確認します。

概要

LinuxのMicrosoft Defender for Endpointでは、スケジュールされたウイルス対策スキャンがサポートされ、デバイス間で継続的な保護を維持するのに役立ちます。 スケジュールされたスキャンは、カスタム cron ジョブに依存する代わりに、環境間で一貫したスキャンを行うために一元的に構成されます。

スケジュールされたスキャンを使用すると、一定の間隔で、または毎日特定の時刻にクイック スキャンを実行したり、クイック スキャンまたはフル スキャンの種類を使用して毎週のスキャンを構成したりできます。 また、スキャンの実行方法 (パフォーマンスへの影響の軽減、デバイスのアイドル状態の待機、デバイス間での開始時刻のランダム化など) を制御することもできます。

スケジュールされたスキャンは、デバイス設定の管理方法に応じて、Microsoft Defender ポータルの [セキュリティ設定管理] でマネージド構成 (マネージド JSON) またはポリシー エクスペリエンスを使用して構成できます。

前提条件

Linuxでスケジュールされたウイルス対策スキャンを構成する前に、次の要件が満たされていることを確認してください。

  • Microsoft Defender for Endpointは、サポートされているLinuxディストリビューションにインストールされ、オンボードされます。
  • デバイスは、運用リング最小エージェント バージョン 101.26032.0000 を実行しています。
  • デバイスが正常であり、Microsoft Defender サービスに正しく報告されている

構成方法に応じて、次の前提条件も満たす必要があります。

  • MDATP マネージド JSON 構成:

    • 構成ファイルを に展開できる必要があります。 /etc/opt/microsoft/mdatp/managed
    • システム構成ファイルを管理するために必要なアクセス許可が必要です。
    • 他のウイルス対策設定にマネージド構成を既に使用している場合は、置き換えるのではなく、既存の構成ファイルに追加します。
  • Microsoft Defender ポータル:

    • セキュリティ ポリシーを作成して割り当てるための適切なアクセス許可が必要です

スケジュールされたウイルス対策スキャンの種類

Linuxの Defender for Endpoint では、スケジュールされたスキャンに対して次のスキャンの種類がサポートされています。

  • クイック スキャン: クイック スキャンでは、スタートアップ パスやシステム サービスなど、マルウェアが存在する可能性が最も高い重要なシステムの場所に焦点を当てます。 これらはより高速に完了し、毎日のスキャンや間隔ベースのスキャンなど、頻繁なスケジュール設定に推奨されます。
  • フル スキャン: フル スキャンは、デバイス上のすべてのファイルとディレクトリを調べます。 より包括的なカバレッジを提供しますが、システムのサイズとワークロードによっては、完了するまでに時間がかかる場合があります。 これらは通常、週1回など、より低い頻度でスケジュールされます。

スケジュール オプション

スケジュールされたスキャンは、次のスケジュール オプションを使用して構成できます。

  • 時間単位のクイック スキャン: 定期的な間隔 ( N 時間ごと) でクイック スキャンを実行します。
  • 毎日のクイック スキャン: 毎日特定の時刻にクイック スキャンを実行します。
  • 週単位のスキャン: クイック スキャンまたはフル スキャンのいずれかを選択するオプションを使用して、指定した日時にスキャンを実行します。

これらのスケジューリング オプションは、個別に構成して組み合わせることができます。 たとえば、毎日のクイック スキャンと週単位のフル スキャンを実行できます。

スケジュールされたスキャン設定

次の表では、スケジュールされたウイルス対策スキャンを構成するために使用できる設定について説明します。

カテゴリ 設定 説明 使用可能な値 既定値
毎日のスキャン設定 サイクル間隔 N 時間ごとにクイック スキャンを実行します (間隔ベースのスケジューリング)。 整数 (時間) 0 = 無効 0
毎日のスキャン設定 timeOfDay (毎日) 特定の時刻に 1 日 1 回クイック スキャンを実行します。 値は午前 0 時 (サーバーのローカル時刻) から分単位です 0 から 1440 (たとえば、120 = 2:00 AM) 0
週単位のスキャン設定 dayOfWeek スケジュールされたスキャンの実行日を指定します。 0–8
0 = 無効
1 ~ 7 = 日曜日から土曜日
8 = 毎日
0
週単位のスキャン設定 timeOfDay (毎週) 毎週のスキャンを実行するタイミングを指定します。 値は午前 0 時 (サーバーのローカル時刻) から分単位です 0–1440 120 (午前 2:00)
週単位のスキャン設定 scanType 毎週のスキャンのスキャンの種類を指定します。 簡易、完全 クイック
詳細設定 (省略可能) アイドル時にスキャンを実行 システムがアイドル状態になるまでスキャンを遅延します。 true、false false
詳細設定 (省略可能) lowPriorityScheduledScan CPU の優先順位を下げ、スキャンを実行します。 true、false false
詳細設定 (省略可能) 定義の更新を確認 スキャンを開始する前に、最新のセキュリティ インテリジェンス更新プログラムを確認します。 true、false false
詳細設定 (省略可能) スキャン開始時刻をランダム化 同時スキャンを回避するために、定義された期間内 (時間単位) にスキャン開始時刻をランダム化します。 0–23 0
詳細設定 (省略可能) 除外を無視 構成された除外を適用せずにスキャンを実行します。 true、false false

注:

intervaltimeOfDay (毎日) は独立した設定です。 両方が構成されている場合、個別のクイック スキャン スケジュールが作成され、1 日に複数のスキャンが実行される可能性があります。

スケジュールされたウイルス対策スキャンを構成する

環境でのデバイス構成の管理方法に応じて、次のいずれかの方法を使用して、Linuxでスケジュールされたウイルス対策スキャンを構成できます。

Defender ポータルでセキュリティ設定管理ポリシーを使用する

  1. セキュリティ設定の管理をサポートするようにテナントを構成します。

  2. Defender ポータルで、System>Settings>Endpoints>Configuration management>Enforcement スコープに移動し、Linux プラットフォームを選択します。

  3. MDE-Management タグを使用してデバイスにタグを付けます。 ほとんどのデバイスは数分でポリシーを登録して受信しますが、一部のデバイスでは最大 24 時間かかる場合があります。 詳細については、「Intuneを使用して、Intuneに登録されていないデバイスでMicrosoft Defender設定を管理する方法について説明します。

  4. Microsoft Entra グループを作成します。

    • オペレーティング システムの種類に基づいて動的Microsoft Entra グループを作成して、Defender for Endpoint にオンボードされているすべてのデバイスが適切なポリシーを確実に受け取れるようにします。
    • この動的グループには、Defender for Endpoint によって管理されるデバイスが自動的に含まれるので、管理者が手動で新しいポリシーを作成する必要がなくなります。 詳細については、「Microsoft Entra グループの作成」を参照してください。
  5. エンドポイント セキュリティ ポリシーを作成します。

    1. Defender ポータルで、[ Endpoints>Configuration management>Endpoint セキュリティ ポリシー] に移動し、[ 新しいポリシーの作成] を選択します。
    2. [プラットフォーム] で、[Linux] を選択します
    3. [ウイルス対策] Microsoft Defenderテンプレートを選択し、[ポリシーの作成] を選択します。
    4. [基本] ページでプロファイルに名前と説明を入力し、[次へ] を選択します。
    5. [ 構成設定 ] ページで、ページの末尾にある [ スキャンのスケジュール ] セクションに移動し、このプロファイルで管理する スケジュールされたスキャン設定 を構成します。
    6. 設定の構成が完了したら、[次へ] を選択します。
    7. [ 割り当て] ページで 、このプロファイルを受け取るグループを選択します。 [次へ] を選択します。
    8. [ 確認と作成 ] ページで、完了したら [保存] を選択 します。 作成したプロファイルのポリシーの種類を選択すると、新しいプロファイルが一覧に表示されます。

    詳細については、「Microsoft Defender for Endpointでのエンドポイント セキュリティ ポリシーの管理」を参照してください。

    [エンドポイント セキュリティ ポリシー] オプションのスクリーンショット。

mdatp マネージド JSON 構成を使用する

エンタープライズ環境では、構成プロファイルを使用してウイルス対策スキャンをスケジュールできます。 通常、Puppet、Ansible、またはその他の管理コンソールなどの構成管理ツールを使用して、mdatp_managed.jsonという名前のファイルを場所/etc/opt/microsoft/mdatp/managedにプッシュします。

既に mdatp_managed.json を使用して他の Defender for Endpoint 設定 (除外やウイルス対策設定など) を構成している場合は、既存のファイルを置き換えないでください。 スケジュールされたスキャン設定は、現在の構成と共に、既存のマネージド JSON に追加する必要があります。 詳細については、「LinuxのMicrosoft Defender for Endpointでセキュリティ設定を構成する」を参照してください。

次の例では、次の構成が行われます。

  • 毎週土曜日の午前 3 時に完全スキャン。
  • 毎日午前 3:00 にクイック スキャンを毎日実行します。
  • スキャンは、デバイスがアイドル状態の場合にのみ実行されます。
  • 優先順位の低いスケジューリングを使用して CPU への影響を軽減しました。
  • 定義の更新は、スキャンの前にチェックされます。
  • スキャン中は除外は無視されます。
  • スキャン開始時刻は最大 3 時間ランダム化されます。
{
  "antivirusEngine": {
    "scheduledScan": "enabled"
  },
  "scheduledScan": {
    "weeklyConfiguration": {
      "dayOfWeek": 7,
      "scanType": "full",
      "timeOfDay": 180
    },
    "dailyConfiguration": {
      "timeOfDay": 180
    },
    "runScanWhenIdle": true,
    "lowPriorityScheduledScan": true,
    "checkForDefinitionsUpdate": true,
    "ignoreExclusions": true,
    "randomizeScanStartTime": 3
  }
}

コマンド ラインを使用してスケジュールされたスキャンを構成する

Microsoft Defender for Endpoint コマンドライン ツール (mdatp) を使用して、Linux デバイスでスケジュールされたウイルス対策スキャンを直接構成できます。 この方法は、テストまたは単一デバイス構成に役立ちます。

スケジュールされたスキャンを有効にする:

mdatp config scheduled-scan settings feature --value enabled

毎日のクイック スキャンを構成する:

特定の時刻 (午前 0 時から数分) に毎日のクイック スキャンを実行します。

例: 毎日のクイック スキャン (午前 2 時)

mdatp config scheduled-scan quick-scan time-of-day --value 120

間隔ベースのクイック スキャンを構成します。

クイック スキャンを定期的に 1 時間ごとに実行します。

例: クイック スキャンを 6 時間ごとに実行する

mdatp config scheduled-scan quick-scan hourly-interval --value 6

毎週のスキャンを構成する:

特定の日、時刻、スキャンの種類で毎週のスキャンをスケジュールします。

例: 毎週水曜日の午前 3:00 に毎週のフル スキャン

mdatp config scheduled-scan weekly-scan --day-of-week 4 --time-of-day 180 --scan-type full

注:

CLI ベースの構成は、テストまたはアドホックセットアップに推奨されます。 大規模なデプロイの場合は、マネージド JSON 構成またはポータル ポリシー Microsoft Defender使用します。

構成の優先順位

スケジュールされたスキャン設定が複数の方法を使用して構成されている場合は、Microsoft Defenderポータル ポリシー (セキュリティ設定管理) がローカル構成 (マネージド JSON または CLI) よりも優先されます。

スケジュールされたウイルス対策スキャンを確認する

スケジュールされたスキャンを構成した後、構成が正しく適用されていること、およびスキャンが期待どおりに実行されていることを確認します。

構成の状態を確認する

次のコマンドを実行して、スケジュールされたスキャン設定が適用されていることを確認します。

mdatp health --details scheduled_scan

このコマンドは、デバイス上の現在のスケジュールされたスキャン構成を示します。

スケジュールされたスキャン実行を確認する

実行されたスキャンの履歴を表示するには:

mdatp scan list

このコマンドは、完了したスキャンと進行中のスキャンを表示します。

デバイス レベルで Defender ポータルからスキャン アクティビティを直接確認することもできます。 最後のフル スキャンと最後のクイック スキャンが表示されます。

  1. [Assets>Devices] に移動します。
  2. ターゲット Linux デバイスを選択します。
  3. [ 概要 ] タブで、[ デバイスの正常性状態 ] セクションを見つけます。

これにより、スケジュールされたスキャンがデバイスで期待どおりに実行されているかどうかを確認できます。

よく寄せられる質問

スケジュールされたスキャンでは、リアルタイム保護を有効にする必要がありますか?

その必要はありません。 スケジュールされたスキャンは、リアルタイム保護とは無関係に動作します。 リアルタイム保護が無効になっている場合や、デバイスがパッシブまたはオンデマンド モードの場合でも実行できます。

日単位と週単位のスキャンを一緒に構成できますか?

はい。 日単位と週単位の構成を共存させることができます。 一般的には、通常のカバレッジには毎日スキャンを行い、より詳細な検査には週に1回フルスキャンを実施するパターンがよく使われます。

毎日のスキャンに使用されるスキャンの種類は何ですか?

毎日のスキャンは、エンジンの既定の動作に従います。これらは常にクイック スキャンです。 スキャンの種類は、毎週のスキャンに対して明示的に構成できます。

スケジュールされたスキャン中に除外が適用されますか?

既定では、スケジュールされたスキャンでは、構成された除外が適用されます。 ignoreExclusionsが true に設定されている場合、スケジュールされたスキャンは実行中の除外を無視します。

スキャン スケジュールに使用されるタイム ゾーン

スケジュールされたすべてのスキャン時間は、デバイスのローカル タイム ゾーンを使用して評価されます。

毎日または毎週の構成が指定されていない場合はどうなりますか?

日単位または週単位の構成が定義されていない場合、スケジュールされたスキャンは実行されません。

デバイス間でスキャンの開始時刻をずらすのはできますか?

randomizeScanStartTimeを使用して、定義されたウィンドウ内でスキャンの開始をランダム化し、フリート全体の同時負荷を軽減します。

サーバーがオフラインの場合はどうなりますか?

スケジュールされたスキャンは、デバイスがスリープ状態の間、スケジュールされた時刻には実行されません。 代わりに、スケジュールされたスキャンは、デバイスがスリープ モードから再開されたときに実行されます。 デバイスがオフになっている場合、スキャンは次回のスケジュールされたスキャン時刻に実行されます。