توزيع Microsoft Defender لنقطة النهاية على Linux باستخدام Ansible
ينطبق على:
- Microsoft Defender لنقطة النهاية للخوادم
- Microsoft Defender للخوادم الخطة 1 أو الخطة 2
هل تريد تجربة Defender لنقطة النهاية؟ التسجيل للحصول على إصدار تجريبي مجاني.
توضح هذه المقالة كيفية نشر Defender لنقطة النهاية على Linux باستخدام Ansible. يتطلب التوزيع الناجح إكمال جميع المهام التالية:
- المتطلبات الأساسية ومتطلبات النظام
- تنزيل حزمة الإعداد
- توزيع Defender لنقطة النهاية على Linux باستخدام mde_installer.sh مع Ansible
- توزيع Defender لنقطة النهاية على Linux باستخدام Ansible عن طريق تكوين المستودعات يدويا
هام
تحتوي هذه المقالة على معلومات حول أدوات الجهات الخارجية. يتم توفير هذا للمساعدة في إكمال سيناريوهات التكامل، ومع ذلك، لا توفر Microsoft دعم استكشاف الأخطاء وإصلاحها لأدوات الجهات الخارجية.
اتصل بمورد الجهة الخارجية للحصول على الدعم.
مقدمة
انشر Microsoft Defender لنقطة النهاية على خوادم Linux باستخدام Ansible لأتمتة عملية التوزيع للأجهزة على نطاق واسع. فيما يلي طريقتان لأتمتة:
استخدم البرنامج النصي للمثبت (مستحسن). يبسط هذا الأسلوب إلى حد كبير عملية الأتمتة ويساعد على تثبيت Defender لعامل نقطة النهاية وإلحاق الجهاز بالمدخل Microsoft Defender باستخدام بضع خطوات فقط دون الحاجة إلى تكوين توزيعات مختلفة بشكل منفصل.
تكوين المستودعات يدويا لكل توزيعة. يسمح لك هذا الأسلوب بأتمتة عملية التوزيع عن طريق تكوين المستودعات يدويا، وتثبيت العامل، وإلحاق الجهاز لكل توزيعة. يمنح هذا الأسلوب تحكما أكثر دقة في عملية التوزيع.
المتطلبات الأساسية ومتطلبات النظام المطبقة على كلا الأسلوبين
قبل البدء، راجع صفحة Defender لنقطة النهاية الرئيسية على Linux للحصول على وصف للمتطلبات الأساسية ومتطلبات النظام.
بالإضافة إلى ذلك، بالنسبة لنشر Ansible، يجب أن تكون على دراية بمهام إدارة Ansible، وأن يكون Ansible قد تم تكوينه، وأن تعرف كيفية نشر أدلة المبادئ والمهام. لدى Ansible العديد من الطرق لإكمال نفس المهمة. تفترض هذه الإرشادات توفر وحدات Ansible النمطية المدعومة، مثل apt و unarchive للمساعدة في نشر الحزمة. قد تستخدم مؤسستك سير عمل مختلفا. لمزيد من المعلومات، راجع وثائق Ansible.
يجب تثبيت Ansible على كمبيوتر واحد على الأقل (يستدعي Ansible هذا الكمبيوتر عقدة التحكم).
يجب تكوين SSH لحساب مسؤول بين عقدة التحكم وجميع العقد المدارة (الأجهزة التي تم تثبيت Defender لنقطة النهاية عليها)، ويوصى بتكوينها باستخدام مصادقة المفتاح العام.
يجب تثبيت البرنامج التالي على جميع العقد المدارة:
- حليقه
- python-apt (إذا كنت تنشر على التوزيعات باستخدام apt كمدير حزمة)
يجب إدراج جميع العقد المدارة بالتنسيق التالي في
/etc/ansible/hosts
الملف أو ذي الصلة:[servers] host1 ansible_ssh_host=10.171.134.39 host2 ansible_ssh_host=51.143.50.51
اختبار Ping:
ansible -m ping all
قم بتنزيل حزمة الإلحاق القابلة للتطبيق على كلا الأسلوبين
قم بتنزيل حزمة الإعداد من مدخل Microsoft Defender.
تحذير
إعادة حزمة تثبيت Defender لنقطة النهاية ليست سيناريو مدعوما. يمكن أن يؤثر القيام بذلك سلبا على سلامة المنتج ويؤدي إلى نتائج سلبية، بما في ذلك على سبيل المثال لا الحصر تشغيل تنبيهات العبث والتحديثات التي تفشل في التطبيق.
في مدخل Microsoft Defender، انتقل إلى الإعدادات>نقاط> النهايةإدارة> الأجهزةإلحاق.
في القائمة المنسدلة الأولى، حدد Linux Server كنظام تشغيل. في القائمة المنسدلة الثانية، حدد أداة إدارة تكوين Linux المفضلة لديك كطريقة نشر.
حدد Download onboarding package. احفظ الملف باسم
WindowsDefenderATPOnboardingPackage.zip
.من موجه الأوامر، تحقق من أن لديك الملف. استخراج محتويات الأرشيف:
unzip WindowsDefenderATPOnboardingPackage.zip
Archive: WindowsDefenderATPOnboardingPackage.zip inflating: mdatp_onboard.json
توزيع Defender لنقطة النهاية باستخدام mde_installer.sh مع Ansible
قبل البدء، تأكد من تنزيل حزمة الإعداد وتلبية المتطلبات الأساسية لنشر Defender لنقطة النهاية على Linux باستخدام البرنامج النصي bash للمثبت.
تنزيل البرنامج النصي bash للمثبت
اسحب البرنامج النصي bash للمثبت من مستودع Microsoft GitHub أو استخدم الأمر التالي لتنزيله.
wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh
إنشاء ملفات Ansible YAML
إنشاء ملف YAML للتثبيت. يمكنك أيضا تنزيل الملف مباشرة من 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 }}"
ملاحظة
يدعم البرنامج النصي المثبت أيضا معلمات أخرى مثل القناة والحماية في الوقت الحقيقي والإصدار وما إلى ذلك. للتحديد من قائمة الخيارات المتوفرة، تحقق من التعليمات من خلال الأمر التالي: ./mde_installer.sh --help
تطبيق دليل المبادئ
قم بتطبيق دليل المبادئ باستخدام الأمر التالي، مع استبدال المسارات والقناة المقابلة وفقا لمتطلباتك:
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> "
تحقق مما إذا كان التوزيع ناجحا
في مدخل Microsoft Defender، افتح مخزون الجهاز. قد يستغرق ظهور الجهاز في المدخل من 5 إلى 20 دقيقة.
قم بإجراء فحوصات ما بعد التثبيت التالية، والتي تتضمن فحوصات مثل الصحة والاتصال ومكافحة الفيروسات واختبارات الكشف عن EDR لضمان النشر الناجح والعمل ل Defender لنقطة النهاية.
- 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 لنقطة النهاية على خوادم Linux
أولا، قم بإنشاء ملف YAML لإلغاء التثبيت (على سبيل المثال: /etc/ansible/playbooks/uninstall_mdatp.yml) الذي يستخدم mde_installer.sh
. يمكنك أيضا تنزيل الملف مباشرة من 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 }}"
قم بتشغيل الأمر التالي لإلغاء تثبيت Defender لنقطة النهاية باستخدام دليل المبادئ:
ansible-playbook -i /etc/ansible/hosts /etc/ansible/playbooks/uninstall_mdatp.yml --extra-vars "mde_installer_script=<path to mde_installer.sh>"
توزيع Defender لنقطة النهاية باستخدام Ansible عن طريق تكوين المستودعات يدويا
اتبع الخطوات الواردة في هذا القسم بعد تنزيل حزمة الإعداد وتلبية المتطلبات الأساسية لنشر Defender لنقطة النهاية عن طريق تكوين المستودعات يدويا لكل توزيع Linux.
إنشاء ملفات Ansible YAML
إنشاء مهمة فرعية أو ملفات دور تساهم في دليل المبادئ أو المهمة.
إنشاء مهمة الإلحاق،
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
أضف مستودع Defender لنقطة النهاية والمفتاح،
add_apt_repo.yml
. يمكن نشر Defender لنقطة النهاية على Linux من إحدى القنوات التالية:-
المشاركون في برنامج insider سريع، المشار إليه على أنه
[channel]
بطيء المشاركين في برنامج Insider، المشار إليه على أنه[channel]
-
prod، المشار إليه على أنه
[channel]
يستخدم اسم الإصدار (راجع مستودع برامج Linux لمنتجات Microsoft)
تتوافق كل قناة مع مستودع برامج Linux.
يحدد اختيار القناة نوع التحديثات المقدمة لجهازك وتكرارها. الأجهزة في المشاركين في برنامج Insider-fast هي أول الأجهزة التي تتلقى التحديثات والميزات الجديدة، متبوعة لاحقا ببطء المشاركين في برنامج Insider، وأخيرا بواسطة prod.
من أجل معاينة الميزات الجديدة وتقديم ملاحظات مبكرة، يوصى بتكوين بعض الأجهزة في مؤسستك لاستخدام المشاركين في برنامج Insider سريع أو بطيء المشاركين في برنامج Insider.
تحذير
يتطلب تبديل القناة بعد التثبيت الأولي إعادة تثبيت المنتج. لتبديل قناة المنتج: قم بإلغاء تثبيت الحزمة الموجودة، وأعد تكوين جهازك لاستخدام القناة الجديدة، واتبع الخطوات الواردة في هذا المستند لتثبيت الحزمة من الموقع الجديد.
-
المشاركون في برنامج insider سريع، المشار إليه على أنه
لاحظ التوزيع والإصدار وحدد أقرب إدخال له ضمن
https://packages.microsoft.com/config/[distro]/
.في الأوامر التالية، استبدل [توزيعة] و [إصدار] بالمعلومات التي حددتها.
ملاحظة
في حالة Oracle Linux وAmazon Linux 2، استبدل [distro] ب "rhel". بالنسبة إلى Amazon Linux 2، استبدل [version] ب "7". بالنسبة إلى Oracle Linux، استبدل [version] بإصدار 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"
إنشاء تثبيت Ansible وإلغاء تثبيت ملفات YAML.
بالنسبة للتوزيعات المستندة إلى apt، استخدم ملف YAML التالي:
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
بالنسبة للتوزيعات المستندة إلى dnf، استخدم ملف YAML التالي:
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
تطبيق دليل المبادئ
في هذه الخطوة، يمكنك تطبيق دليل المبادئ. قم بتشغيل ملفات المهام ضمن /etc/ansible/playbooks/
أو الدليل ذي الصلة.
تركيب:
ansible-playbook /etc/ansible/playbooks/install_mdatp.yml -i /etc/ansible/hosts
هام
عندما يبدأ المنتج لأول مرة، فإنه يقوم بتنزيل أحدث تعريفات مكافحة البرامج الضارة. اعتمادا على اتصال الإنترنت الخاص بك، قد يستغرق هذا ما يصل إلى بضع دقائق.
التحقق من الصحة/التكوين:
ansible -m shell -a 'mdatp connectivity test' all
ansible -m shell -a 'mdatp health' all
إلغاء التثبيت:
ansible-playbook /etc/ansible/playbooks/uninstall_mdatp.yml -i /etc/ansible/hosts
استكشاف مشاكل التثبيت وإصلاحها
إذا واجهت أي مشكلات في التثبيت، لاستكشاف الأخطاء وإصلاحها ذاتيا، فاتبع الخطوات التالية:
للحصول على معلومات حول كيفية العثور على السجل الذي يتم إنشاؤه تلقائيا عند حدوث خطأ في التثبيت، راجع مشكلات تثبيت السجل.
للحصول على معلومات حول مشكلات التثبيت الشائعة، راجع مشكلات التثبيت.
إذا كانت صحة الجهاز هي
false
، فشاهد Defender for Endpoint agent health issues.لمعرفة مشكلات أداء المنتج، راجع استكشاف مشكلات الأداء وإصلاحها.
للحصول على مشكلات الوكيل والاتصال، راجع استكشاف مشكلات الاتصال السحابي وإصلاحها.
للحصول على الدعم من Microsoft، افتح تذكرة دعم، وقم بتوفير ملفات السجل التي تم إنشاؤها باستخدام محلل العميل.
كيفية تكوين نهج Microsoft Defender على Linux
يمكنك تكوين إعدادات مكافحة الفيروسات أو EDR على نقاط النهاية باستخدام الطرق التالية:
- راجع تعيين تفضيلات Microsoft Defender لنقطة النهاية على Linux.
- راجع إدارة إعدادات الأمان لتكوين الإعدادات في مدخل Microsoft Defender.
ترقيات نظام التشغيل
عند ترقية نظام التشغيل الخاص بك إلى إصدار رئيسي جديد، يجب أولا إلغاء تثبيت Defender لنقطة النهاية على Linux، وتثبيت الترقية، وأخيرا إعادة تكوين Defender لنقطة النهاية على Linux على جهازك.
راجع أيضًا
- إضافة مستودعات YUM أو إزالتها
- إدارة الحزم باستخدام مدير حزمة dnf
- إضافة مستودعات APT وإزالتها
- إدارة حزم apt
- مشكلات الأحداث المفقودة
تلميح
هل تريد معرفة المزيد؟ Engage مع مجتمع أمان Microsoft في مجتمعنا التقني: Microsoft Defender لنقطة النهاية Tech Community.