次の方法で共有


Puppet を使用して Linux に Microsoft Defender for Endpoint をデプロイする

適用対象:

Defender for Endpoint を試す場合は、 無料試用版にサインアップしてください。

この記事では、Puppet を使用して Defender for Endpoint on Linux をデプロイする方法について説明します。 展開を成功させるには、次のすべてのタスクを完了する必要があります。

重要

この記事には、サード パーティ製ツールに関する情報が含まれています。 これは統合シナリオの完了に役立ちますが、Microsoft ではサード パーティ製ツールのトラブルシューティング サポートを提供していません。
サポートについては、サード パーティベンダーにお問い合わせください。

前提条件とシステム要件

現在のソフトウェア バージョンの前提条件とシステム要件の説明については、 Linux 上の Defender for Endpoint のメイン ページを参照してください。

さらに、Puppet のデプロイでは、Puppet 管理タスクについて理解し、Puppet を構成し、パッケージをデプロイする方法を理解する必要があります。 Puppet には、同じタスクを完了するための多くの方法があります。 これらの手順では、パッケージのデプロイに役立つ apt など、サポートされている Puppet モジュールの可用性を前提としています。 組織が別のワークフローを使用する場合があります。 詳細については、 Puppet のドキュメントを参照 してください。

オンボーディング パッケージをダウンロードする

Microsoft Defender ポータルからオンボード パッケージをダウンロードします。

警告

Defender for Endpoint インストール パッケージの再パッケージ化は、サポートされているシナリオではありません。 これにより、製品の整合性に悪影響を及ぼし、改ざんアラートや更新プログラムの適用に失敗したトリガーなど、悪影響を及ぼす可能性があります。

  1. Microsoft Defender ポータルで、 設定>Endpoints>Device management>Onboarding に移動します

  2. 最初のドロップダウン メニューで、オペレーティング システムとして [Linux サーバー] を選択します。 2 番目のドロップダウン メニューで、デプロイ方法として [お好みの Linux 構成管理ツール ] を選択します。

  3. [オンボーディング パッケージをダウンロードする] を選択します。 ファイルを WindowsDefenderATPOnboardingPackage.zipとして保存します。

    オンボード パッケージをダウンロードするオプション

  4. コマンド プロンプトから、ファイルがあることを確認します。

    ls -l
    
    total 8
    -rw-r--r-- 1 test  staff  4984 Feb 18 11:22 WindowsDefenderATPOnboardingPackage.zip
    
  5. アーカイブの内容を抽出します。

    unzip WindowsDefenderATPOnboardingPackage.zip
    
    Archive:  WindowsDefenderATPOnboardingPackage.zip
    inflating: mdatp_onboard.json
    

Puppet マニフェストを作成する

Puppet サーバーによって管理されているデバイスに Defender for Endpoint on Linux をデプロイするための Puppet マニフェストを作成する必要があります。 この例では、puppetlabs から使用できる apt モジュールと yumrepo モジュールを使用し、モジュールが Puppet サーバーにインストールされていることを前提としています。

  1. Puppet インストールの modules フォルダーの下に、 install_mdatp/files フォルダーと install_mdatp/manifests を作成します。 このフォルダーは通常、Puppet サーバー上の /etc/puppetlabs/code/environments/production/modules にあります。

  2. 先ほど作成した mdatp_onboard.json ファイルを install_mdatp/files フォルダーにコピーします。

  3. デプロイ手順を含む init.pp ファイルを作成します。

    pwd
    
    /etc/puppetlabs/code/environments/production/modules
    
    tree install_mdatp
    
    install_mdatp
    ├── files
    │   └── mdatp_onboard.json
    └── manifests
        └── init.pp
    

install_mdatp/manifests/init.pp のコンテンツ

Defender for Endpoint on Linux は、次のいずれかのチャネルからデプロイできます。

各チャネルは、Linux ソフトウェア リポジトリに対応します。

チャネルの選択により、デバイスに提供される更新プログラムの種類と頻度が決まります。 insiders-fast のデバイスは、更新プログラムと新機能を受け取る最初のデバイスであり、その後、インサイダーが遅く、最後に prod が続きます。

新機能をプレビューし、早期フィードバックを提供するには、社内の一部のデバイスを 、Insider-fast または insider-slow を使用するように構成することをお勧めします。

警告

初期インストール後にチャネルを切り替えるには、製品を再インストールする必要があります。 製品チャネルを切り替えるには: 既存のパッケージをアンインストールし、新しいチャネルを使用するようにデバイスを再構成し、このドキュメントの手順に従って新しい場所からパッケージをインストールします。

ディストリビューションとバージョンをメモし、 https://packages.microsoft.com/config/[distro]/で最も近いエントリを特定します。

