Aracılığıyla paylaş


Puppet ile Linux'ta Uç Nokta için Microsoft Defender dağıtma

Şunlar için geçerlidir:

Uç nokta için Defender'i deneyimlemek ister misiniz? Ücretsiz deneme için kaydolun.

Bu makalede Puppet kullanarak Linux'ta Uç Nokta için Defender'ın nasıl dağıtılacağı açıklanır.

Önemli

Bu makale, üçüncü taraf araçları hakkında bilgi içerir. Bu, tümleştirme senaryolarının tamamlanmasına yardımcı olmak için sağlanır, ancak Microsoft üçüncü taraf araçlar için sorun giderme desteği sağlamaz.
Destek için üçüncü taraf satıcıya başvurun.

Önkoşullar ve sistem gereksinimleri

Önkoşulların ve sistem gereksinimlerinin açıklaması için bkz. Linux'ta Uç Nokta için Microsoft Defender.

Ayrıca Puppet dağıtımı için Puppet yönetim görevleri hakkında bilgi sahibi olmanız, Puppet'ın yapılandırılmasını sağlamanız ve paketlerin nasıl dağıtıldığını bilmeniz gerekir. Puppet'ın aynı görevi tamamlamak için birçok yolu vardır. Bu yönergelerde, paketin dağıtılmasına yardımcı olmak için apt gibi desteklenen Puppet modüllerinin kullanılabilir olduğu varsayılır. Kuruluşunuz farklı bir iş akışı kullanabilir. Daha fazla bilgi için bkz. Puppet belgeleri.

Ekleme paketini indirme

Ekleme paketini Microsoft Defender portalından indirin.

Uyarı

Uç Nokta için Defender yükleme paketini yeniden paketlemek desteklenen bir senaryo değildir. Bunun yapılması ürünün bütünlüğünü olumsuz etkileyebilir ve kurcalama uyarılarının ve güncelleştirmelerin uygulanamaması da dahil ancak bunlarla sınırlı olmamak üzere olumsuz sonuçlara yol açabilir.

  1. Microsoft Defender portalındaAyarlar>Uç Noktaları>Cihaz yönetimi>Ekleme'ye gidin.

  2. İlk açılan menüde işletim sistemi olarak Linux Server'ı seçin. İkinci açılan menüde dağıtım yöntemi olarak Tercih ettiğiniz Linux yapılandırma yönetim aracını seçin.

  3. Ekleme paketini indir'i seçin. Dosyayı olarak WindowsDefenderATPOnboardingPackage.zipkaydedin.

    Eklenen paketi indirme seçeneği.

  4. Arşivin içeriğini ayıklayın.

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

Dizin yapısı oluşturma

Linux üzerinde Uç Nokta için Defender'ı Puppet sunucusu tarafından yönetilen cihazlara dağıtmak için bir dizin yapısı oluşturmanız gerekir. Bu örnek, ve yumrepo modüllerini apt 'den puppetlabskullanılabilir hale getirir ve modüllerin Puppet sunucunuza yüklendiğini varsayar.

  1. Puppet yüklemeniz varsa modules klasörünün altında ve install_mdatp/manifestsklasörlerini install_mdatp/files oluşturun. Modules klasörü genellikle Puppet sunucunuzda /etc/puppetlabs/code/environments/production/modules bulunur.

  2. mdatp_onboard.json Daha önce oluşturulan dosyayı klasörüne install_mdatp/files kopyalayın.

  3. Dağıtım yönergelerini içeren bir init.pp dosya oluşturun:

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

Puppet bildirimi oluşturma

Bildirim dosyası oluşturmanın iki yolu vardır:

  • Yükleyici betiği kullanın; veya
  • Depolarınızı el ile yapılandırın.

Yükleyici betiği kullanarak Uç Nokta için Defender'ı dağıtmak için bildirim oluşturma

  1. Yükleyici bash betiğini indirin. Yükleyici bash betiğini Microsoft GitHub Deposu'ndan çekin veya indirmek için aşağıdaki komutu kullanın.
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. Aşağıdaki içeriği dosyaya install_mdatp/manifests/init.pp ekleyin. Dosyayı doğrudan GitHub'dan da indirebilirsiniz

# 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
  }

}

Not

Yükleyici betiği kanal, gerçek zamanlı koruma, sürüm vb. gibi diğer parametreleri de destekler. Kullanılabilir seçenekler listesinden seçim yapmak için yardımı denetleyin. ./mde_installer.sh --help

