Distribuera Microsoft Defender för Endpoint på Linux med Ansible
Gäller för:
- Microsoft Defender för Endpoint Server
- Microsoft Defender för servrar
Vill du uppleva Microsoft Defender för Endpoint? Registrera dig för en kostnadsfri utvärderingsversion.
Den här artikeln beskriver hur du distribuerar Defender för Endpoint i Linux med Ansible. En lyckad distribution kräver att alla följande uppgifter slutförs:
- Krav och systemkrav
- Ladda ned onboarding-paketet
- Distribuera Defender för Endpoint i Linux med hjälp av mde_installer.sh med Ansible
- Distribuera Defender för Endpoint i Linux med Ansible genom att konfigurera lagringsplatser manuellt
Viktigt
Den här artikeln innehåller information om verktyg från tredje part. Detta tillhandahålls för att hjälpa till att slutföra integreringsscenarier, men Microsoft tillhandahåller inte felsökningsstöd för verktyg från tredje part.
Kontakta tredjepartsleverantören för support.
Inledning
Distribuera Microsoft Defender för Endpoint på Linux-servrar med Ansible för att automatisera distributionsprocessen för datorer i stor skala. Följande är de två metoderna för att automatisera:
Använd installationsskriptet (rekommenderas). Den här metoden förenklar automatiseringsprocessen avsevärt och hjälper till att installera Defender för Endpoint-agenten och registrera enheten på Microsoft Defender-portalen med bara några få steg utan att behöva konfigurera för olika distributioner separat.
Konfigurera lagringsplatser manuellt för varje distribution. Med den här metoden kan du automatisera distributionsprocessen genom att manuellt konfigurera lagringsplatser, installera agenten och registrera enheten för varje distribution. Den här metoden ger mer detaljerad kontroll över distributionsprocessen.
Krav och systemkrav som gäller för båda metoderna
Innan du börjar kan du se huvudsidan för Defender för Endpoint på Linux för en beskrivning av krav och systemkrav.
För Ansible-distribution behöver du dessutom vara bekant med Ansible-administrationsuppgifter, ha Ansible konfigurerat och veta hur du distribuerar spelböcker och uppgifter. Ansible har många sätt att slutföra samma uppgift. De här anvisningarna förutsätter tillgänglighet för Ansible-moduler som stöds, till exempel apt och unarchive för att distribuera paketet. Din organisation kan använda ett annat arbetsflöde. Mer information finns i Ansible-dokumentationen.
Ansible måste installeras på minst en dator (Ansible kallar den här datorn för kontrollnoden).
SSH måste konfigureras för ett administratörskonto mellan kontrollnoden och alla hanterade noder (enheter som har Defender för Endpoint installerat på sig) och det rekommenderas att konfigureras med autentisering med offentlig nyckel.
Följande programvara måste installeras på alla hanterade noder:
- hårlock
- python-apt (om du distribuerar på distributioner med apt som pakethanterare)
Alla hanterade noder måste anges i följande format i
/etc/ansible/hosts
eller relevant fil:[servers] host1 ansible_ssh_host=10.171.134.39 host2 ansible_ssh_host=51.143.50.51
Pingtest:
ansible -m ping all
Ladda ned onboarding-paketet som gäller för båda metoderna
Ladda ned registreringspaketet från Microsoft Defender-portalen.
Varning
Det går inte att paketera om installationspaketet för Defender för Endpoint. Detta kan påverka produktens integritet negativt och leda till negativa resultat, inklusive men inte begränsat till att utlösa manipuleringsaviseringar och uppdateringar som inte kan tillämpas.
I Microsoft Defender-portalen går du till Inställningar>Slutpunkter>Registrering av enhetshantering>.
I den första nedrullningsbara menyn väljer du Linux Server som operativsystem. I den andra nedrullningsbara menyn väljer du Önskat Linux-konfigurationshanteringsverktyg som distributionsmetod.
Välj Ladda ned registreringspaket. Spara filen som
WindowsDefenderATPOnboardingPackage.zip
.Kontrollera att du har filen från en kommandotolk. Extrahera innehållet i arkivet:
unzip WindowsDefenderATPOnboardingPackage.zip
Archive: WindowsDefenderATPOnboardingPackage.zip inflating: mdatp_onboard.json
Distribuera Defender för Endpoint med hjälp av mde_installer.sh med Ansible
Innan du börjar måste du ladda ned onboarding-paketet och uppfylla kraven för att distribuera Defender för Endpoint i Linux med hjälp av bash-skriptet för installationsprogrammet.
Ladda ned bash-skriptet för installationsprogrammet
Hämta bash-skriptet för installationsprogrammet från Microsoft GitHub-lagringsplatsen eller använd följande kommando för att ladda ned det.
wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh
Skapa Ansible YAML-filer
Skapa YAML-installationsfil. Du kan också ladda ned filen direkt från 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 }}"
Obs!
Installationsskriptet stöder även andra parametrar som kanal, realtidsskydd, version osv. Om du vill välja från listan över tillgängliga alternativ kontrollerar du hjälpen med följande kommando: ./mde_installer.sh --help
Tillämpa spelboken
Använd spelboken med hjälp av följande kommando och ersätt motsvarande sökvägar och kanal enligt dina behov:
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> "
Kontrollera om distributionen lyckas
Öppna enhetsinventeringen i Microsoft Defender-portalen. Det kan ta 5–20 minuter innan enheten visas i portalen.
Utför följande kontroller efter installationen, som omfattar kontroller som hälso-, anslutnings-, antivirus- och EDR-identifieringstester för att säkerställa en lyckad distribution och drift av Defender för Endpoint.
- 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"
Avinstallera Microsoft Defender för Endpoint på Linux-servrar
Skapa först en YAML-fil för avinstallation (till exempel /etc/ansible/playbooks/uninstall_mdatp.yml) som använder mde_installer.sh
. Du kan också ladda ned filen direkt från 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 }}"
Kör följande kommando för att avinstallera Defender för Endpoint med hjälp av spelboken:
ansible-playbook -i /etc/ansible/hosts /etc/ansible/playbooks/uninstall_mdatp.yml --extra-vars "mde_installer_script=<path to mde_installer.sh>"
Distribuera Defender för Endpoint med Ansible genom att konfigurera lagringsplatser manuellt
Följ stegen i det här avsnittet när du har laddat ned onboarding-paketet och uppfyller kraven för att distribuera Defender för Endpoint genom att manuellt konfigurera lagringsplatserna för varje Linux-distribution.
Skapa Ansible YAML-filer
Skapa en underuppgift eller rollfiler som bidrar till en spelbok eller uppgift.
Skapa registreringsuppgiften:
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
Lägg till lagringsplatsen Defender för Endpoint och nyckeln ,
add_apt_repo.yml
. Defender för Endpoint i Linux kan distribueras från någon av följande kanaler:-
insiders-fast, betecknas som
[channel]
insiders-slow, betecknas som[channel]
-
prod, som betecknas som
[channel]
att använda versionsnamnet (se Linux Software Repository for Microsoft Products)
Varje kanal motsvarar en Linux-programvarulagringsplats.
Valet av kanal avgör typ och frekvens för uppdateringar som erbjuds till din enhet. Enheter i insiders-snabb är de första som tar emot uppdateringar och nya funktioner, följt senare av insiders-långsam, och slutligen av prod.
För att kunna förhandsgranska nya funktioner och ge tidig feedback rekommenderar vi att du konfigurerar vissa enheter i företaget för att använda insiders-fast eller insiders-slow.
Varning
Om du byter kanal efter den första installationen måste produkten installeras om. Så här växlar du produktkanalen: avinstallera det befintliga paketet, konfigurera om enheten så att den använder den nya kanalen och följ stegen i det här dokumentet för att installera paketet från den nya platsen.
-
insiders-fast, betecknas som
Observera distributionen och versionen och identifiera den närmaste posten för den under
https://packages.microsoft.com/config/[distro]/
.Ersätt [distro] och [version] med den information som du har identifierat i följande kommandon.
Obs!
När det gäller Oracle Linux och Amazon Linux 2 ersätter du [distro] med "rhel". För Amazon Linux 2 ersätter du [version] med "7". För Oracle Linux ersätter du [version] med versionen av 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"
Skapa Ansible-installationen och avinstallera YAML-filerna.
För apt-baserade distributioner använder du följande YAML-fil:
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
För dnf-baserade distributioner använder du följande YAML-fil:
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
Tillämpa spelboken
I det här steget använder du spelboken. Kör aktivitetsfilerna under /etc/ansible/playbooks/
eller relevant katalog.
Installation:
ansible-playbook /etc/ansible/playbooks/install_mdatp.yml -i /etc/ansible/hosts
Viktigt
När produkten startar för första gången hämtar den de senaste definitionerna för program mot skadlig kod. Beroende på din Internetanslutning kan det ta upp till några minuter.
Validering/konfiguration:
ansible -m shell -a 'mdatp connectivity test' all
ansible -m shell -a 'mdatp health' all
Avinstallation:
ansible-playbook /etc/ansible/playbooks/uninstall_mdatp.yml -i /etc/ansible/hosts
Felsöka installationsproblem
Följ dessa steg för självfelsökning:
Information om hur du hittar loggen som genereras automatiskt när ett installationsfel inträffar finns i Problem med logginstallation.
Information om vanliga installationsproblem finns i Installationsproblem.
Om enhetens hälsa är
false
läser du Hälsoproblem med Defender för Endpoint-agenten.Information om problem med produktprestanda finns i Felsöka prestandaproblem.
Information om proxy- och anslutningsproblem finns i Felsöka problem med molnanslutning.
Om du vill få support från Microsoft öppnar du ett supportärende och anger loggfilerna som skapats med hjälp av klientanalyseraren.
Så här konfigurerar du principer för Microsoft Defender i Linux
Du kan konfigurera antivirus- eller EDR-inställningar på dina slutpunkter med hjälp av följande metoder:
- Se Ange inställningar för Microsoft Defender för Endpoint i Linux.
- Se Hantering av säkerhetsinställningar för att konfigurera inställningar i Microsoft Defender-portalen.
Uppgraderingar av operativsystem
När du uppgraderar operativsystemet till en ny huvudversion måste du först avinstallera Defender för Endpoint på Linux, installera uppgraderingen och slutligen konfigurera om Defender för Endpoint på Linux på enheten.
Se även
- Lägga till eller ta bort YUM-lagringsplatser
- Hantera paket med dnf-pakethanteraren
- Lägga till och ta bort APT-lagringsplatser
- Hantera apt-packages
- Händelseproblem som saknas
Tips
Vill du veta mer? Engage med Microsofts säkerhetscommunity i vår Tech Community: Microsoft Defender för Endpoint Tech Community.