استيعاب رسائل syslog وCEF Microsoft Sentinel باستخدام عامل Azure Monitor

توضح لك هذه المقالة كيفية استخدام Syslog عبر AMAوتنسيق الحدث الشائع (CEF) عبر موصلات AMA لتصفية رسائل syslog وCEF واستيعابها من أجهزة Linux وأجهزة الشبكة وأجهزة الأمان. قبل أن تبدأ، تأكد من أن لديك الأصوات المطلوبة، والوكلاء، وإعداد محول السجلات كما هو موضح في المتطلبات المسبقة. لمعرفة المزيد حول موصلات البيانات هذه، راجع Syslog وتنسيق الحدث الشائع (CEF) عبر موصلات AMA للحصول على Microsoft Sentinel.

ملاحظة

تدعم Container Insights المجموعة التلقائية لأحداث syslog من العقد Linux في مجموعات AKS الخاصة بك. تعرف على المزيد في مجموعة Syslog باستخدام Container Insights.

المتطلبات الأساسية

قبل البدء، راجع Microsoft Sentinel التالية ومرسل توجيه السجل ومتطلبات أمان الجهاز للتأكد من تكوين الموارد وتعيين الأذونات المناسبة كما هو موضح في Microsoft Sentinel المتطلبات الأساسية ومتطلبات إعادة توجيه السجل ومتطلبات أمان الجهاز الأساسية.

المتطلبات الأساسية Microsoft Sentinel

قم بتثبيت حل Microsoft Sentinel المناسب وتأكد من أن لديك الأذونات لإكمال الخطوات الواردة في هذه المقالة.

متطلبات معاد توجيه السجل

إذا كنت تجمع رسائل من معاد توجيه السجل، يتم تطبيق المتطلبات الأساسية التالية:

  • يجب أن يكون لديك جهاز ظاهري Linux معين كمحول سجل لتجميع السجلات.

  • إذا لم يكن معيد توجيه السجل جهازا ظاهريا Azure، فيجب أن يكون Azure عامل Arc Connected Machine مثبتا عليه.

  • يجب أن يكون الجهاز الظاهري لمحول سجل Linux مثبتا عليه Python 2.7 أو 3. python --version استخدم الأمر أو python3 --version للتحقق. إذا كنت تستخدم Python 3، فتأكد من تعيينه كأمر افتراضي على الجهاز، أو قم بتشغيل البرامج النصية باستخدام الأمر "python3" بدلا من "python".

  • يجب أن يكون لدى معاد توجيه السجل إما البرنامج syslog-ng الخفي أو rsyslog ممكن.

  • للحصول على متطلبات المساحة لمحول توجيه السجل، راجع معيار أداء عامل Azure Monitor. يمكنك أيضا مراجعة التصاميم لإنجاز Microsoft Sentinel استيعاب قابل للتطوير.

  • يجب تكوين مصادر السجل وأجهزة الأمان والأجهزة لإرسال رسائل السجل الخاصة بهم إلى البرنامج الخفي ل syslog لمعيد توجيه السجل بدلا من البرنامج الخفي syslog المحلي الخاص بهم.

ملاحظة

عند توزيع AMA إلى مجموعة مقياس الجهاز الظاهري (VMSS)، يتم تشجيعك بشدة على استخدام موازن تحميل يدعم أسلوب round-robin لضمان توزيع التحميل عبر جميع المثيلات المنشورة.

المتطلبات الأساسية لأمان الجهاز

قم بتكوين أمان الجهاز وفقا لنهج الأمان الخاص بمؤسستك. على سبيل المثال، قم بتكوين شبكتك لتتماشى مع نهج أمان شبكة الشركة وتغيير المنافذ والبروتوكولات في البرنامج الخفي لتتماشى مع متطلباتك. لتحسين تكوين أمان جهازك، قم بتأمين الجهاز الظاهري في Azure، أو راجع أفضل الممارسات هذه لأمان الشبكة.

