المختبر 5.1 - إدارة المستخدمين
الأهداف
في نهاية هذا المختبر، ستكون قادرًا على:
- إنشاء مستخدمين باستخدام useradd
- تعديل مستخدمين باستخدام usermod
- حذف مستخدمين باستخدام userdel
- إدارة كلمات المرور
- فهم ملفات النظام (/etc/passwd, /etc/shadow)
المتطلبات الأساسية
- تثبيت أوبونتو 24.04
- وصول sudo/root
- فتح الطرفية
التمرين 1: إنشاء المستخدمين
الخطوة 1: useradd الأساسي
# إنشاء مستخدم بسيط
sudo useradd testuser1
# التحقق
id testuser1
cat /etc/passwd | grep testuser1
الخطوة 2: useradd مع الخيارات
# إنشاء مع دليل home
sudo useradd -m testuser2
# إنشاء مع shell محدد
sudo useradd -m -s /bin/bash testuser3
# إنشاء مع مجموعة أساسية
sudo useradd -m -g users testuser4
# إنشاء مع UID محدد
sudo useradd -m -u 1500 testuser5
الخطوة 3: إنشاء باستخدام adduser (أوبونتو)
# adduser أكثر تفاعلية (موصى به على أوبونتو)
sudo adduser testuser6
# اتبع المطالبات:
# - كلمة المرور
# - المعلومات (اختياري)
التمرين 2: تعديل المستخدمين
الخطوة 1: usermod الأساسي
# تغيير الـ shell
sudo usermod -s /bin/zsh testuser1
# التحقق
grep testuser1 /etc/passwd
الخطوة 2: تعديل دليل Home
# تغيير دليل home
sudo usermod -d /home/nouveau-home testuser1
# نقل المحتوى
sudo usermod -m -d /home/nouveau-home testuser1
الخطوة 3: الإضافة إلى المجموعات
# الإضافة إلى مجموعة ثانوية
sudo usermod -aG sudo testuser1
# التحقق
groups testuser1
id testuser1
الخطوة 4: قفل/فتح
# قفل حساب
sudo usermod -L testuser1
# التحقق
sudo passwd -S testuser1
# فتح
sudo usermod -U testuser1
التمرين 3: كلمات المرور
الخطوة 1: تعيين كلمة مرور
# تعيين كلمة المرور
sudo passwd testuser1
# تعيين بدون مطالبة
echo "testuser1:motdepasse" | sudo chpasswd
الخطوة 2: انتهاء صلاحية كلمة المرور
# فرض التغيير عند تسجيل الدخول التالي
sudo passwd -e testuser1
# تعيين انتهاء الصلاحية
sudo chage -M 90 testuser1 # تنتهي في 90 يومًا
# عرض المعلومات
sudo chage -l testuser1
الخطوة 3: سياسة كلمات المرور
# عرض التكوين
cat /etc/pam.d/common-password
# تثبيت libpam-pwquality لسياسة صارمة
sudo apt install libpam-pwquality
# التكوين: /etc/security/pwquality.conf
التمرين 4: ملفات النظام
الخطوة 1: /etc/passwd
# عرض الملف
cat /etc/passwd
# التنسيق: username:x:UID:GID:comment:home:shell
# مثال: testuser1:x:1001:1001::/home/testuser1:/bin/bash
# التحليل
awk -F: '{print $1, $3, $7}' /etc/passwd
الخطوة 2: /etc/shadow
# عرض (يتطلب sudo)
sudo cat /etc/shadow
# التنسيق: username:password_hash:last_change:min:max:warn:inactive:expire
# عرض معلومات مستخدم
sudo grep testuser1 /etc/shadow
الخطوة 3: /etc/group
# عرض المجموعات
cat /etc/group
# التنسيق: groupname:x:GID:members
# عرض مجموعات مستخدم
groups testuser1
id testuser1
التمرين 5: حذف المستخدمين
الخطوة 1: userdel الأساسي
# حذف مستخدم (يحتفظ بالـ home)
sudo userdel testuser1
# التحقق
id testuser1 # يجب ألا يكون موجودًا
ls -la /home/ # الـ Home لا يزال موجودًا
الخطوة 2: حذف مع Home
# حذف مستخدم وhome
sudo userdel -r testuser2
# التحقق
ls -la /home/ # الـ Home محذوف
الخطوة 3: حذف باستخدام deluser (أوبونتو)
# deluser أكثر أمانًا (أوبونتو)
sudo deluser testuser3
# حذف مع home
sudo deluser --remove-home testuser4
التمرين 6: ممارسة كاملة
الخطوة 1: إنشاء مستخدم مطور
# إنشاء مع جميع الخيارات
sudo useradd -m -s /bin/bash -G sudo,developers -c "Développeur" devuser
# تعيين كلمة مرور
sudo passwd devuser
# التحقق
id devuser
groups devuser
الخطوة 2: سكريبت الإنشاء
# سكريبت لإنشاء مستخدم
cat > create-user.sh << 'EOF'
#!/bin/bash
USERNAME=$1
FULLNAME=$2
GROUPS=$3
if [ -z "$USERNAME" ]; then
echo "Usage: $0 username [fullname] [groups]"
exit 1
fi
# إنشاء مستخدم
sudo useradd -m -s /bin/bash -c "$FULLNAME" "$USERNAME"
# إضافة إلى المجموعات إذا تم تحديدها
if [ -n "$GROUPS" ]; then
sudo usermod -aG "$GROUPS" "$USERNAME"
fi
# تعيين كلمة مرور
sudo passwd "$USERNAME"
echo "Utilisateur $USERNAME créé"
id "$USERNAME"
EOF
chmod +x create-user.sh
# استخدام
./create-user.sh "newuser" "Nouvel Utilisateur" "sudo,users"
التحقق
قائمة التحقق
تحقق من أنك تستطيع:
- إنشاء مستخدمين (useradd, adduser)
- تعديل مستخدمين (usermod)
- إدارة كلمات المرور (passwd, chage)
- فهم /etc/passwd و /etc/shadow
- حذف مستخدمين (userdel, deluser)
- إدارة مجموعات المستخدمين
أسئلة للتفكير
-
ما الفرق بين useradd و adduser؟
- useradd: مستوى منخفض، أقل تفاعلية
- adduser: مستوى عالي، أكثر سهولة (أوبونتو)
-
لماذا /etc/shadow منفصل عن /etc/passwd؟
- الأمان: /etc/passwd يمكن قراءته من قبل الجميع
- /etc/shadow محمي (كلمات المرور مشفرة)
-
متى تستخدم userdel -r؟
- عندما تريد حذف المستخدم بالكامل
- انتبه: يحذف أيضًا دليل home
الخطوات التالية
- المختبر 5.2: إدارة المجموعات
- المختبر 5.3: الأذونات المتقدمة
- الفصل 5.1: إدارة المستخدمين
تم إنشاء المختبر في: ديسمبر 2024 - تم اختباره على أوبونتو 24.04