Scroll to navigation

AUDITCTL(8) أدوات إدارة النظام AUDITCTL(8)

الاسم

auditctl - أداة للمساعدة في التحكم بنظام تدقيق النواة

موجز

auditctl [خيارات]

الوصف

يُستخدم برنامج auditctl لتهيئة خيارات النواة المتعلقة بالتدقيق، لرؤية حالة التهيئة، ولتحميل قواعد التدقيق التقديرية.

خيارات التكوين

عيّن العدد الأقصى (الحد) لمخازن التدقيق المعلقة المسموح بها (المبدئي للنواة=64). إذا امتلأت جميع المخازن، تستشير النواة علامة الفشل لاتخاذ الإجراء.
--وقت_انتظار_سجل_الانتظار وقت_الانتظار
عيّن الوقت الذي تنتظره النواة (المبدئي للنواة 60*HZ) عند الوصول إلى حد سجل الانتظار قبل إدراج المزيد من أحداث التدقيق في قائمة الانتظار لنقلها إلى auditd. يجب أن يكون الرقم أكبر من أو يساوي صفر وأقل من 10 أضعاف القيمة المبدئية.
--إعادة_ضبط_وقت_انتظار_سجل_الانتظار_الفعلي
إعادة تعيين عداد وقت انتظار التراكم الفعلي الذي يظهره أمر الحالة.
متابعة تحميل القواعد على الرغم من وجود خطأ. يلخص هذا نتائج تحميل القواعد. لن يكون رمز الخروج نجاحًا إذا فشلت أي قاعدة في التحميل.
حذف جميع القواعد والمراقبات. يمكن لهذا أن يقبل خيار مفتاح (-k) أيضًا.
تعيين علامة التفعيل. عند تمرير 0، يمكن استخدام هذا لتعطيل التدقيق مؤقتًا. عند تمرير 1 كوسيطة، فإنه يُفعّل التدقيق. لقفل تكوين التدقيق بحيث لا يمكن تغييره، مرر 2 كوسيطة. يهدف قفل التكوين إلى أن يكون الأمر الأخير في audit.rules لأي شخص يرغب في تنشيط هذه الميزة. تُدقق وتُرفض أي محاولة لتغيير التكوين في هذا الوضع. لا يمكن تغيير التكوين إلا بإعادة تشغيل الجهاز.
تعيين وضع الفشل 0=صامت 1=printk 2=هلع. يتيح لك هذا الخيار تحديد كيفية تعامل النواة مع الأخطاء الحرجة. تشمل أمثلة الظروف التي قد يؤثر فيها هذا الوضع: أخطاء الإرسال إلى خفي تدقيق مساحة المستخدم، تجاوز حد التراكم، نفاد ذاكرة النواة، وتجاوز حد المعدل. القيمة المبدئية هي 1. قد ترغب البيئات الآمنة في تعيين هذا إلى 2.
المساعدة
عند تقديمه بمفرده، يتجاهل الأخطاء عند قراءة القواعد من ملف. هذا يجعل auditctl يُعيد دائمًا رمز خروج نجاح. إذا مُرر كوسيطة إلى -s، فإنه يُعطي تفسيرًا للأرقام بكلمات قابلة للقراءة البشرية إن أمكن.
يخبر هذا الخيار النواة بجعل معرفات تسجيل الدخول (loginuids) غير قابلة للتغيير بمجرد تعيينها. يتطلب تغيير معرفات تسجيل الدخول صلاحية CAP_AUDIT_CONTROL. لذا، ليس شيئًا يمكن للمستخدمين غير المتميزين فعله. يجعل تعيين هذا معرف تسجيل الدخول (loginuid) مقاومًا للتلاعب، ولكنه قد يسبب بعض المشاكل في أنواع معينة من الحاويات.
إذا كان لديك مراقبة دليل موجودة وقمت بربط أو نقل نقطة تحميل شجرة فرعية أخرى داخل الشجرة الفرعية المراقبة، تحتاج إلى إخبار النواة بجعل الشجرة الفرعية التي يجري تحميلها مكافئة للدليل الذي يجري مراقبته. إذا كانت الشجرة الفرعية مُحمّلة بالفعل وقت إصدار أمر مراقبة الدليل، توسَم الشجرة الفرعية آليًا للمراقبة. يرجى ملاحظة الفاصلة التي تفصل بين القيمتين. يؤدي حذفها إلى حدوث أخطاء.
عيّن الحد الأقصى للرسائل/ثانية (0=بلا). إذا كان هذا المعدل غير صفري وتجاوزه، تستشير النواة علامة الفشل لاتخاذ إجراء. القيمة المبدئية هي 0.
أعد ضبط عداد السجلات المفقودة الذي يعرضه أمر الحالة.
اقرأ أوامر auditctl ونفذها من ملف. تُنفذ الأوامر سطرًا بسطر، بالترتيب الذي تظهر به في الملف. يجب أن يكون الملف مملوكًا للمستخدم الجذر وغير قابل للقراءة من قبل المستخدمين الآخرين، وإلا فإنه يُرفض. تُتخطى الأسطر الفارغة. تُعامل الأسطر التي تبدأ بالحرف '#' على أنها أسطر تعليق. يُنفذ كل سطر كما لو قُدِّم إلى auditctl كوسائط سطر أوامر. نظرًا لأن auditctl هو من يقرأ الملف وليس صدفة (shell) مثل bash، فلا تُهرّب أحرف الصدفة الخاصة. انظر قسم الأمثلة للحصول على مثال.
أرسل إشارة إلى خفيّ التدقيق. يجب أن تمتلك صلاحيات لفعل ذلك. الإشارات المدعومة هي TERM, HUP, USR1, USR2, CONT والإصدارات سهلة الاستخدام هي stop, reload, rotate, resume, state.
اقتطع الأشجار الفرعية بعد أمر التحميل.