إذا كانت أجهزتك ترسل سجلات syslog وCEF عبر TLS لأنه، على سبيل المثال، معيد توجيه السجل الخاص بك في السحابة، فأنت بحاجة إلى تكوين البرنامج الخفي syslog (rsyslog أو syslog-ng) للاتصال في TLS. لمزيد من المعلومات، اطلع على:

تكوين موصل البيانات

تتضمن عملية إعداد Syslog عبر AMA أو Common Event Format (CEF) عبر موصلات بيانات AMA الخطوات التالية:

  1. قم بتثبيت عامل مراقبة Azure وإنشاء قاعدة تجميع البيانات (DCR) باستخدام أي من الطرق التالية:
  2. إذا كنت تجمع سجلات من أجهزة أخرى باستخدام معاد توجيه السجل، فقم بتشغيل البرنامج النصي "التثبيت" على معاد توجيه السجل لتكوين البرنامج الخفي syslog للاستماع إلى الرسائل من أجهزة أخرى، وفتح المنافذ المحلية الضرورية.

حدد علامة التبويب المناسبة للحصول على الإرشادات.

استخدم بوابة Azure أو Defender لإنشاء قاعدة جمع بيانات (DCR) وتثبيت Azure Monitor Agent على جهاز التوجيه الخاص بك.

إنشاء قاعدة جمع البيانات (DCR)

للبدء، افتح إما Syslog عبر AMA أو Common Event Format (CEF) عبر موصل بيانات AMA في Microsoft Sentinel وإنشاء قاعدة تجميع بيانات (DCR).

  1. للحصول على Microsoft Sentinel في مدخل Azure، ضمن التكوين، حدد موصلات البيانات.
    بالنسبة Microsoft Sentinel في مدخل Defender، حدد Microsoft Sentinel>Configuration>Data connectors.

  2. بالنسبة إلى syslog، اكتب Syslog في مربع البحث . من النتائج، حدد Syslog عبر موصل AMA .
    بالنسبة إلى CEF، اكتب CEF في مربع البحث . من النتائج، حدد Common Event Format (CEF) عبر موصل AMA .

  3. حدد فتح صفحة الموصل في جزء التفاصيل.

  4. في منطقة التكوين ، حدد +Create data collection rule.

    لقطة شاشة تعرض Syslog عبر صفحة موصل AMA.

    لقطة شاشة تعرض CEF عبر صفحة موصل AMA.

  5. في علامة التبويب Basic :

    • اكتب اسم DCR.
    • حدد اشتراكك.
    • حدد مجموعة الموارد حيث تريد تحديد موقع DCR الخاص بك.

    لقطة شاشة تعرض تفاصيل DCR في علامة التبويب Basic.

  6. حدد Next: Resources >.

تعريف موارد الجهاز الظاهري

في علامة التبويب الموارد ، حدد الأجهزة التي تريد تثبيت AMA عليها. لهذا الإجراء، حدد جهاز معاد توجيه السجل. إذا لم يظهر معيد توجيه السجل في القائمة، فقد لا يكون عامل الجهاز المتصل Azure مثبتا عليه.

  1. استخدم عوامل التصفية المتوفرة أو مربع البحث للعثور على الجهاز الظاهري لإعادة توجيه السجل. قم بتوسيع اشتراك في القائمة لمشاهدة مجموعات الموارد الخاصة به، ومجموعة موارد لمشاهدة الأجهزة الظاهرية الخاصة بها.

  2. حدد الجهاز الظاهري لإعادة توجيه السجل الذي تريد تثبيت AMA عليه. تظهر خانة الاختيار بجوار اسم الجهاز الظاهري عند المرور فوقه.

    لقطة شاشة توضح كيفية تحديد الموارد عند إعداد DCR.

  3. راجع التغييرات وحدد Next: Collect >.

تحديد المرافق والخطورة

