Menyebarkan Microsoft Defender untuk Titik Akhir di Linux dengan Puppet

Anda dapat menyebarkan Defender untuk Titik Akhir di Linux dengan menggunakan berbagai alat dan metode. Artikel ini menjelaskan cara menyebarkan Defender untuk Titik Akhir di Linux menggunakan Puppet. Untuk menggunakan metode lain, lihat bagian Konten terkait.

Important

Jika Anda ingin menjalankan beberapa solusi keamanan secara berdampingan, lihat Pertimbangan untuk performa, konfigurasi, dan dukungan.

Anda mungkin telah mengonfigurasi pengecualian keamanan bersama untuk perangkat yang di-onboarding ke Microsoft Defender untuk Titik Akhir. Jika Anda masih perlu mengatur pengecualian bersama untuk menghindari konflik, lihat Menambahkan Microsoft Defender untuk Titik Akhir ke daftar pengecualian untuk solusi yang ada.

Important

Artikel ini berisi informasi tentang alat pihak ketiga. Ini disediakan untuk membantu menyelesaikan skenario integrasi, namun, Microsoft tidak memberikan dukungan pemecahan masalah untuk alat pihak ketiga.
Hubungi vendor pihak ketiga untuk dukungan.

Prasyarat dan persyaratan sistem

Sebelum memulai, lihat Prasyarat Defender for Endpoint di Linux untuk deskripsi prasyarat dan persyaratan sistemnya.

Selain itu, untuk penyebaran Puppet, Anda harus terbiasa dengan tugas administrasi Boneka, memiliki Puppet yang dikonfigurasi, dan tahu cara menyebarkan paket. Boneka memiliki banyak cara untuk menyelesaikan tugas yang sama. Instruksi ini mengasumsikan ketersediaan modul Puppet yang didukung, seperti apt untuk membantu menyebarkan paket. Organisasi Anda mungkin menggunakan alur kerja yang berbeda. Untuk informasi selengkapnya, lihat Dokumentasi Boneka.

Mengunduh paket onboarding

Unduh paket onboarding dari portal Microsoft Defender.

Warning

Pengemasan ulang paket penginstalan Defender for Endpoint bukan skenario yang didukung. Melakukannya dapat berdampak negatif pada integritas produk dan menyebabkan hasil yang merugikan, termasuk tetapi tidak terbatas pada memicu pemberitahuan perubahan dan pembaruan yang gagal diterapkan.

  1. Masuk ke portal Microsoft Defender lalu navigasi kePengaturan>Sistem>Titik> AkhirOnboarding>.

  2. Di menu drop-down pertama, pilih Linux Server sebagai sistem operasi. Di menu drop-down kedua, pilih Alat manajemen konfigurasi Linux pilihan Anda sebagai metode penyebaran.

  3. Pilih Unduh paket onboarding dan simpan file sebagai WindowsDefenderATPOnboardingPackage.zip.

  4. Ekstrak konten arsip menggunakan perintah berikut:

    unzip WindowsDefenderATPOnboardingPackage.zip
    

    Output yang diharapkan adalah:

    Archive:  WindowsDefenderATPOnboardingPackage.zip
    inflating: mdatp_onboard.json
    

Membuat struktur direktori

Anda perlu membuat struktur direktori untuk menyebarkan Defender untuk Titik Akhir di Linux ke perangkat yang dikelola oleh server Puppet. Contoh ini menggunakan apt modul dan yumrepo yang tersedia dari puppetlabs, dan mengasumsikan bahwa modul diinstal di server Puppet Anda.

  1. Di bawah folder modul jika penginstalan Puppet Anda, buat folder install_mdatp/files dan install_mdatp/manifests. Folder modul biasanya terletak di /etc/puppetlabs/code/environments/production/modules server Puppet Anda.

  2. Salin file yang mdatp_onboard.json dibuat sebelumnya ke install_mdatp/files folder .

  3. Buat init.pp file yang berisi instruksi penyebaran:

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