خيارات الحالة

اِعرض جميع القواعد، 1 لكل سطر. يمكن إعطاء خيارين إضافيين لهذا الأمر. يمكنك إعطاء إما خيار مفتاح (-k) لسرد القواعد التي تطابق مفتاحًا أو (-i) لتفسير a0 حتى a3 للمساعدة في تحديد ما إذا كانت قيم وسائط استدعاء النظام صحيحة.
أرسل رسالة مساحة المستخدم إلى نظام التدقيق. يمكن فعل هذا فقط إذا كانت لديك صلاحية CAP_AUDIT_WRITE (عادةً ما يمتلكها المستخدم الجذر). سيكون الحدث الناتج من نوع USER.
أبلغ عن حالة النظام الفرعي للتدقيق في النواة. يخبرك بالقيم داخل النواة التي يمكن تعيينها بواسطة الخيارات -e، -f، -r، و -b. قيمة pid هي رقم عملية خفيّ التدقيق. لاحظ أن قيمة pid تساوي 0 تشير إلى أن خفيّ التدقيق لا يعمل. يخبرك حقل "lost" بعدد سجلات الأحداث التي هُجرت بسبب فيضان قائمة انتظار التدقيق في النواة. يخبرك حقل "backlog" بعدد سجلات الأحداث المُدرجة حاليًا في قائمة الانتظار، بانتظار أن يقرأها auditd. يمكن أن يتبع هذا الخيار -i للحصول على تفسير لبعض الحقول.
اطبع إصدار auditctl.

خيارات القواعد