次のコマンドで、[ distro][version] を 特定した情報に置き換えます。

注:

RedHat、Oracle Linux、Amazon Linux 2、CentOS 8 の場合は、[ distro] を 'rhel' に置き換えます。

# Puppet manifest to install Microsoft Defender for Endpoint on Linux.
# @param channel The release channel based on your environment, insider-fast or prod.
# @param distro The Linux distribution in lowercase. In case of RedHat, Oracle Linux, Amazon Linux 2, and CentOS 8, the distro variable should be 'rhel'.
# @param version The Linux distribution release number, e.g. 7.4.

class install_mdatp (
  $channel = 'insiders-fast',
  $distro = undef,
  $version = undef
) {
  case $facts['os']['family'] {
    'Debian' : {
      $release = $channel ? {
        'prod'  => $facts['os']['distro']['codename'],
        default => $channel
      }
      apt::source { 'microsoftpackages' :
        location => "https://packages.microsoft.com/${distro}/${version}/prod",
        release  => $release,
        repos    => 'main',
        key      => {
          'id'     => 'BC528686B50D79E339D3721CEB3E94ADBE1229CF',
          'server' => 'keyserver.ubuntu.com',
        },
      }
    }
    'RedHat' : {
      yumrepo { 'microsoftpackages' :
        baseurl  => "https://packages.microsoft.com/${distro}/${version}/${channel}",
        descr    => "packages-microsoft-com-prod-${channel}",
        enabled  => 1,
        gpgcheck => 1,
        gpgkey   => 'https://packages.microsoft.com/keys/microsoft.asc',
      }
    }
    default : { fail("${facts['os']['family']} is currently not supported.") }
  }

  case $facts['os']['family'] {
    /(Debian|RedHat)/: {
      file { ['/etc/opt', '/etc/opt/microsoft', '/etc/opt/microsoft/mdatp']:
        ensure => directory,
        owner  => root,
        group  => root,
        mode   => '0755',
      }

      file { '/etc/opt/microsoft/mdatp/mdatp_onboard.json':
        source  => 'puppet:///modules/install_mdatp/mdatp_onboard.json',
        owner   => root,
        group   => root,
        mode    => '0600',
        require => File['/etc/opt/microsoft/mdatp'],
      }

      package { 'mdatp':
        ensure  => 'installed',
        require => File['/etc/opt/microsoft/mdatp/mdatp_onboard.json'],
      }
    }
    default : { fail("${facts['os']['family']} is currently not supported.") }
  }
}

展開

site.pp ファイルに上記のマニフェストを含めます。

cat /etc/puppetlabs/code/environments/production/manifests/site.pp
node "default" {
    include install_mdatp
}

登録済みのエージェント デバイスは、Puppet Server を定期的にポーリングし、検出されるとすぐに新しい構成プロファイルとポリシーをインストールします。

Puppet のデプロイを監視する

エージェント デバイスでは、次を実行してオンボード状態を確認することもできます。

mdatp health
...
licensed                                : true
org_id                                  : "[your organization identifier]"
...
  • licensed: これにより、デバイスが組織に関連付けられていることが確認されます。

  • orgId: これは Defender for Endpoint 組織識別子です。

オンボードの状態を確認する

スクリプトを作成することで、デバイスが正しくオンボードされていることを確認できます。 たとえば、次のスクリプトでは、登録されているデバイスのオンボード状態がチェックされます。

mdatp health --field healthy

上記のコマンドは、製品がオンボードされ、期待どおりに機能している場合に 1 を出力します。

重要

製品が初めて起動すると、最新のウイルス対策定義がダウンロードされます。 インターネット接続によっては、これには数分かかる場合があります。 この間、上記のコマンドは 0 の値を返します。

製品が正常でない場合は、終了コード ( echo $?で確認できます) は問題を示します。

  • 1 デバイスがまだオンボードされていない場合は。
  • 3 デーモンへの接続を確立できない場合。

インストールの問題をログする

エラーが発生したときにインストーラーによって作成される自動的に生成されたログを検索する方法の詳細については、「ログのインストールの 問題」を参照してください。

オペレーティング システムのアップグレード

オペレーティング システムを新しいメジャー バージョンにアップグレードするときは、最初に Linux 用 Defender for Endpoint をアンインストールし、アップグレードをインストールしてから、最後にデバイスの Linux 用 Defender for Endpoint を再構成する必要があります。

アンインストール

init.pp ファイルに次の内容を含む、install_mdatpに似たremove_mdatpモジュールを作成します。

class remove_mdatp {
    package { 'mdatp':
        ensure => 'purged',
    }
}

ヒント

さらに多くの情報を得るには、 Tech Community 内の Microsoft Security コミュニティ (Microsoft Defender for Endpoint Tech Community) にご参加ください。