يجب أن تدرك أن استخدام نفس المرفق لكل من رسائل syslog وCEF قد يؤدي إلى تكرار استيعاب البيانات. لمزيد من المعلومات، راجع تجنب تكرار استيعاب البيانات.

  1. في علامة التبويب تجميع ، حدد الحد الأدنى لمستوى السجل لكل مرفق. عند تحديد مستوى سجل، يجمع Microsoft Sentinel سجلات للمستوى المحدد والمستويات الأخرى ذات الخطورة الأعلى. على سبيل المثال، إذا حددت LOG_ERR، Microsoft Sentinel تجمع سجلات لمستويات LOG_ERRLOG_CRITLOG_ALERTLOG_EMERG.

    لقطة شاشة توضح كيفية تحديد مستويات السجل عند إعداد DCR.

  2. راجع التحديدات وحدد Next: Review + create.

مراجعة القاعدة وإنشاءها

بعد إكمال جميع علامات التبويب، راجع ما أدخلته وأنشئ قاعدة جمع البيانات.

  1. في علامة التبويب مراجعة وإنشاء ، حدد إنشاء.

    لقطة شاشة توضح كيفية مراجعة تكوين DCR وإنشاءه.

    يقوم الموصل بتثبيت عامل Azure Monitor على الأجهزة التي حددتها عند إنشاء DCR الخاص بك.

  2. تحقق من الإعلامات في مدخل Azure أو مدخل Microsoft Defender لمعرفة وقت إنشاء DCR وتثبيت العامل.

  3. حدد تحديث في صفحة الموصل لمشاهدة DCR المعروض في القائمة.

تشغيل البرنامج النصي "التثبيت"

إذا كنت تستخدم معاد توجيه السجل، فقم بتكوين البرنامج الخفي syslog للاستماع إلى الرسائل من أجهزة أخرى، وفتح المنافذ المحلية الضرورية.

  1. من صفحة الموصل، انسخ سطر الأوامر الذي يظهر ضمن تشغيل الأمر التالي لتثبيت جامع CEF وتطبيقه:.

    لقطة شاشة لخط الأوامر في صفحة الموصل.

    أو انسخه من هنا:

    sudo wget -O Forwarder_AMA_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/Syslog/Forwarder_AMA_installer.py&&sudo python Forwarder_AMA_installer.py
    
  2. سجل الدخول إلى جهاز إعادة توجيه السجل حيث تم تثبيت AMA.

  3. الصق أمر التثبيت الذي نسخته من صفحة الموصل لبدء تشغيل البرنامج النصي للتثبيت.
    يقوم البرنامج النصي بتكوين rsyslog البرنامج الخفي أو syslog-ng لاستخدام البروتوكول المطلوب وإعادة تشغيل البرنامج الخفي. يفتح البرنامج النصي المنفذ 514 للاستماع إلى الرسائل الواردة في كل من بروتوكولات UDP وTCP. لتغيير هذا الإعداد، راجع ملف تكوين البرنامج الخفي syslog وفقا لنوع البرنامج الخفي الذي يعمل على الجهاز:

    • Rsyslog: /etc/rsyslog.conf
    • Syslog-ng: /etc/syslog-ng/syslog-ng.conf

    إذا كنت تستخدم Python 3، ولم يتم تعيينه كأمر افتراضي على الجهاز، فاستبدل python3python في الأمر الذي تم لصقه. راجع متطلبات معاد توجيه السجل.

    ملاحظة

    لتجنب سيناريوهات القرص الكامل حيث لا يمكن للعامل العمل، نوصي بتعيين syslog-ng أو rsyslog التكوين لعدم تخزين السجلات غير الضرورية. يؤدي سيناريو Full Disk إلى تعطيل وظيفة AMA المثبتة. لمزيد من المعلومات، راجع RSyslog أو Syslog-ng.

  4. تحقق من حالة الخدمة.

    تحقق من حالة خدمة AMA على معيد توجيه السجل:

    sudo systemctl status azuremonitoragent.service
    

    تحقق من حالة خدمة rsyslog:

    sudo systemctl status rsyslog.service
    

    بالنسبة لبيئات syslog-ng، تحقق مما يلي:

    sudo systemctl status syslog-ng.service
    