أضف القاعدة إلى نهاية list بالإجراء action. يرجى ملاحظة الفاصلة التي تفصل بين القيمتين. يؤدي حذفها إلى حدوث أخطاء. يمكن أن تكون الحقول بأي ترتيب. يمكن أن تكون list,action أو action,list. يصف ما يلي أسماء list الصالحة:
مهمة
أضف قاعدة إلى قائمة المهام الفردية. تُستخدم قائمة القواعد هذه فقط عند إنشاء مهمة -- عندما تستدعي المهمة الأم fork() أو clone(). عند استخدام هذه القائمة، يجب استخدام الحقول المعروفة وقت إنشاء المهمة فقط، مثل uid و gid وما إلى ذلك.
أضف قاعدة إلى قائمة إنهاء استدعاء النظام. تُستخدم هذه القائمة عند الخروج من استدعاء نظام لتحديد ما إذا كان ينبغي إنشاء حدث تدقيق.
أضف قاعدة إلى قائمة تصفية رسائل المستخدم. تُستخدم هذه القائمة بواسطة النواة لتصفية الأحداث الناشئة في مساحة المستخدم قبل ترحيلها إلى خادم التدقيق. يجب ملاحظة أن الحقول الصالحة الوحيدة هي: uid و auid و gid و pid و subj_user و subj_role و subj_type و subj_sen و subj_clr و msgtype واسم الملف التنفيذي. تُعامل جميع الحقول الأخرى على أنها غير مطابقة. يجب فهم أن أي حدث ينشأ من مساحة المستخدم من عملية تملك CAP_AUDIT_WRITE يُسجل في سجل التدقيق. هذا يعني أن الاستخدام الأكثر احتمالاً لهذا الفلتر هو مع القواعد التي لها إجراء "never" (أبدًا) نظرًا لعدم الحاجة إلى فعل أي شيء للسماح بتسجيل الأحداث.
أضف قاعدة إلى قائمة تصفية استبعاد نوع الحدث. تُستخدم هذه القائمة لتصفية الأحداث التي لا ترغب في رؤيتها. على سبيل المثال، إذا كنت لا ترغب في رؤية أي رسائل avc، فإنك تستخدم هذه القائمة لتسجيل ذلك. يمكن استبعاد الأحداث بواسطة معرف العملية، أو معرف المستخدم، أو معرف المجموعة، أو معرف المستخدم المسجل، أو نوع الرسالة، أو سياق الموضوع، أو اسم الملف التنفيذي. يُتجاهل الإجراء ويستخدم القيمة المبدئية "never" (أبدًا).
نظام ملفات
أضف قاعدة تُطبق على نظام ملفات كامل. يجب تحديد نظام الملفات بحقل fstype. عادةً، يُستخدم هذا الفلتر لاستبعاد أي أحداث لنظام ملفات كامل مثل tracefs أو debugfs.
أضف قاعدة إلى فلتر استدعاءات النظام io_uring. تحدد القواعد ضد هذا الفلتر عملية استدعاء النظام باستخدام مفهوم استدعاء النظام -S المشروح أدناه. يمكنك إضافة حقل مفتاح إلى القاعدة لكي تُجمع مع قواعد أخرى تراقب نفس استدعاء النظام الأساسي.

يصف ما يلي الإجراءات الصالحة للقاعدة:

لن تُنشأ سجلات تدقيق. يمكن استخدام هذا لقمع إنشاء الأحداث. بشكل عام، ترغب في وضع عمليات القمع في أعلى القائمة بدلاً من أسفلها. هذا لأن الحدث يتفعل عند أول قاعدة مطابقة.
خصص سياق تدقيق، املأه دائمًا وقت دخول استدعاء النظام، واكتب سجلًا دائمًا وقت خروج استدعاء النظام.
أضف قاعدة إلى بداية list باستخدام action.
أنشئ قاعدة مقارنة بين الحقول: حقل، عملية، حقل. يمكنك تمرير مقارنات متعددة في سطر أمر واحد. يجب أن تبدأ كل مقارنة بـ -C. تُربط كل معادلة بين الحقول مع بعضها البعض وكذلك مع المعادلات التي تبدأ بـ -F لتشغيل سجل تدقيق. يُدعم عاملان اثنان: يساوي، ولا يساوي. الحقول الصالحة هي:

لا يمكن خلط مجموعتي uid و gid. لكن يمكن إجراء أي مقارنة داخل المجموعة. تُجمع حقول obj_uid/gid من كائن الحدث مثل ملف أو دليل.

