Bereitstellen von Microsoft Defender for Endpoint unter Linux mit Ansible
Gilt für:
- Microsoft Defender for Endpoint-Server
- Microsoft Defender für Server
Möchten Sie Defender für Endpunkt erfahren? Registrieren Sie sich für eine kostenlose Testversion
In diesem Artikel wird beschrieben, wie Sie Defender für Endpunkt unter Linux mithilfe von Ansible bereitstellen. Eine erfolgreiche Bereitstellung erfordert den Abschluss aller folgenden Aufgaben:
- Voraussetzungen und Systemanforderungen
- Herunterladen des Onboardingpakets
- Bereitstellen von Defender für Endpunkt unter Linux mithilfe von mde_installer.sh mit Ansible
- Bereitstellen von Defender für Endpunkt unter Linux mithilfe von Ansible durch manuelles Konfigurieren von Repositorys
Wichtig
Dieser Artikel enthält Informationen zu Drittanbietertools. Dies wird bereitgestellt, um Integrationsszenarien abzuschließen. Microsoft bietet jedoch keine Unterstützung bei der Problembehandlung für Drittanbietertools.
Wenden Sie sich an den Drittanbieter, um Support zu erhalten.
Einführung
Stellen Sie Microsoft Defender for Endpoint auf Linux-Servern mithilfe von Ansible bereit, um den Bereitstellungsprozess für Computer im großen Stil zu automatisieren. Es folgen die beiden Methoden zum Automatisieren:
Verwenden Sie das Installationsskript (empfohlen). Diese Methode vereinfacht den Automatisierungsprozess erheblich und hilft dabei, den Defender für Endpunkt-Agent zu installieren und das Gerät mit nur wenigen Schritten in das Microsoft Defender-Portal zu integrieren, ohne für verschiedene Distributionen separat konfigurieren zu müssen.
Konfigurieren Sie Repositorys für jede Distribution manuell. Mit dieser Methode können Sie den Bereitstellungsprozess automatisieren, indem Sie Repositorys manuell konfigurieren, den Agent installieren und das Gerät für jede Distribution integrieren. Diese Methode bietet eine präzisere Kontrolle über den Bereitstellungsprozess.
Voraussetzungen und Systemanforderungen, die für beide Methoden gelten
Bevor Sie beginnen, finden Sie auf der Seite Standard Defender für Endpunkt unter Linux eine Beschreibung der Voraussetzungen und Systemanforderungen.
Darüber hinaus müssen Sie für die Ansible-Bereitstellung mit Ansible-Verwaltungsaufgaben vertraut sein, Ansible konfiguriert haben und mit der Bereitstellung von Playbooks und Aufgaben vertraut sein. Ansible hat viele Möglichkeiten, dieselbe Aufgabe auszuführen. Diese Anweisungen setzen voraus, dass unterstützte Ansible-Module verfügbar sind, z. B. apt und unarchive , um das Paket bereitzustellen. Ihr organization verwendet möglicherweise einen anderen Workflow. Weitere Informationen finden Sie in der Ansible-Dokumentation.
Ansible muss auf mindestens einem Computer installiert sein (Ansible bezeichnet diesen Computer als Steuerknoten).
SSH muss für ein Administratorkonto zwischen dem Steuerungsknoten und allen verwalteten Knoten (Geräten, auf denen Defender für Endpunkt installiert ist) konfiguriert werden, und es wird empfohlen, die Authentifizierung mit öffentlichem Schlüssel zu konfigurieren.
Die folgende Software muss auf allen verwalteten Knoten installiert sein:
- Locke
- python-apt (wenn Sie die Bereitstellung auf Distributionen mit apt als Paket-Manager durchführen)
Alle verwalteten Knoten müssen im folgenden Format in der
/etc/ansible/hosts
relevanten Datei oder aufgeführt werden:[servers] host1 ansible_ssh_host=10.171.134.39 host2 ansible_ssh_host=51.143.50.51
Pingtest:
ansible -m ping all
Herunterladen des onboarding-Pakets, das für beide Methoden gilt
Laden Sie das Onboardingpaket aus Microsoft Defender Portal herunter.
Warnung
Das Erneute Packen des Defender für Endpunkt-Installationspakets wird nicht unterstützt. Dies kann sich negativ auf die Integrität des Produkts auswirken und zu negativen Ergebnissen führen, einschließlich, aber nicht beschränkt auf das Auslösen von Manipulationswarnungen und nicht angewendeten Updates.
Navigieren Sie im Microsoft Defender-Portal zu Einstellungen>Endpunkte>Geräteverwaltung>Onboarding.
Wählen Sie im ersten Dropdownmenü Linux Server als Betriebssystem aus. Wählen Sie im zweiten Dropdownmenü Ihr bevorzugtes Linux-Konfigurationsverwaltungstool als Bereitstellungsmethode aus.
Wählen Sie "Onboardingpaket herunterladen" aus. Speichern Sie die Datei als
WindowsDefenderATPOnboardingPackage.zip
.Vergewissern Sie sich an einer Eingabeaufforderung, dass Sie über die Datei verfügen. Extrahieren Sie den Inhalt des Archivs:
unzip WindowsDefenderATPOnboardingPackage.zip
Archive: WindowsDefenderATPOnboardingPackage.zip inflating: mdatp_onboard.json
Bereitstellen von Defender für Endpunkt mithilfe von mde_installer.sh mit Ansible
Bevor Sie beginnen, müssen Sie das Onboardingpaket herunterladen und die Voraussetzungen für die Bereitstellung von Defender für Endpunkt unter Linux mithilfe des Bash-Skripts des Installationsprogramms erfüllen.
Herunterladen des Bash-Skripts für das Installationsprogramm
Rufen Sie das Bash-Skript des Installers aus dem Microsoft GitHub-Repository ab, oder verwenden Sie den folgenden Befehl, um es herunterzuladen.
wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh
Erstellen von Ansible-YAML-Dateien
Erstellen Sie die YAML-Installationsdatei. Sie können die Datei auch direkt von GitHub herunterladen.
- name: Install and Onboard MDE
hosts: servers
tasks:
- name: Create a directory if it does not exist
ansible.builtin.file:
path: /tmp/mde_install
state: directory
mode: '0755'
- name: Copy Onboarding script
ansible.builtin.copy:
src: "{{ onboarding_json }}"
dest: /tmp/mde_install/mdatp_onboard.json
- name: Install MDE on host
ansible.builtin.script: "{{ mde_installer_script }} --install --channel {{ channel | default('insiders-fast') }} --onboard /tmp/mde_install/mdatp_onboard.json"
register: script_output
args:
executable: sudo
- name: Display the installation output
debug:
msg: "Return code [{{ script_output.rc }}] {{ script_output.stdout }}"
- name: Display any installation errors
debug:
msg: "{{ script_output.stderr }}"
Hinweis
Das Installationsskript unterstützt auch andere Parameter wie Kanal, Echtzeitschutz, Version usw. Wenn Sie aus der Liste der verfügbaren Optionen auswählen möchten, überprüfen Sie die Hilfe mithilfe des folgenden Befehls: ./mde_installer.sh --help
Anwenden des Playbooks
Wenden Sie das Playbook mit dem folgenden Befehl an, und ersetzen Sie dabei die entsprechenden Pfade und Kanäle gemäß Ihren Anforderungen:
ansible-playbook -i /etc/ansible/hosts /etc/ansible/playbooks/install_mdatp.yml --extra-vars "onboarding_json=<path to mdatp_onboard.json > mde_installer_script=<path to mde_installer.sh> channel=<channel to deploy for: insiders-fast / insiders-slow / prod> "
Überprüfen, ob die Bereitstellung erfolgreich war
Öffnen Sie im Microsoft Defender-Portal den Gerätebestand. Es kann 5 bis 20 Minuten dauern, bis das Gerät im Portal angezeigt wird.
Führen Sie die folgenden Überprüfungen nach der Installation durch, die Überprüfungen wie Integrität, Konnektivität, Antivirus und EDR-Erkennungstests umfassen, um eine erfolgreiche Bereitstellung und Funktionsweise von Defender für Endpunkt sicherzustellen.
- name: Run post-installation basic MDE test
hosts: myhosts
tasks:
- name: Check health
ansible.builtin.command: mdatp health --field healthy
register: health_status
- name: MDE health test failed
fail: msg="MDE is not healthy. health status => \n{{ health_status.stdout }}\nMDE deployment not complete"
when: health_status.stdout != "true"
- name: Run connectivity test
ansible.builtin.command: mdatp connectivity test
register: connectivity_status
- name: Connectivity failed
fail: msg="Connectivity failed. Connectivity result => \n{{ connectivity_status.stdout }}\n MDE deployment not complete"
when: connectivity_status.rc != 0
- name: Check RTP status
ansible.builtin.command: mdatp health --field real_time_protection_enabled
register: rtp_status
- name: Enable RTP
ansible.builtin.command: mdatp config real-time-protection --value enabled
become: yes
become_user: root
when: rtp_status.stdout != "true"
- name: Pause for 5 second to enable RTP
ansible.builtin.pause:
seconds: 5
- name: Download EICAR
ansible.builtin.get_url:
url: https://secure.eicar.org/eicar.com.txt
dest: /tmp/eicar.com.txt
- name: Pause for 5 second to detect eicar
ansible.builtin.pause:
seconds: 5
- name: Check for EICAR file
stat: path=/tmp/eicar.com.txt
register: eicar_test
- name: EICAR test failed
fail: msg="EICAR file not deleted. MDE deployment not complete"
when: eicar_test.stat.exists
- name: MDE Deployed
debug:
msg: "MDE succesfully deployed"
Deinstallieren von Microsoft Defender for Endpoint auf Linux-Servern
Erstellen Sie zunächst eine YAML-Deinstallationsdatei (z. B. /etc/ansible/playbooks/uninstall_mdatp.yml), die verwendet mde_installer.sh
. Sie können die Datei auch direkt von GitHub herunterladen.
- name: Uninstall MDE
hosts: myhosts
tasks:
- name: Uninstall MDE
ansible.builtin.script: "{{ mde_installer_script }} --remove"
register: script_output
args:
executable: sudo
- name: Display the installation output
debug:
msg: "Return code [{{ script_output.rc }}] {{ script_output.stdout }}"
- name: Display any installation errors
debug:
msg: "{{ script_output.stderr }}"
Führen Sie den folgenden Befehl aus, um Defender für Endpunkt mithilfe des Playbooks zu deinstallieren:
ansible-playbook -i /etc/ansible/hosts /etc/ansible/playbooks/uninstall_mdatp.yml --extra-vars "mde_installer_script=<path to mde_installer.sh>"
Bereitstellen von Defender für Endpunkt mithilfe von Ansible durch manuelles Konfigurieren von Repositorys
Führen Sie die Schritte in diesem Abschnitt aus, nachdem Sie das Onboardingpaket und die Besprechungsvoraussetzungen heruntergeladen haben, um Defender für Endpunkt bereitzustellen, indem Sie die Repositorys für jede Linux-Distribution manuell konfigurieren.
Erstellen von Ansible-YAML-Dateien
Erstellen Sie eine Teilaufgabe oder Rollendateien, die zu einem Playbook oder einer Aufgabe beitragen.
Erstellen Sie die Onboardingaufgabe:
onboarding_setup.yml
- name: Create MDATP directories file: path: /etc/opt/microsoft/mdatp/ recurse: true state: directory mode: 0755 owner: root group: root - name: Register mdatp_onboard.json stat: path: /etc/opt/microsoft/mdatp/mdatp_onboard.json register: mdatp_onboard - name: Extract WindowsDefenderATPOnboardingPackage.zip into /etc/opt/microsoft/mdatp unarchive: src: WindowsDefenderATPOnboardingPackage.zip dest: /etc/opt/microsoft/mdatp mode: 0600 owner: root group: root when: not mdatp_onboard.stat.exists
Fügen Sie das Defender für Endpunkt-Repository und den Schlüssel hinzu.
add_apt_repo.yml
Defender für Endpunkt unter Linux kann über einen der folgenden Kanäle bereitgestellt werden:-
insiders-fast, bezeichnet als
[channel]
insiders-slow, bezeichnet als[channel]
-
prod, angegeben als
[channel]
mit dem Versionsnamen (siehe Linux-Softwarerepository für Microsoft-Produkte)
Jeder Kanal entspricht einem Linux-Softwarerepository.
Die Wahl des Kanals bestimmt den Typ und die Häufigkeit der Updates, die Ihrem Gerät angeboten werden. Geräte in Insider-fast sind die ersten, die Updates und neue Features erhalten, später von Insidern langsam und schließlich von Prod.
Um eine Vorschau neuer Features anzuzeigen und frühzeitig Feedback zu geben, wird empfohlen, einige Geräte in Ihrem Unternehmen so zu konfigurieren, dass sie entweder insiders-fast oder insiders-slow verwenden.
Warnung
Wenn Sie den Kanal nach der Erstinstallation wechseln, muss das Produkt neu installiert werden. Um den Produktkanal zu wechseln: Deinstallieren Sie das vorhandene Paket, konfigurieren Sie Ihr Gerät neu, um den neuen Kanal zu verwenden, und führen Sie die Schritte in diesem Dokument aus, um das Paket vom neuen Speicherort aus zu installieren.
-
insiders-fast, bezeichnet als
Notieren Sie sich Ihre Distribution und Version, und identifizieren Sie den nächstgelegenen Eintrag unter
https://packages.microsoft.com/config/[distro]/
.Ersetzen Sie in den folgenden Befehlen [distribution] und [version] durch die informationen, die Sie identifiziert haben.
Hinweis
Ersetzen Sie im Fall von Oracle Linux und Amazon Linux 2 [Distribution] durch "rhel". Ersetzen Sie für Amazon Linux 2 [Version] durch "7". Ersetzen Sie für Oracle Linux [Version] durch die Version von Oracle Linux.
- name: Add Microsoft APT key apt_key: url: https://packages.microsoft.com/keys/microsoft.asc state: present when: ansible_os_family == "Debian" - name: Add Microsoft apt repository for MDATP apt_repository: repo: deb [arch=arm64,armhf,amd64] https://packages.microsoft.com/[distro]/[version]/prod [codename] main update_cache: yes state: present filename: microsoft-[channel] when: ansible_os_family == "Debian" - name: Add Microsoft DNF/YUM key rpm_key: state: present key: https://packages.microsoft.com/keys/microsoft.asc when: ansible_os_family == "RedHat" - name: Add Microsoft yum repository for MDATP yum_repository: name: packages-microsoft-[channel] description: Microsoft Defender for Endpoint file: microsoft-[channel] baseurl: https://packages.microsoft.com/[distro]/[version]/[channel]/ gpgcheck: yes enabled: Yes when: ansible_os_family == "RedHat"
Erstellen Sie die Ansible-Installations- und Deinstallations-YAML-Dateien.
Verwenden Sie für apt-basierte Distributionen die folgende YAML-Datei:
cat install_mdatp.yml
- hosts: servers tasks: - name: include onboarding tasks import_tasks: file: ../roles/onboarding_setup.yml - name: add apt repository import_tasks: file: ../roles/add_apt_repo.yml - name: Install MDATP apt: name: mdatp state: latest update_cache: yes
cat uninstall_mdatp.yml
- hosts: servers tasks: - name: Uninstall MDATP apt: name: mdatp state: absent
Verwenden Sie für dnf-basierte Verteilungen die folgende YAML-Datei:
cat install_mdatp_dnf.yml
- hosts: servers tasks: - name: include onboarding tasks import_tasks: file: ../roles/onboarding_setup.yml - name: add apt repository import_tasks: file: ../roles/add_yum_repo.yml - name: Install MDATP dnf: name: mdatp state: latest enablerepo: packages-microsoft-[channel]
cat uninstall_mdatp_dnf.yml
- hosts: servers tasks: - name: Uninstall MDATP dnf: name: mdatp state: absent
Anwenden des Playbooks
In diesem Schritt wenden Sie das Playbook an. Führen Sie die Aufgabendateien unter oder dem /etc/ansible/playbooks/
entsprechenden Verzeichnis aus.
Installation:
ansible-playbook /etc/ansible/playbooks/install_mdatp.yml -i /etc/ansible/hosts
Wichtig
Wenn das Produkt zum ersten Mal gestartet wird, lädt es die neuesten Antischadsoftwaredefinitionen herunter. Je nach Internetverbindung kann dies einige Minuten dauern.
Überprüfung/Konfiguration:
ansible -m shell -a 'mdatp connectivity test' all
ansible -m shell -a 'mdatp health' all
Deinstallation:
ansible-playbook /etc/ansible/playbooks/uninstall_mdatp.yml -i /etc/ansible/hosts
Problembehandlung bei Problemen mit Installation und Update
Führen Sie für die Selbstbehandlung die folgenden Schritte aus:
Informationen zum Suchen des Protokolls, das automatisch generiert wird, wenn ein Installationsfehler auftritt, finden Sie unter Protokollinstallationsprobleme.
Informationen zu häufigen Installationsproblemen finden Sie unter Installationsprobleme.
Wenn die Integrität des Geräts lautet
false
, finden Sie weitere Informationen unter Integritätsprobleme des Defender für Endpunkt-Agents.Informationen zu Problemen mit der Produktleistung finden Sie unter Behandeln von Leistungsproblemen.
Informationen zu Proxy- und Konnektivitätsproblemen finden Sie unter Behandeln von Problemen mit der Cloudkonnektivität.
Um Support von Microsoft zu erhalten, öffnen Sie ein Supportticket, und stellen Sie die Protokolldateien bereit, die mit dem Clientanalysetool erstellt wurden.
Konfigurieren von Richtlinien für Microsoft Defender unter Linux
Sie können Antiviren- oder EDR-Einstellungen auf Ihren Endpunkten mit den folgenden Methoden konfigurieren:
- Weitere Informationen finden Sie unter Festlegen von Einstellungen für Microsoft Defender for Endpoint unter Linux.
- Informationen zum Konfigurieren von Einstellungen im Microsoft Defender-Portal finden Sie unter Verwaltung von Sicherheitseinstellungen.
Betriebssystemupgrades
Wenn Sie Ihr Betriebssystem auf eine neue Hauptversion aktualisieren, müssen Sie zunächst Defender für Endpunkt unter Linux deinstallieren, das Upgrade installieren und schließlich Defender für Endpunkt unter Linux auf Ihrem Gerät neu konfigurieren.
Siehe auch
- Hinzufügen oder Entfernen von YUM-Repositorys
- Verwalten von Paketen mit dem dnf-Paket-Manager
- Hinzufügen und Entfernen von APT-Repositorys
- Verwalten von apt-packages
- Probleme mit fehlenden Ereignissen
Tipp
Möchten Sie mehr erfahren? Engage mit der Microsoft-Sicherheitscommunity in unserer Tech Community: Microsoft Defender for Endpoint Tech Community.