Windows でオンプレミス Docker を使用して自動ログ アップロードを構成する

Windows 上の Docker を使用して、Defender for Cloud Apps の継続的レポートの自動ログ アップロードを構成できます。

前提条件

  • アーキテクチャの仕様:

    • オペレーティング システム: 次のいずれか:

      • Windows 10 (Fall creators update)

      • Windows Server バージョン 1709 以上 (SAC)

      • Windows Server 2019 (LTSC)

    • ディスク領域: 250 GB

    • CPU コア数: 2

    • CPU アーキテクチャ: Intel 64 および AMD 64

    • RAM: 4 GB

    サポートされている Docker アーキテクチャの一覧については、Docker のインストール ドキュメントを参照してください。

  • ネットワーク要件で説明されているとおりにファイアウォールを設定する

  • Hyper-V でオペレーティング システム上の仮想化を有効にすることが必要

重要

  • ユーザー数が 250 人を超えるか、年間収益が 1,000 万米国ドルを超える企業のお客様は、Docker Desktop for Windows を使用するために有料サブスクリプションが必要です。 詳細については、「Docker subscription overview」をご覧ください。
  • ログを収集するには、ユーザーが Docker にサインインする必要があります。 Docker ユーザーには、サインアウトせずに切断するようアドバイスすることをお勧めします。
  • Docker for Windows は、VMWare 仮想化シナリオでは正式にサポートされていません。
  • Docker for Windows は、ネストされた仮想化シナリオでは正式にサポートされていません。 ネストされた仮想化を使用する予定がある場合は、Docker の公式ガイドを参照してください。
  • Docker for Windows のその他の構成および実装に関する考慮事項については、「Windows に Docker デスクトップをインストールする」を参照してください。

Note

既存のログ コレクターがあり、それを再度デプロイする前に削除したい場合、または単に削除したい場合は、次のコマンドを実行します。

docker stop <collector_name>
docker rm <collector_name>

ログ コレクターのパフォーマンス

ログ コレクターは、1 時間あたり最大 50 GB の容量のログを処理できます。 ログ収集プロセスの主なボトルネックは次のとおりです。

  • ネットワーク帯域幅 - ネットワーク帯域幅によって、ログのアップロード速度が決まります。

  • 仮想マシンの I/O パフォーマンス - ログがログ コレクターのディスクに書き込まれる速度を決定します。 ログ コレクターには、ログの収集速度を監視して、アップロード速度と比較する安全メカニズムが組み込まれています。 輻輳の場合、ログ コレクターは、ログ ファイルの削除を開始します。 1 時間あたり 50 GB を超えるのが普通である場合は、複数のログ コレクターにトラフィックを分割することをお勧めします。