Depoları el ile yapılandırarak Uç Nokta için Defender'ı dağıtmak için bir bildirim oluşturma

Aşağıdaki içeriği dosyaya install_mdatp/manifests/init.pp ekleyin. GitHub'dan da indirebilirsiniz.

# 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.")}
  }
}

Not

Linux'ta Uç Nokta için Defender şu kanallardan birinden dağıtılabilir: insider hızlı, insider'lar yavaş, profesyonel. Her kanal bir Linux yazılım deposuna karşılık gelir. Kanal seçimi, cihazınıza sunulan güncelleştirmelerin türünü ve sıklığını belirler. içindeki insiders-fast cihazlar, önizleme aşamasında güncelleştirmeleri ve yeni özellikleri ilk alan cihazlardır, ardından insiders-slowve son olarak prodtarafından . Dağıtımınızı ve sürümünüzü not edin ve altında https://packages.microsoft.com/config/[distro]/[version]onun için en yakın girdiyi belirleyin.

Uyarı

İlk yüklemeden sonra kanalın değiştirilmesi için ürünün yeniden yüklenmesi gerekir. Ürün kanalını değiştirmek için: Mevcut paketi kaldırın, cihazınızı yeni kanalı kullanacak şekilde yeniden yapılandırın ve paketi yeni konumdan yüklemek için bu belgedeki adımları izleyin.

Bildirimi site.pp dosyasının içine ekleyin

Bu makalenin önceki bölümlerinde açıklanan bildirimi dosyanıza site.pp ekleyin:

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

Kayıtlı aracı cihazları Puppet Server'ı düzenli aralıklarla yoklar ve algılanır algılanmaz yeni yapılandırma profillerini ve ilkelerini yükler.

Puppet dağıtımınızı izleme

Aracı cihazında, aşağıdaki komutu çalıştırarak dağıtım durumunu de kontrol edebilirsiniz:

mdatp health
...
healthy                                 : true
health_issues                           : []
licensed                                : true
org_id                                  : "[your organization identifier]"
...
  • healthy: Uç Nokta için Defender'ın başarıyla dağıtıldığını ve çalışır durumda olduğunu onaylayın.
  • health_issues: İyi durumdaki durumun yanlış olmasına neden olan sorunları belirtir.
  • licensed: Cihazın kuruluşunuza bağlı olduğunu onaylar.
  • orgId: Uç Nokta için Defender kuruluş tanımlayıcınız.

Yükleme sorunlarını giderin

Yükleme sırasında sorunlarla karşılaşırsanız şu kendi kendine sorun giderme adımlarını deneyin:

  1. Bir hata oluştuğunda yükleyici tarafından oluşturulan otomatik olarak oluşturulan günlüğü bulma hakkında daha fazla bilgi için Günlük yükleme sorunları konusuna bakın.

  2. Sık karşılaşılan yükleme sorunları hakkında daha fazla bilgi için Yükleme sorunları konusuna bakın

  3. Cihazın sistem durumu yanlışsa MDE aracı sistem durumu sorunlarına bakın

  4. Ürün performansı sorunları için bkz . Performans sorunlarını giderme, performans ayarlama

  5. Ara sunucu ve bağlantı sorunları için bkz . Bulut bağlantısı sorunlarını giderme

Microsoft'tan destek almak için bir destek bileti oluşturun ve istemci çözümleyicisini kullanarak günlük dosyaları sağlayın

Linux'ta Microsoft Defender için ilkeleri yapılandırma

Uç noktalarınızda virüsten koruma ve EDR ayarlarını yapılandırabilirsiniz. Daha fazla bilgi için aşağıdaki makalelere bakın:

İşletim sistemi yükseltmeleri

İşletim sisteminizi yeni bir ana sürüme yükseltirken, önce Linux'ta Uç Nokta için Defender'ı kaldırmanız, yükseltmeyi yüklemeniz ve ardından cihazınızda Linux'ta Uç Nokta için Defender'ı yeniden yapılandırmanız gerekir.

Kaldırma

Dosyasında aşağıdaki içeriklere install_mdatpinit.pp benzer bir modül remove_mdatp oluşturun:

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

İpucu

Daha fazla bilgi edinmek mi istiyorsunuz? Teknoloji Topluluğumuzdaki Microsoft Güvenlik topluluğuyla Engage: Uç Nokta için Microsoft Defender Teknoloji Topluluğu.