احذف القاعدة من list باستخدام action. تُحذف القاعدة فقط إذا طابقت تمامًا اسم (أسماء) استدعاء النظام وكل اسم حقل وقيمة.
أنشئ حقل قاعدة: الاسم، العملية، القيمة. يمكن تمرير ما يصل إلى 64 حقلاً في سطر أوامر واحد. يجب أن يبدأ كل منها بـ -F. تُربط كل معادلة حقل منطقياً (AND) مع الأخرى (وكذلك المعادلات التي تبدأ بـ -C) لتشغيل سجل تدقيق. هناك 8 عوامل تشغيل مدعومة - يساوي، لا يساوي، أصغر من، أكبر من، أصغر من أو يساوي، وأكبر من أو يساوي، وقناع البت، واختبار البت على الترتيب. اختبار البت يربط القيم منطقياً (AND) ويتحقق من تساويها، بينما قناع البت يربط القيم منطقياً (AND) فقط. يمكن للحقول التي تقبل معرف المستخدم أن تحتوي بدلاً من ذلك على اسم المستخدم؛ يحول البرنامج الاسم إلى معرف المستخدم. وينطبق الشيء نفسه على أسماء المجموعات. الحقول الصالحة هي:
على الترتيب، أول 4 وسائط لاستدعاء نظام. لاحظ أن وسائط السلسلة النصية غير مدعومة. هذا لأن النواة تمرر مؤشراً إلى السلسلة النصية. تشغيل بناءً على قيمة عنوان مؤشر من غير المرجح أن ينجح. لذلك، عند استخدامه، يجب عليك استخدامه على القيم الرقمية فقط. يُرجح استخدامه على المنصات التي تضخم عمليات المقابس أو الاتصال بين العمليات (IPC).
معمارية المعالج (CPU) لاستدعاء النظام. يمكن العثور على المعمارية بتشغيل 'uname -m'. إذا كنت لا تعرف معمارية جهازك ولكنك ترغب في استخدام جدول استدعاءات النظام 32 بت وجهازك يدعم 32 بت، فيمكنك أيضاً استخدام b32 للمعمارية. وينطبق الشيء نفسه على جدول استدعاءات النظام 64 بت، يمكنك استخدام b64. بهذه الطريقة، يمكنك كتابة قواعد مستقلة نوعاً ما عن المعمارية لأن نوع العائلة يُكتشف آلياً. ومع ذلك، يمكن أن تكون استدعاءات النظام خاصة بالمعمارية وما هو متاح على x86_64 قد لا يكون متاحاً على ppc. يجب أن يسبق توجيه المعمارية الخيار -S لكي يعرف auditctl أي جدول داخلي يستخدم للبحث عن أرقام استدعاءات النظام.
المعرف الأصلي الذي سجل به المستخدم الدخول. هو اختصار لـ audit uid. يُشار إليه أحياناً باسم loginuid. يمكن استخدام نص حساب المستخدم أو رقمه.
الرقم الرئيسي للجهاز
رقم الجهاز الثانوي
المسار الكامل للدليل المراد مراقبته. يضع هذا مراقبة متكررة على الدليل وشجرته الفرعية بأكملها. يمكن استخدامه فقط في قائمة الخروج. راجع "-w".
معرف المجموعة الفعال. قد يكون رقميًا أو اسم المجموعة.
معرف المستخدم الفعال. قد يكون رقميًا أو اسم حساب المستخدم.
المسار المطلق للتطبيق الذي يسري عليه هذا القانون أثناء التنفيذ. يدعم العاملين = و !=. لاحظ أنه يمكن استخدام هذا مرة واحدة فقط لكل قاعدة.
قيمة الخروج من استدعاء النظام. إذا كان رمز الخروج خطأً (errno)، يمكنك استخدام التمثيل النصي أيضًا.
معرف مجموعة نظام الملفات. قد يكون رقميًا أو اسم المجموعة.
نوع نظام الملفات. يستخدم هذا مع قائمة قواعد نظام الملفات. القيم الوحيدة المدعومة هي debugfs و tracefs.
معرف مستخدم نظام الملفات. قد يكون رقميًا أو اسم حساب المستخدم.
نوع الملف الهدف. يمكن أن يكون إما ملفًا، أو دليلًا، أو مقبسًا، أو رابطًا، أو حرفيًا، أو كتليًا، أو FIFO.
معرف المجموعة. قد يكون رقميًا أو اسم المجموعة.
رقم Inode
عين مفتاح تصفية لقاعدة تدقيق. مفتاح التصفية هو سلسلة نصية اختيارية يمكن أن يصل طولها إلى 31 بايت. يمكنه تحديد سجلات التدقيق الناتجة عن قاعدة بشكل فريد. الاستخدام النموذجي هو عندما يكون لديك عدة قواعد تلبي متطلبات أمنية معًا. يمكن البحث عن قيمة المفتاح باستخدام ausearch بحيث يمكنك العثور على نتائجه بغض النظر عن القاعدة التي أطلقت الحدث. يمكن استخدام المفتاح أيضًا عند حذف الكل (-D) وسرد القواعد (-l) لتحديد القواعد ذات المفتاح المحدد. قد يكون لديك أكثر من مفتاح واحد في قاعدة إذا رغبت في البحث عن الأحداث المسجلة بطرق متعددة أو إذا كان لديك مكون إضافي لـ auditd يستخدم مفتاحًا للمساعدة في تحليله.
نوع_الرسالة
يُستخدم هذا لمطابقة نوع سجل الحدث. يجب استخدامه فقط في قوائم الاستثناء أو قوائم تصفية المستخدم.
معرف_المستخدم_للكائن
معرف المستخدم (UID) الخاص بالكائن
معرف_المجموعة_للكائن
معرف المجموعة (GID) الخاص بالكائن
مستخدم_الكائن
مستخدم SE Linux الخاص بالموارد
دور_الكائن
دور SE Linux الخاص بالموارد
نوع_الكائن
نوع مورد SE Linux
مستوى_الكائن_الأدنى
مستوى مورد SE Linux الأدنى
مستوى_الكائن_الأعلى
مستوى مورد SE Linux الأعلى
المسار
أدخل مراقبة لكائن نظام الملفات عند المسار. لا يمكنك إدخال مراقبة إلى الدليل ذي المستوى الأعلى. تحظر النواة هذا. لا تدعم أحرف البدل أيضاً وستولد تحذيراً. تعمل المراقبات بتتبع العقدة الداخلية (inode) داخلياً. يمكن استخدام هذا في قائمة الخروج فقط.
صلاحية
مصفاة صلاحيات لعمليات الملفات. وفر نوع الوصول الذي ستستجيب له مراقبة نظام الملفات. r=قراءة، w=كتابة، x=تنفيذ، a=تغيير سمة. ليست هذه الصلاحيات صلاحيات الملفات القياسية، بل هي نوع استدعاء النظام (syscall) الذي يقوم بهذا النوع من العمليات. تحذف استدعاءات النظام للقراءة والكتابة من هذه المجموعة لأنها ستغمر السجلات. ولكن بالنسبة لعمليات القراءة أو الكتابة، تفحص علامات الفتح (open flags) لمعرفة الصلاحية المطلوبة. لا يمكن استخدام حقل الصلاحية (perm) إلا في قائمة الخروج. يمكنك استخدام هذا دون تحديد استدعاء نظام، وستختار النواة استدعاءات النظام التي تلبي صلاحيات الوصول المطلوبة. يتطلب هذا أيضاً توفير معلمة البنية (arch) قبل حقل الصلاحية (perm). وبهذه الطريقة، تستطيع النواة تحديد استدعاءات النظام المطلوبة بشكل أفضل. سيؤدي عدم توفير معلمة البنية (arch) إلى إخضاع جميع استدعاءات النظام للتدقيق. سيخفض هذا أداء النظام.