セットアップと構成

  1. Microsoft Defender ポータルで、[設定] を選択します。 次に、[クラウド アプリ] を選択します。

  2. [Cloud Discovery]で、[自動ログ アップロード] を選択します。 次に、[データ ソース] タブを選択します。

  3. ログをアップロードするファイアウォールまたはプロキシそれぞれに対応するデータ ソースを作成します。

    1. [+Add data source (データ ソースの追加)] を選択します。
      Add a data source.
    2. プロキシまたはファイアウォールの [名前] を付けます。
      Add name for data source.
    3. [ソース] リストからアプライアンスを選択します。 一覧に表示されていないネットワーク アプライアンスを使用するために [カスタム ログ形式] を選ぶ場合、構成方法の詳細についてはカスタム ログ パーサーの使用に関するページをご覧ください。
    4. 予想されるログ形式のサンプルとログを比較します。 ログ ファイルの形式がこのサンプルと一致しない場合は、データ ソースを [その他] として追加する必要があります。
    5. [レシーバーの種類] を、[FTP][FTPS][Syslog – UDP][Syslog – TCP]、または [Syslog – TLS] に設定します。

    Note

    多くの場合、セキュリティで保護された転送プロトコル (FTPS、Syslog – TLS) と統合するには、ファイアウォール/プロキシの追加設定が必要です。

    f. ネットワークのトラフィックを検出するために使用できるログの取得先であるファイアウォールおよびプロキシそれぞれに対して、この手順を繰り返します。 ネットワーク デバイスごとに専用のデータ ソースを設定することをお勧めします。これにより、次のことができるようになります。

    • 調査目的で、各デバイスの状態を個別に監視する。
    • 各デバイスが異なるユーザー セグメントで使用されている場合、デバイスごとに Shadow IT Discovery を調べる。
  4. 画面上部の [ログ コレクター] タブに移動します。

    1. [ログ コレクターの追加] を選択します。
    2. ログ コレクターに [名前] を付けます。
    3. Docker のデプロイに使用するマシンのホスト IP アドレス (プライベート IP アドレス) を入力します。 ホスト名を解決する DNS サーバー (または同等のもの) がある場合は、ホストの IP アドレスをマシン名に置き換えることができます。
    4. コレクターに接続するすべてのデータ ソースを選択し、更新を選択して構成を保存します。 Select data source to connect.
  5. 展開の詳細が表示されます。 ダイアログから実行コマンドをコピーします。 クリップボードにコピーアイコン copy to clipboard icon. を使用できます。 これは後で必要になります。

  6. 予想されるデータ ソース構成をエクスポートします。 この構成では、アプライアンスでログのエクスポートを設定する方法を記述します。

    Create log collector.

    Note

    • 1 つのログ コレクターで複数のデータ ソースを処理できます。
    • ログ コレクターを Defender for Cloud Apps と通信するように構成するときに情報が必要になるため、画面の内容をコピーします。 Syslog を選択した場合、この情報には、Syslog リスナーがリッスンするポートに関する情報が含まれます。
    • 初めて FTP 経由でログデータを送信するユーザーは、FTP ユーザーのパスワードを変更することをお勧めします。 詳細については、「FTPパスワードの変更」を参照してください。

ステップ 2 – コンピューターのオンプレミスの展開

次の手順は、Windows での展開について説明したものです。 他のプラットフォームの展開手順は若干異なります。

  1. 管理者として Windows コンピューターで PowerShell ターミナルを開きます。

  2. 次のコマンドを実行して、Windows Docker インストーラー PowerShell スクリプト ファイルをダウンロードします。Invoke-WebRequest https://adaprodconsole.blob.core.windows.net/public-files/LogCollectorInstaller.ps1 -OutFile (Join-Path $Env:Temp LogCollectorInstaller.ps1)

    インストーラーが Microsoft によって署名されていることを検証するには、「インストーラーの署名を検証する」を参照してください。

  3. PowerShell スクリプトの実行を有効にするには、Set-ExecutionPolicy RemoteSignedを実行します。

  4. 実行: & (Join-Path $Env:Temp LogCollectorInstaller.ps1)これにより、マシンに Docker クライアントがインストールされます。

    Docker is installed.

    コマンドを実行すると、マシンが自動的に再起動されます。

  5. マシンが再び起動して実行されたら、PowerShell で同じコマンドを実行します。& (Join-Path $Env:Temp LogCollectorInstaller.ps1)

    Run PowerShell command again.

  6. Docker インストーラーを実行します。 Hyper-V の代わりに WSL 2 を使用する (推奨) を選択します。

    Installing Docker desktop.

    インストールが完了すると、マシンは自動的に再起動されます。

  7. 再起動が完了したら、Docker クライアントを開き、Docker サブスクリプション契約に進みます。

    Accept Docker service agreement.

  8. WSL2 のインストールが完了していない場合は、次のポップアップ メッセージが表示されます。

    WSL 2 installation is incomplete.

  9. Linux カーネル更新パッケージをダウンロードする」の説明に従ってパッケージをダウンロードして、インストールを完了します。

  10. Docker デスクトップ クライアントを再度開き、起動していることを確認します。

    Open the Docker Desktop client.

  11. CMD を管理者として実行し、ポータルで生成された実行コマンドを入力します。 プロキシを構成する必要がある場合は、プロキシ IP アドレスとポート番号を追加します。 たとえば、プロキシの詳細が 192.168.10.1:8080 の場合は、次のように実行コマンドを更新します。

    (echo db3a7c73eb7e91a0db53566c50bab7ed3a755607d90bb348c875825a7d1b2fce) | docker run --name MyLogCollector -p 21:21 -p 20000-20099:20000-20099 -e "PUBLICIP='192.168.1.1'" -e "PROXY=192.168.10.1:8080" -e "CONSOLE=mod244533.us.portal.cloudappsecurity.com" -e "COLLECTOR=MyLogCollector" --security-opt apparmor:unconfined --cap-add=SYS_ADMIN --restart unless-stopped -a stdin -i mcr.microsoft.com/mcas/logcollector starter
    

    Create log collector.

  12. 次のコマンドで、コレクターが正しく動作していることを確認します: docker logs <collector_name>