Membuat manifes Puppet

Ada dua cara untuk membuat file manifes:

  • Gunakan skrip penginstal; Atau
  • Konfigurasikan repositori Anda secara manual.

Membuat manifes untuk menyebarkan Defender untuk Titik Akhir menggunakan skrip penginstal

  1. Unduh skrip bash penginstal. Tarik skrip bash penginstal dari Microsoft GitHub Repositori atau gunakan perintah berikut untuk mengunduhnya.
wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh /etc/puppetlabs/code/environments/production/modules/install_mdatp/files/
  1. Tambahkan konten berikut ke install_mdatp/manifests/init.pp file. Anda juga dapat mengunduh file langsung dari GitHub

# Puppet manifest to install Microsoft Defender for Endpoint on Linux.
# @param channel The release channel based on your environment, insider-fast or prod.

class install_mdatp (
  $channel = 'prod',
) {
  # Ensure that the directory /tmp/mde_install exists
  file { '/tmp/mde_install':
    ensure => directory,
    mode   => '0755',
  }

  # Copy the installation script to the destination
  file { '/tmp/mde_install/mde_installer.sh':
    ensure => file,
    source => 'puppet:///modules/install_mdatp/mde_installer.sh',
    mode   => '0777',
  }

  # Copy the onboarding script to the destination
  file { '/tmp/mde_install/mdatp_onboard.json':
    ensure => file,
    source => 'puppet:///modules/install_mdatp/mdatp_onboard.json',
    mode   => '0777',
  }

  # Install MDE on the host using an external script
  exec { 'install_mde':
    command     => "/tmp/mde_install/mde_installer.sh --install --channel ${channel} --onboard /tmp/mde_install/mdatp_onboard.json",
    path        => '/bin:/usr/bin',
    user        => 'root',
    logoutput   => true,
    require     => File['/tmp/mde_install/mde_installer.sh', '/tmp/mde_install/mdatp_onboard.json'], # Ensure the script is copied before running the installer
  }

}

Note

Skrip alat penginstal juga mendukung parameter lain seperti saluran, perlindungan realtime, versi, penginstalan lokasi kustom, dll. Untuk memilih dari daftar opsi yang tersedia, periksa bantuan: ./mde_installer.sh --help

Buat manifes untuk menyebarkan Defender untuk Titik Akhir dengan mengonfigurasi repositori secara manual

Tambahkan konten berikut ke install_mdatp/manifests/init.pp file. Anda juga dapat mengunduhnya dari GitHub.

# Puppet manifest to install Microsoft Defender for Endpoint on Linux.
# @param channel The release channel based on your environment, insider-fast or prod.

class install_mdatp::configure_debian_repo (
  String $channel,
  String $distro,
  String $version ) {
  # Configure the APT repository for Debian-based systems

  $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',
    },
  }
}

class install_mdatp::configure_redhat_repo (
  String $channel,
  String $distro,
  String $version) {
  # Configure the Yum repository for RedHat-based systems
  
  yumrepo { 'microsoftpackages':
    baseurl  => "https://packages.microsoft.com/rhel/${version}/prod",
    descr    => 'packages-microsoft-com-prod',
    enabled  => 1,
    gpgcheck => 1,
    gpgkey   => 'https://packages.microsoft.com/keys/microsoft.asc',
  }
}

class install_mdatp::install {
  # Common configurations for both Debian and 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'],
  }

  # Install mdatp package
  package { 'mdatp':
    ensure  => installed,
    require => [
      File['/etc/opt/microsoft/mdatp/mdatp_onboard.json'],
    ],
  }
}