تكوين جهاز الأمان أو الجهاز

للحصول على إرشادات لتكوين جهاز الأمان أو الجهاز، راجع إحدى المقالات التالية:

لمزيد من المعلومات حول الجهاز أو الجهاز، اتصل بموفر الحل.

اختبار الموصل

تحقق من استيعاب رسائل السجل من جهاز Linux أو أجهزة الأمان والأجهزة في Microsoft Sentinel.

  1. للتحقق من أن البرنامج الخفي syslog يستمع إلى منفذ UDP المطلوب وأن AMA جاهز لتلقي السجلات على معيد توجيه Linux، قم بتشغيل الأمر التالي لعرض وحدات الاستماع النشطة والمنافذ المرتبطة بها:

     netstat -lnptv
    

    يجب أن تشاهد أو rsyslogsyslog-ng الخفي يستمع على المنفذ 514.

  2. لالتقاط الرسائل المرسلة من مسجل أو جهاز متصل، قم بتشغيل هذا الأمر في الخلفية:

    sudo tcpdump -i any port 514 or 28330 -A -vv &
    
  3. بعد إكمال التحقق من الصحة، أوقف tcpdump. اكتب fg، ثم حدد Ctrl+C.

إرسال رسائل اختبار

لإرسال رسائل تجريبية، أكمل إحدى الخطوات التالية:

  1. استخدم الأداة nc المساعدة netcat. في هذا المثال، تقرأ الأداة المساعدة البيانات المنشورة echo من خلال الأمر مع إيقاف تشغيل مفتاح الخط الجديد. ثم تكتب الأداة المساعدة البيانات إلى منفذ 514 UDP على المضيف المحلي دون مهلة. لتنفيذ الأداة المساعدة netcat، قد تحتاج إلى تثبيت حزمة أخرى.

    echo -n "<164>CEF:0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|1|rt=$common=event-formatted-receive_time" | nc -u -w0 localhost 514
    
  2. logger استخدم الأمر . يكتب هذا المثال الرسالة إلى local 4 المرفق، على مستوى Warningالخطورة ، إلى المنفذ 514، على المضيف المحلي، بتنسيق CEF RFC. -t يتم استخدام العلامتين و --rfc3164 للامتثال لتنسيق RFC المتوقع.

    logger -p local4.warn -P 514 -n 127.0.0.1 --rfc3164 -t CEF "0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|rt=$common=event-formatted-receive_time"
    

    اختبر استيعاب Cisco ASA باستخدام الأمر التالي:

    echo -n "<164>%ASA-7-106010: Deny inbound TCP src inet:1.1.1.1 dst inet:2.2.2.2" | nc -u -w0 localhost 514
    

    بعد تشغيل هذه الأوامر، تصل الرسائل إلى المنفذ 514 وتعيد توجيهها إلى المنفذ 28330.

  3. بعد إرسال رسائل الاختبار، استعلم عن مساحة عمل Log Analytics. قد تستغرق السجلات ما يصل إلى 20 دقيقة لتظهر في مساحة العمل الخاصة بك.

لسجلات CEF:

CommonSecurityLog
| where TimeGenerated > ago(1d)
| where DeviceProduct == "MOCK"

بالنسبة لسجلات Cisco ASA:

CommonSecurityLog
| where TimeGenerated > ago(1d)
| where DeviceVendor == "Cisco"
| where DeviceProduct == "ASA"

استكشاف الأخطاء وإصلاحها إضافية

إذا كنت لا ترى نسبة استخدام الشبكة على المنفذ 514 أو لم يتم استيعاب رسائل الاختبار الخاصة بك، فراجع استكشاف أخطاء Syslog وCEF وإصلاحها عبر موصلات AMA Microsoft Sentinel لاستكشاف الأخطاء وإصلاحها.