إدارة المستخدمين والمجموعات على Red Hat Enterprise Linux
إدارة المستخدمين، إدارة المجموعات، Linux، RHEL، صلاحيات الوصول، نظام الملفات، أوامر المستخدم، أمن النظام، SELinux
تُعد إدارة المستخدمين والمجموعات من المهام الجوهرية لأي مسؤول نظام يعمل على توزيعة Red Hat Enterprise Linux (RHEL)، حيث تشكل حجر الأساس لضبط صلاحيات الوصول، وتأمين النظام، وتوزيع المهام والصلاحيات على مستخدمين متعددين. في بيئات الإنتاج والبنية التحتية الحساسة، يصبح التحكم الصارم والمنهجي في الحسابات والمجموعات ضرورياً لتقليل المخاطر الأمنية، وضمان الالتزام بمعايير الأمان المؤسسي والامتثال التنظيمي.
يتناول هذا المقال بشكل موسع وعميق جميع الجوانب المتعلقة بإدارة المستخدمين والمجموعات على RHEL، بما في ذلك المفاهيم الأساسية، الأدوات والأوامر المستخدمة، الهيكل البنيوي لملفات المستخدم، آليات التحكم في الوصول، إدارة كلمات المرور، التحقق من الهوية، وسياسات الأمان المرتبطة بذلك.
المفاهيم الأساسية: المستخدم والمجموعة في Linux
في نظام Linux، يمثل “المستخدم” كياناً رقمياً (Account) يستخدم لتسجيل الدخول إلى النظام والعمل عليه، ويُعطى كل مستخدم معرّفاً فريداً يُعرف باسم UID (User ID). أما “المجموعة” فهي تجمّع للمستخدمين يسمح بتطبيق سياسات وصول وصلاحيات مشتركة على عدد منهم دفعة واحدة، وتُعرّف كل مجموعة بواسطة GID (Group ID).
يتيح هذا النموذج فصل الصلاحيات وتحديد مستويات وصول مختلفة للملفات والخدمات، استناداً إلى العلاقة بين المستخدم والمجموعة.
الملفات الأساسية في إدارة المستخدمين والمجموعات
نظام Red Hat Enterprise Linux يعتمد على مجموعة من الملفات النصية لتخزين بيانات المستخدمين والمجموعات. معرفة هذه الملفات وطرق التعامل معها أمر أساسي لأي مدير نظام:
| الملف | الوظيفة |
|---|---|
/etc/passwd |
يحتوي على معلومات المستخدمين (مثل الاسم، UID، GID، shell، home). |
/etc/shadow |
يحتوي على كلمات المرور المشفرة وتفاصيل حول صلاحيتها وتواريخ انتهائها. |
/etc/group |
يحتوي على معلومات المجموعات (اسم المجموعة، GID، الأعضاء). |
/etc/gshadow |
يخزن كلمات مرور المجموعات (إذا لزم الأمر) ومعلومات أمن إضافية. |
/etc/login.defs |
يحتوي على إعدادات افتراضية لإدارة المستخدمين، مثل الحد الأدنى لكلمة السر. |
/etc/default/useradd |
الإعدادات الافتراضية عند استخدام الأمر useradd. |
إنشاء وإدارة المستخدمين
إنشاء مستخدم جديد
لإنشاء مستخدم جديد، يتم استخدام الأمر useradd:
bashsudo useradd -m -s /bin/bash utilisateur1
-
-m: لإنشاء مجلد المنزل للمستخدم. -
-s: لتحديد القشرة (shell) الافتراضية.
بعد الإنشاء، يجب تعيين كلمة مرور للمستخدم:
bashsudo passwd utilisateur1
حذف مستخدم
bashsudo userdel -r utilisateur1
-
-r: لحذف مجلد المنزل وملفاته المرتبطة.
تعديل مستخدم
bashsudo usermod -s /bin/zsh utilisateur1
-
usermod: لتعديل معلومات مستخدم موجود مسبقاً، مثل shell، المجموعة الأولية، أو المجموعات الثانوية.
إدارة المجموعات
إنشاء مجموعة
bashsudo groupadd groupe1
حذف مجموعة
bashsudo groupdel groupe1
إضافة مستخدم إلى مجموعة
bashsudo usermod -aG groupe1 utilisateur1
-
-aG: لإضافة المستخدم إلى مجموعة إضافية دون إزالة المجموعات السابقة.
رؤية المجموعات التي ينتمي لها مستخدم
bashgroups utilisateur1
أو
bashid utilisateur1
التحكم في صلاحيات الوصول باستخدام نظام الملفات
نظام Linux يستخدم صلاحيات تقليدية للتحكم في الملفات، وتقسم هذه الصلاحيات إلى ثلاث فئات:
-
مالك الملف (User)
-
المجموعة المالكة (Group)
-
الآخرون (Others)
يمكن تعديل الصلاحيات باستخدام أوامر chmod, chown, و chgrp.
مثال:
bashchmod 750 fichier.txt
chown utilisateur1 fichier.txt
chgrp groupe1 fichier.txt
هذا يعطي:
-
صلاحيات كاملة للمالك (7)
-
صلاحيات قراءة وتنفيذ للمجموعة (5)
-
لا صلاحيات للآخرين (0)
التحكم في كلمات المرور وأمان الحسابات
تُستخدم مجموعة أدوات لتعزيز أمان حسابات المستخدمين، تشمل:
ضبط صلاحية كلمة المرور
bashchage -M 90 utilisateur1
-
-M: الحد الأقصى لعمر كلمة المرور بـ 90 يوماً.
منع مستخدم من تسجيل الدخول
bashusermod -L utilisateur1
لفك القفل:
bashusermod -U utilisateur1
نظام PAM – Pluggable Authentication Modules
نظام RHEL يستخدم PAM كطبقة وسطية لإدارة المصادقة. يتكون PAM من ملفات ضبط موجودة في /etc/pam.d/، حيث يمكن التحكم بسياسات كلمة المرور، وعدد محاولات الدخول، وآليات التوثيق الثنائية.
مثال على سياسات كلمة المرور في /etc/pam.d/system-auth:
textpassword requisite pam_pwquality.so retry=3 minlen=12
هذا السطر يفرض سياسة كلمة مرور بطول أدنى 12 محرفاً، مع ثلاث محاولات لإدخالها.
استخدام الأوامر الرسومية وشبه الرسومية
بالرغم من أن العديد من مديري النظام يعتمدون على سطر الأوامر، فإن RHEL توفر أدوات رسومية مثل cockpit لإدارة المستخدمين والمجموعات بسهولة عبر واجهة ويب، حيث يمكن:
-
إنشاء وحذف المستخدمين.
-
تعيين الصلاحيات.
-
مراقبة نشاط المستخدمين.
لتفعيل Cockpit:
bashsudo systemctl enable --now cockpit.socket
ثم زيارة: https://localhost:9090
إعدادات أمان متقدمة باستخدام SELinux
SELinux (Security-Enhanced Linux) يمثل طبقة أمان إضافية في RHEL، ويوفر تحكماً دقيقاً في ما يمكن للمستخدمين والخدمات فعله، ويتجاوز نموذج الصلاحيات التقليدي.
يجب فهم سياسات SELinux وفئاتها الأساسية:
-
Targeted: يفرض السياسات فقط على بعض الخدمات.
-
Strict: يطبق سياسات على كل شيء.
-
Permissive: يسجل الانتهاكات دون منعها.
يستخدم الأمر semanage لضبط السياسات الخاصة بالمستخدمين:
bashsudo semanage login -a -s user_u utilisateur1
ويمكن عرض السياسات المطبقة عبر:
bashsemanage login -l
تقييد الوصول باستخدام sudo
يتم التحكم في إعطاء صلاحيات الجذر للمستخدمين عبر نظام sudo، من خلال تحرير ملف /etc/sudoers أو إضافة ملفات داخل /etc/sudoers.d/.
مثال لإعطاء صلاحيات محددة:
bashutilisateur1 ALL=(ALL) /usr/bin/systemctl
يُنصح باستخدام الأمر visudo لتحرير هذا الملف لتفادي الأخطاء.
استخدام ACLs (Access Control Lists) في إدارة الصلاحيات الدقيقة
ACLs تتيح ضبط صلاحيات وصول تفصيلية على مستوى المستخدم والمجموعة والملكية الفرعية، دون الاعتماد فقط على النموذج التقليدي.
تفعيل ACL على نظام الملفات:
bashmount -o remount,acl /home
ضبط ACL لملف:
bashsetfacl -m u:utilisateur1:rw fichier.txt getfacl fichier.txt
مراقبة نشاط المستخدمين
أداة auditd توفر آلية لتسجيل النشاطات المهمة للمستخدمين، خصوصاً تلك المرتبطة بتغييرات النظام ومحاولات الدخول.
تُستخدم لتحديد السجلات الأمنية في /var/log/audit/audit.log.
مثال على مراقبة ملف:
bashauditctl -w /etc/passwd -p wa
الجدول الملخص لأهم الأوامر
| الغرض | الأمر |
|---|---|
| إنشاء مستخدم | useradd -m utilisateur |
| حذف مستخدم | userdel -r utilisateur |
| تعيين كلمة مرور | passwd utilisateur |
| إنشاء مجموعة | groupadd groupe |
| إضافة مستخدم إلى مجموعة | usermod -aG groupe utilisateur |
| تغيير صلاحيات ملف | chmod 755 fichier |
| تغيير مالك الملف | chown utilisateur fichier |
| تغيير مجموعة الملف | chgrp groupe fichier |
| فحص مجموعات المستخدم | id utilisateur |
| تفعيل Cockpit | systemctl enable --now cockpit.socket |
| ضبط سياسة كلمة المرور | chage -M 90 utilisateur |
| فرض سياسات SELinux على مستخدم | semanage login -a -s user_u utilisateur |
الخلاصة
تشكل إدارة المستخدمين والمجموعات في Red Hat Enterprise Linux عنصراً أساسياً في البنية التحتية لأي نظام تشغيل معتمد في المؤسسات والمراكز الحساسة. من خلال الأدوات المتقدمة مثل PAM، SELinux، ACLs، وقواعد sudo، يمكن تحقيق تحكم دقيق وآمن في الوصول وإدارة الأدوار والصلاحيات. تعزيز المعرفة بهذه الأدوات وتطبيق سياسات صارمة في إنشاء الحسابات، ضبط كلمات المرور، وتوزيع الصلاحيات من شأنه رفع مستوى الأمان العام وتقليل المخاطر في بيئة تشغيل RHEL.
المراجع:
-
Red Hat Documentation: Managing Users and Groups in RHEL — https://access.redhat.com
-
Linux Foundation: Introduction to Linux System Administration