class install_mdatp (
  $channel = 'prod'
) {
  # Include the appropriate class based on the OS family
  
  $distro = downcase($facts['os']['name'])
  $version = $facts['os']['release']['major']
  
  case $facts['os']['family'] {
    'Debian': {
      class { 'install_mdatp::configure_debian_repo':
        channel => 'prod',
        distro => $distro,
        version => $version
        } -> class { 'install_mdatp::install': }
    }
    'RedHat': {
      class { 'install_mdatp::configure_redhat_repo':
        channel => 'prod',
        distro => $distro,
        version => $version,
        } -> class { 'install_mdatp::install': }
    }
    default: { fail("${facts['os']['family']} is currently not supported.")}
  }
}

Note

Defender untuk Titik Akhir di Linux dapat disebarkan dari salah satu saluran berikut: insiders-fast, insiders-slow, prod. Setiap saluran sesuai dengan repositori perangkat lunak Linux. Pilihan saluran menentukan jenis dan frekuensi pembaruan yang ditawarkan ke perangkat Anda. Perangkat di insiders-fast adalah perangkat pertama yang menerima pembaruan dan fitur baru dalam pratinjau, diikuti oleh insiders-slow, dan terakhir oleh prod. Perhatikan distribusi dan versi Anda dan identifikasi entri terdekat untuk itu di bawah https://packages.microsoft.com/config/[distro]/[version].

Warning

Mengalihkan saluran setelah penginstalan awal mengharuskan produk diinstal ulang. Untuk mengalihkan saluran produk: hapus instalan paket yang ada, konfigurasikan ulang perangkat Anda untuk menggunakan saluran baru, dan ikuti langkah-langkah dalam dokumen ini untuk menginstal paket dari lokasi baru.

Sertakan manifes di dalam file site.pp

Sertakan manifes yang dijelaskan sebelumnya dalam artikel ini dalam file Anda site.pp :

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

Perangkat agen terdaftar secara berkala melakukan polling Pada Server Boneka dan menginstal profil dan kebijakan konfigurasi baru segera setelah terdeteksi.

Memantau penyebaran Boneka Anda

Pada perangkat agen, Anda juga dapat memeriksa status penyebaran dengan menjalankan perintah berikut:

mdatp health
...
healthy                                 : true
health_issues                           : []
licensed                                : true
org_id                                  : "[your organization identifier]"
...
  • healthy: Konfirmasikan bahwa Defender untuk Titik Akhir berhasil disebarkan dan beroperasi.
  • health_issues: Menyatakan masalah yang menyebabkan status sehat menjadi false.
  • licensed: Mengonfirmasi bahwa perangkat terkait dengan organisasi Anda.
  • orgId: Pengidentifikasi organisasi Defender untuk Titik Akhir.

Memecahkan masalah penginstalan

Jika Anda mengalami masalah penginstalan, untuk pemecahan masalah mandiri, ikuti langkah-langkah berikut:

  1. Untuk informasi tentang cara menemukan log yang dihasilkan secara otomatis saat kesalahan penginstalan terjadi, lihat Masalah penginstalan log.

  2. Untuk informasi tentang masalah penginstalan umum, lihat Masalah penginstalan.

  3. Jika kondisi perangkat adalah false, lihat masalah kesehatan agen Defender for Endpoint.

  4. Untuk masalah performa produk, lihat Memecahkan masalah performa.

  5. Untuk masalah proksi dan konektivitas, lihat Memecahkan masalah konektivitas cloud.

Untuk mendapatkan dukungan dari Microsoft, buka tiket dukungan, dan berikan file log yang dibuat dengan menggunakan penganalisis klien.

Cara mengonfigurasi kebijakan untuk Microsoft Defender di Linux

Untuk mengonfigurasi pengaturan antivirus dan EDR, lihat artikel berikut ini:

Peningkatan sistem operasi

Saat meningkatkan sistem operasi Anda ke versi utama baru, Anda harus terlebih dahulu menghapus instalan Defender untuk Titik Akhir di Linux, menginstal peningkatan, lalu mengonfigurasi ulang Defender untuk Titik Akhir di Linux di perangkat Anda.

Penghapusan Instalasi

Buat modul remove_mdatp yang mirip install_mdatp dengan konten berikut dalam init.pp file:

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