Microsoft Defender voor Eindpunt implementeren in Linux met Ansible
Van toepassing op:
- Microsoft Defender voor Eindpunt Server
- Microsoft Defender voor servers
Wilt u Defender voor Eindpunt ervaren? Meld u aan voor een gratis proefversie.
In dit artikel wordt beschreven hoe u Defender voor Eindpunt in Linux implementeert met behulp van Ansible. Voor een geslaagde implementatie moeten alle volgende taken worden voltooid:
- Vereisten en systeemvereisten
- Het onboarding-pakket downloaden
- Defender voor Eindpunt in Linux implementeren met behulp van mde_installer.sh met Ansible
- Defender voor Eindpunt implementeren in Linux met behulp van Ansible door opslagplaatsen handmatig te configureren
Belangrijk
Dit artikel bevat informatie over hulpprogramma's van derden. Dit wordt verstrekt om integratiescenario's te voltooien, maar Microsoft biedt geen ondersteuning voor probleemoplossing voor hulpprogramma's van derden.
Neem contact op met de externe leverancier voor ondersteuning.
Inleiding
Implementeer Microsoft Defender voor Eindpunt op Linux-servers met behulp van Ansible om het implementatieproces voor machines op schaal te automatiseren. Hier volgen de twee methoden om te automatiseren:
Gebruik het installatiescript (aanbevolen). Deze methode vereenvoudigt het automatiseringsproces aanzienlijk en helpt bij het installeren van de Defender for Endpoint-agent en het onboarden van het apparaat naar de Microsoft Defender-portal met slechts een paar stappen zonder dat u afzonderlijk hoeft te configureren voor verschillende distributies.
Configureer handmatig opslagplaatsen voor elke distributie. Met deze methode kunt u het implementatieproces automatiseren door handmatig opslagplaatsen te configureren, de agent te installeren en het apparaat voor elke distributie te onboarden. Deze methode geeft meer gedetailleerde controle over het implementatieproces.
Vereisten en systeemvereisten die van toepassing zijn op beide methoden
Voordat u aan de slag gaat, raadpleegt u de hoofdpagina van Defender voor Eindpunt op Linux voor een beschrijving van vereisten en systeemvereisten.
Bovendien moet u voor de implementatie van Ansible bekend zijn met Ansible-beheertaken, Ansible hebben geconfigureerd en weten hoe u playbooks en taken kunt implementeren. Ansible heeft veel manieren om dezelfde taak uit te voeren. In deze instructies wordt ervan uitgegaan dat ondersteunde Ansible-modules beschikbaar zijn, zoals apt en unarchive om het pakket te helpen implementeren. Uw organisatie kan een andere werkstroom gebruiken. Zie ansible-documentatie voor meer informatie.
Ansible moet op ten minste één computer zijn geïnstalleerd (Ansible noemt deze computer het besturingsknooppunt).
SSH moet worden geconfigureerd voor een beheerdersaccount tussen het besturingsknooppunt en alle beheerde knooppunten (apparaten waarop Defender voor Eindpunt is geïnstalleerd) en het wordt aanbevolen om te worden geconfigureerd met verificatie met openbare sleutels.
De volgende software moet worden geïnstalleerd op alle beheerde knooppunten:
- krul
- python-apt (als u implementeert op distributies met behulp van apt als pakketbeheerder)
Alle beheerde knooppunten moeten worden weergegeven in de volgende indeling in het
/etc/ansible/hosts
relevante bestand of:[servers] host1 ansible_ssh_host=10.171.134.39 host2 ansible_ssh_host=51.143.50.51
Pingtest:
ansible -m ping all
Download het onboardingpakket dat van toepassing is op beide methoden
Download het onboardingpakket vanuit Microsoft Defender portal.
Waarschuwing
Het opnieuw verpakken van het Defender voor Eindpunt-installatiepakket is geen ondersteund scenario. Dit kan een negatieve invloed hebben op de integriteit van het product en leiden tot negatieve resultaten, met inbegrip van maar niet beperkt tot het activeren van manipulatiewaarschuwingen en updates die niet van toepassing zijn.
Ga in de Microsoft Defender-portal naar Instellingen>Eindpunten>Apparaatbeheer>Onboarding.
Selecteer in de eerste vervolgkeuzelijst Linux-server als besturingssysteem. Selecteer in de tweede vervolgkeuzelijst Het hulpprogramma voor linux-configuratiebeheer van uw voorkeur als implementatiemethode.
Selecteer Onboardingpakket downloaden. Sla het bestand op als
WindowsDefenderATPOnboardingPackage.zip
.Controleer vanaf een opdrachtprompt of u het bestand hebt. Pak de inhoud van het archief uit:
unzip WindowsDefenderATPOnboardingPackage.zip
Archive: WindowsDefenderATPOnboardingPackage.zip inflating: mdatp_onboard.json
Defender voor Eindpunt implementeren met behulp van mde_installer.sh met Ansible
Voordat u begint, moet u het onboardingpakket downloaden en voldoen aan de vereisten voor het implementeren van Defender voor Eindpunt in Linux met behulp van het bash-script van het installatieprogramma.
Het bash-script van het installatieprogramma downloaden
Haal het bash-script van het installatieprogramma op uit de Microsoft GitHub-opslagplaats of gebruik de volgende opdracht om het te downloaden.
wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh
Ansible YAML-bestanden maken
Maak een YAML-installatiebestand. U kunt het bestand ook rechtstreeks downloaden vanuit GitHub
- 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 }}"
Opmerking
Het installatiescript ondersteunt ook andere parameters, zoals kanaal, realtime-beveiliging, versie, enzovoort. Als u een keuze wilt maken uit de lijst met beschikbare opties, raadpleegt u de Help via de volgende opdracht: ./mde_installer.sh --help
Het playbook toepassen
Pas het playbook toe met behulp van de volgende opdracht, waarbij u de bijbehorende paden en kanalen vervangt volgens uw vereisten:
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> "
Controleren of de implementatie is geslaagd
Open in de Microsoft Defender portal de apparaatinventaris. Het kan 5-20 minuten duren voordat het apparaat wordt weergegeven in de portal.
Voer de volgende controles na de installatie uit, waaronder controles zoals status, connectiviteit, antivirus- en EDR-detectietests om ervoor te zorgen dat Defender voor Eindpunt succesvol wordt geïmplementeerd en werkt.
- 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"
Microsoft Defender voor Eindpunt verwijderen op Linux-servers
Maak eerst een YAML-bestand voor verwijdering (bijvoorbeeld: /etc/ansible/playbooks/uninstall_mdatp.yml) dat gebruikmaakt van mde_installer.sh
. U kunt het bestand ook rechtstreeks downloaden vanuit GitHub
- 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 }}"
Voer de volgende opdracht uit om Defender voor Eindpunt te verwijderen met behulp van het playbook:
ansible-playbook -i /etc/ansible/hosts /etc/ansible/playbooks/uninstall_mdatp.yml --extra-vars "mde_installer_script=<path to mde_installer.sh>"
Defender voor Eindpunt implementeren met behulp van Ansible door opslagplaatsen handmatig te configureren
Volg de stappen in deze sectie na het downloaden van het onboardingpakket en de vereisten voor het voldoen aan de vereisten voor het implementeren van Defender voor Eindpunt door de opslagplaatsen voor elke Linux-distributie handmatig te configureren.
Ansible YAML-bestanden maken
Maak een subtaak of rolbestanden die bijdragen aan een playbook of taak.
Maak de onboarding-taak,
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
Voeg de Defender voor Eindpunt-opslagplaats en de sleutel toe,
add_apt_repo.yml
. Defender voor Eindpunt op Linux kan worden geïmplementeerd via een van de volgende kanalen:-
insiders-fast, aangeduid als
[channel]
insiders-slow, aangeduid als[channel]
-
prod, aangeduid als
[channel]
het gebruik van de versienaam (zie Linux-softwareopslagplaats voor Microsoft-producten)
Elk kanaal komt overeen met een Linux-softwareopslagplaats.
De keuze van het kanaal bepaalt het type en de frequentie van updates die aan uw apparaat worden aangeboden. Apparaten in insiders-fast zijn de eerste apparaten die updates en nieuwe functies ontvangen, later gevolgd door insiders-slow en ten slotte door prod.
Als u een voorbeeld van nieuwe functies wilt bekijken en in een vroeg stadium feedback wilt geven, is het raadzaam dat u sommige apparaten in uw onderneming configureert voor het gebruik van insiders-fast of insiders-slow.
Waarschuwing
Als u het kanaal na de eerste installatie overschakelt, moet het product opnieuw worden geïnstalleerd. Als u wilt schakelen tussen het productkanaal, verwijdert u het bestaande pakket, configureert u het apparaat opnieuw om het nieuwe kanaal te gebruiken en volgt u de stappen in dit document om het pakket vanaf de nieuwe locatie te installeren.
-
insiders-fast, aangeduid als
Noteer uw distributie en versie en identificeer de dichtstbijzijnde vermelding hiervoor onder
https://packages.microsoft.com/config/[distro]/
.Vervang [distributie] en [versie] in de volgende opdrachten door de informatie die u hebt geïdentificeerd.
Opmerking
In het geval van Oracle Linux en Amazon Linux 2 vervangt u [distributie] door "rhel". Voor Amazon Linux 2 vervangt u [versie] door "7". Vervang voor Oracle Linux [versie] door de versie van 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"
Maak de Ansible-installatie- en verwijder YAML-bestanden.
Gebruik voor apt-gebaseerde distributies het volgende YAML-bestand:
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
Gebruik het volgende YAML-bestand voor distributies op basis van dnf:
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
Het playbook toepassen
In deze stap past u het playbook toe. Voer de takenbestanden onder /etc/ansible/playbooks/
of de relevante map uit.
Installatie:
ansible-playbook /etc/ansible/playbooks/install_mdatp.yml -i /etc/ansible/hosts
Belangrijk
Wanneer het product voor de eerste keer wordt gestart, worden de nieuwste antimalwaredefinities gedownload. Afhankelijk van uw internetverbinding kan dit enkele minuten duren.
Validatie/configuratie:
ansible -m shell -a 'mdatp connectivity test' all
ansible -m shell -a 'mdatp health' all
Verwijdering:
ansible-playbook /etc/ansible/playbooks/uninstall_mdatp.yml -i /etc/ansible/hosts
Installatieproblemen oplossen
Volg deze stappen om zelf problemen op te lossen:
Zie Problemen met logboekinstallatie voor informatie over het vinden van het logboek dat automatisch wordt gegenereerd wanneer er een installatiefout optreedt.
Zie Installatieproblemen voor informatie over veelvoorkomende installatieproblemen.
Als de status van het apparaat is
false
, raadpleegt u Statusproblemen met Defender voor Eindpunt-agent.Zie Prestatieproblemen oplossen voor problemen met productprestaties.
Zie Problemen met cloudconnectiviteit oplossen voor proxy- en connectiviteitsproblemen.
Als u ondersteuning van Microsoft wilt krijgen, opent u een ondersteuningsticket en geeft u de logboekbestanden op die zijn gemaakt met behulp van de clientanalyse.
Beleidsregels configureren voor Microsoft Defender in Linux
U kunt antivirus- of EDR-instellingen op uw eindpunten configureren met behulp van de volgende methoden:
- Zie Voorkeuren instellen voor Microsoft Defender voor Eindpunt in Linux.
- Zie Beheer van beveiligingsinstellingen om instellingen te configureren in de Microsoft Defender portal.
Upgrades van het besturingssysteem
Wanneer u uw besturingssysteem upgradet naar een nieuwe primaire versie, moet u defender voor eindpunt eerst verwijderen in Linux, de upgrade installeren en defender voor eindpunt op Linux op uw apparaat opnieuw configureren.
Zie ook
- YUM-opslagplaatsen toevoegen of verwijderen
- Pakketten beheren met dnf-pakketbeheer
- APT-opslagplaatsen toevoegen en verwijderen
- Apt-packages beheren
- Problemen met ontbrekende gebeurtenissen
Tip
Wil je meer weten? Engage met de Microsoft Security-community in onze Tech Community: Microsoft Defender voor Eindpunt Tech Community.