شخصية
رقم شخصية نظام التشغيل
معرف العملية
معرف العملية الأب
رقم عائلة العنوان كما هو موجود في /usr/include/bits/socket.h. على سبيل المثال، يكون IPv4 هو 2 وIPv6 هو 10.
معرف جلسة تسجيل دخول المستخدم
مستخدم SE Linux للبرنامج
دور برنامج SE Linux
نوع برنامج SE Linux
حساسية برنامج SE Linux
تصريح برنامج SE Linux
معرف المجموعة المحفوظ. انظر صفحة الدليل getresgid(2).
إذا كانت قيمة الخروج >= 0، فهذا صحيح/نعم، وإلا فهو خاطئ/لا. عند كتابة قاعدة، استخدم 1 للصحيح/نعم و 0 للخاطئ/لا.
معرف المستخدم المحفوظ. انظر صفحة الدليل getresuid(2).
معرف المستخدم. قد يكون رقميًا أو اسم حساب المستخدم.
اضبط مفتاح تصفية على قاعدة تدقيق. هذا مهمل عند استخدامه مع المراقبين. حوّل أي مراقبين إلى شكل استدعاء النظام للقواعد. يظل صالحًا للاستخدام عند حذف القواعد أو إدراجها.
يصف نوع وصول الإذن الذي سيشغله مراقب نظام الملفات. هذا مهمل. حوّل المراقبين إلى شكل استدعاء النظام.
يمكن استخدام أي اسم استدعاء نظام أو رقم. يمكن أيضًا استخدام الكلمة 'all'. إذا قام برنامج باستدعاء النظام المحدد، فابدأ سجل تدقيق. إذا أُعطيت قاعدة حقل ولم يُحدد استدعاء نظام، فستكون مبدئيًا لجميع استدعاءات النظام. يمكنك أيضًا تحديد استدعاءات نظام متعددة في نفس القاعدة باستخدام خيارات -S متعددة في نفس القاعدة. يؤدي ذلك إلى تحسين الأداء حيث تحتاج قواعد أقل إلى التقييم. بدلاً من ذلك، يمكنك تمرير قائمة بأسماء استدعاءات النظام مفصولة بفاصلات. إذا كنت تستخدم نظامًا ثنائي المعمارية، مثل x86_64، فيجب أن تدرك أن auditctl يأخذ النص ببساطة، ويبحث عنه في المعمارية الأصلية (في هذه الحالة b64)، ويرسل تلك القاعدة إلى النواة. إذا لم توجد توجيهات معمارية إضافية، فسوف تنطبق على كل من استدعاءات النظام 32 بت و 64 بت. قد يكون لهذا آثار غير مرغوب فيها لأنه لا يوجد ضمان بأن أي استدعاء نظام له نفس الرقم على واجهات 32 بت و 64 بت. من المرجح أن ترغب في التحكم في هذا وكتابة قاعدتين، واحدة بمعمارية تساوي b32 وواحدة بمعمارية b64 للتأكد من أن النواة تجد الأحداث التي تقصدها. انظر مناقشة حقل المعمارية لمزيد من المعلومات.
ضع مراقبة على المسار. إذا كان المسار ملفاً، فهو يكاد يكون مماثلاً لاستخدام الخيار -F path في قاعدة استدعاء نظام. إذا كانت المراقبة على دليل، فهي تكاد تكون مماثلة لاستخدام الخيار -F dir في قاعدة استدعاء نظام. صيغة -w لكتابة المراقبات هي للتوافق مع الإصدارات السابقة وأُهمِلت بسبب ضعف أداء النظام. حوّل المراقبات من هذا الشكل إلى الشكل المعتمد على استدعاءات النظام. الخيارات الوحيدة الصالحة عند استخدام مراقبة هي -p و -k.
أزل مراقبة لكائن نظام الملفات عند المسار. يجب أن تتطابق القاعدة تماماً. انظر نقاش -d لمزيد من المعلومات.