"Finished successfully!" というメッセージが表示される必要があります。

Verify that collector is running properly.

ステップ 3 - ネットワーク機器のオンプレミス構成

ネットワーク ファイアウォールとプロキシを、ダイアログの指示に従って FTP ディレクトリの専用 Syslog ポートにログが定期的にエクスポートされるように構成します。 次に例を示します。

BlueCoat_HQ - Destination path: \<<machine_name>>\BlueCoat_HQ\

手順 4 - ポータルで展開が成功したことを確認する

[ログ コレクター] の表でコレクターの状態をチェックし、状態が [接続済み] であることを確認します。 [作成済み] の場合は、ログ コレクターの接続と解析が完了していない可能性があります。

Verify that the collector status is Connected.

ガバナンス ログに移動して、ログがポータルに定期的にアップロードされていることを確認することもできます。

または、次のコマンドを使用して、Docker コンテナー内からログ コレクターの状態をチェックできます。

  1. 次のコマンドを使用してコンテナーにサインインします: docker exec -it <Container Name> bash
  2. 次のコマンドを使用して、ログ コレクターの状態を確認します: collector_status -p

展開中に問題が発生した場合は、「Troubleshooting Cloud Discovery」(Cloud Discovery のトラブルシューティング) を参照してください。

省略可能 - カスタムの継続的レポートを作成する

ログが Defender for Cloud Apps にアップロードされ、レポートが生成されていることを確認します。 検証の後、カスタム レポートを作成します。 Microsoft Entra ユーザー グループに基づいて、カスタム検出レポートを作成できます。 たとえば、マーケティング部門のクラウドの使用状況を確認する場合、ユーザー グループのインポート機能を使用してマーケティング グループをインポートします。 次に、このグループに対するカスタム レポートを作成します。 また、IP アドレス タグや IP アドレスの範囲に基づいてレポートをカスタマイズすることもできます。

  1. Microsoft Defender ポータルで、[設定] を選択します。 次に、[クラウド アプリ] を選択します。

  2. [Cloud Discovery] で、[継続的レポート] を選択します。

  3. [レポートの作成] ボタンを選択し、フィールドに入力します。

  4. [フィルター] では、データ ソース、インポートされたユーザー グループ、または IP アドレスのタグと範囲を指定してフィルターすることができます。

    Note

    継続レポートにフィルターを適用すると、選択内容は除外されずに含まれます。 たとえば、特定のユーザー グループにフィルターを適用すると、そのユーザー グループのみがレポートに含まれます。

    Custom continuous report.

省略可能: インストーラーの署名の検証

Docker のインストーラーが Microsoft によって署名されていることを確認するには:

  1. ファイルを右クリックし、プロパティを選択します。

  2. デジタル署名 を選択し、このデジタル署名は OK と表示されていることを確認します。

  3. [署名者名]Microsoft Corporation が唯一のエントリであることを確認します。

    Digital signature valid.

    デジタル署名が有効でない場合は、「このデジタル署名は無効です」と表示されます。

    Digital signature not valid.

次のステップ

問題が発生した場合は、私たちがお手伝いいたします。 お使いの製品の問題について支援やサポートを受けるには、サポート チケットを作成してください。