نصائح الأداء

تُقيّم قواعد استدعاءات النظام لكل استدعاء نظام لكل برنامج. إذا كان لديك 10 قواعد لاستدعاءات النظام، فسيتأخر كل برنامج على نظامك أثناء استدعاء نظام بينما يُقيّم نظام التدقيق كل قاعدة. كثرة قواعد استدعاءات النظام ستضر بالأداء. حاول دمج أكبر عدد ممكن منها كلما كانت الفلاتر والإجراءات والمفاتيح والحقول متطابقة. على سبيل المثال:

auditctl -a always,exit -F arch=b64 -S openat -F success=0
auditctl -a always,exit -F arch=b64 -S truncate -F success=0

يمكن إعادة كتابتها كقاعدة واحدة:

auditctl -a always,exit -F arch=b64 -S openat -S truncate -F success=0

حاول أيضًا استخدام تدقيق نظام الملفات حيثما أمكن عمليًا. يؤدي هذا إلى تحسين الأداء. على سبيل المثال، إذا كنت ترغب في التقاط جميع عمليات الفتح والقص الفاشلة كما هو موضح أعلاه، ولكنك مهتم فقط بالملفات الموجودة في /etc ولا تهتم بـ /usr أو /sbin، فمن الممكن استخدام هذه القاعدة:

auditctl -a always,exit -F arch=b64 -S openat,truncate -F dir=/etc -F success=0

يحقق هذا أداءً أعلى نظرًا لأن النواة لا تقيّمها في كل استدعاء نظام. تُعالَج بواسطة رمز تدقيق نظام الملفات ولا تُفحص إلا في استدعاءات النظام المتعلقة بنظام الملفات.

أمثلة

لرؤية جميع استدعاءات النظام التي يُجريها برنامج معين:

# حسب معرف العملية:
auditctl -a always,exit -S all -F pid=1005
# حسب مسار الملف التنفيذي
auditctl -a always,exit -S all -F exe=/usr/bin/ls

لرؤية الملفات التي فُتحت بواسطة مستخدم معين:

auditctl -a always,exit -S openat -F auid=510

لرؤية استدعاءات openat غير الناجحة:

auditctl -a always,exit -S openat -F success=0

لمراقبة ملف بحثًا عن التغييرات (طريقتان للتعبير):

auditctl -w /etc/shadow -p wa # Note this slows the system
auditctl -a always,exit -F arch=b64 -F path=/etc/shadow -F perm=wa

لمراقبة دليل بشكل متكرر بحثًا عن التغييرات (طريقتان للتعبير):

auditctl -w /etc/ -p wa # Note this slows the system
auditctl -a always,exit -F arch=b64 -F dir=/etc/ -F perm=wa

لمعرفة ما إذا كان المسؤول يصل إلى ملفات مستخدمين آخرين:

auditctl -a always,exit -F dir=/home/ -F uid=0 -C auid!=obj_uid

هذا مثال لملف قواعد:

# Remove all existing rules
-D
# Never record sudo invocations
-A exclude,always -F exe=/usr/bin/sudo

معطل بشكل مبدئي

في العديد من الأنظمة، يُكوَّن auditd لتثبيت قاعدة -a never,task بشكل مبدئي. تتسبب هذه القاعدة في تخطي كل عملية جديدة لمعالجة قواعد التدقيق. يُفعل ذلك عادة لتجنب حمل أداء صغير يفرضه تدقيق نداءات النظام. إذا أردت استخدام auditd، فأنت بحاجة إلى إزالة تلك القاعدة بحذف 10-no-audit.rules وإضافة 10-base-config.rules إلى دليل قواعد التدقيق.

إذا حددت قواعد تدقيق لا تتطابق عندما ينبغي لها، فتحقق من auditctl -l للتأكد من عدم وجود قاعدة never,task هناك.

الملفات

/etc/audit/audit.rules /etc/audit/audit-stop.rules

انظر أيضًا

audit.rules(7)، ausearch(8)، aureport(8)، auditd(8).

المؤلف

Steve Grubb

ترجمة

تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.

سبتمبر 2023 ريد هات