إدارة كلمات المرور في نظام لينكس باستخدام أوامر passwd و adduser
تُعد إدارة كلمات المرور من أهم الجوانب الأمنية في أي نظام تشغيل، ونظام لينكس يُوفّر أدوات قوية ومرنة لإدارة حسابات المستخدمين وكلمات المرور الخاصة بهم. من بين هذه الأدوات، يأخذ الأمران passwd و adduser مكانة مركزية، حيث يُستخدمان لإنشاء حسابات المستخدمين وضبط كلمات المرور بشكل آمن وفعّال. يهدف هذا المقال إلى استعراض شامل ومفصل لكيفية استخدام هذين الأمرين، مع توضيح آليات عملهما وأفضل الممارسات المتعلقة بإدارة كلمات المرور في بيئة لينكس.
1. مقدمة حول إدارة المستخدمين وكلمات المرور في لينكس
يُبنى نظام لينكس على فلسفة إدارة المستخدمين بشكل دقيق لضمان الأمن وحماية البيانات. كل مستخدم في النظام مرتبط بحساب يحتوي على اسم مستخدم وكلمة مرور بالإضافة إلى صلاحيات وامتيازات محددة. لضمان سلامة النظام، يجب أن تُدار كلمات المرور بحرص لتقليل مخاطر الاختراق.
هناك ملفات نظامية رئيسية تُستخدم في تخزين معلومات الحسابات، منها:
-
/etc/passwd: يحتوي على بيانات المستخدمين الأساسية (اسم المستخدم، معرف المستخدم UID، معرف المجموعة GID، معلومات أخرى). -
/etc/shadow: يحتوي على كلمات المرور المشفرة والمعلومات المتعلقة بانتهاء صلاحية كلمات المرور.
الأدوات passwd و adduser تتيح للمسؤولين التحكم الكامل في إنشاء وتعديل وإدارة هذه الحسابات.
2. الأمر passwd: الوظيفة والاستخدامات
2.1 التعريف
الأمر passwd هو الأداة الأساسية في لينكس لتغيير أو ضبط كلمة مرور مستخدم. يُستخدم من قبل المستخدمين لتغيير كلمات المرور الخاصة بهم، أو من قبل مدراء النظام لتعيين كلمات مرور للمستخدمين الآخرين.
2.2 آلية العمل
عند تنفيذ الأمر passwd، يطلب النظام إدخال كلمة المرور الجديدة، ويقوم بعدها بتخزينها في ملف /etc/shadow بصيغة مشفرة باستخدام خوارزمية قوية مثل SHA-512، ما يعزز من أمان البيانات.
2.3 الاستخدامات الأساسية
-
تغيير كلمة المرور للمستخدم الحالي:
عند كتابة الأمر بدون معطيات:
nginxpasswdيطلب النظام كلمة المرور القديمة لتأكيد هوية المستخدم، ثم كلمة المرور الجديدة مرتين للتحقق.
-
تغيير كلمة المرور لمستخدم آخر (كمسؤول):
بتنفيذ الأمر مع اسم المستخدم، كالتالي:
nginxsudo passwd usernameيسمح لمسؤول النظام بتعيين أو إعادة تعيين كلمة مرور المستخدم المحدد دون الحاجة لمعرفة كلمة المرور القديمة.
2.4 خيارات مهمة للأمر passwd
-
-l: لقفل حساب المستخدم وتعطيل كلمة المرور (Lock the user account). -
-u: لفتح الحساب بعد قفله (Unlock the user account). -
-d: حذف كلمة المرور، ما يجعل الحساب بدون كلمة مرور (غير آمن غالبًا). -
--expire: إجبار المستخدم على تغيير كلمة المرور عند أول تسجيل دخول بعد التعيين.
3. الأمر adduser: الوظيفة والاستخدامات
3.1 التعريف
الأمر adduser هو أداة تُستخدم لإنشاء حساب مستخدم جديد في النظام بشكل مبسط ومرن. يقوم هذا الأمر بإضافة المستخدم وإعداد المجلد الشخصي (Home Directory) وضبط الصلاحيات الافتراضية، إضافة إلى إمكانية تعيين كلمة المرور.
3.2 الفرق بين adduser و useradd
-
adduserهو سكريبت عالي المستوى يعتمد علىuseraddلكنه يقدم واجهة أكثر تفاعلية وسهولة في الاستخدام. -
useraddهو أمر منخفض المستوى يُستخدم لإنشاء حساب مستخدم لكن يتطلب معرفة أكبر لتحديد الخيارات يدويًا.
3.3 استخدام الأمر adduser لإنشاء مستخدم جديد
عند كتابة:
nginxsudo adduser username
يقوم النظام ببدء سلسلة من الأسئلة التفاعلية، منها:
-
تعيين كلمة المرور للمستخدم.
-
إدخال معلومات اختيارية مثل الاسم الكامل، رقم الهاتف، إلخ.
-
إنشاء مجلد المستخدم الشخصي وإعداد الصلاحيات.
3.4 خيارات مهمة في adduser
عادة، adduser لا يحتاج إلى خيارات كثيرة لأنه يقوم بالكثير من الإعدادات بشكل تلقائي، لكن يمكن تعديل بعض الخيارات عبر ملفات التهيئة مثل /etc/adduser.conf.
4. خطوات عملية لإدارة كلمات المرور باستخدام passwd و adduser
4.1 إنشاء مستخدم جديد وضبط كلمة المرور
-
تنفيذ الأمر:
nginxsudo adduser newuser -
إدخال كلمة المرور عند الطلب.
-
إدخال المعلومات الإضافية (اختياري).
-
يتم إنشاء مجلد المستخدم وتعيين صلاحياته تلقائيًا.
4.2 تغيير كلمة مرور مستخدم موجود
-
كمستخدم عادي:
nginxpasswd -
كمسؤول لمستخدم آخر:
nginxsudo passwd existinguser
4.3 قفل حساب مستخدم مؤقتًا
يمكن قفل حساب مستخدم لتعطيل تسجيل الدخول مؤقتًا:
nginxsudo passwd -l username
ولفتح القفل:
nginxsudo passwd -u username
4.4 إجبار المستخدم على تغيير كلمة المرور
لزيادة الأمان، يمكن إجبار المستخدم على تغيير كلمة المرور عند أول تسجيل دخول بعد إعادة التعيين:
csssudo passwd --expire username
5. إدارة سياسات كلمات المرور في لينكس
إلى جانب استخدام passwd و adduser، يمكن للمسؤول التحكم في سياسات كلمات المرور عبر ملفات وإعدادات أخرى، منها:
-
ملف
/etc/login.defs: يحتوي على إعدادات عامة لكلمات المرور مثل الحد الأدنى لطول كلمة المرور، مدة صلاحيتها، وفترة السماح بتغييرها. -
أداة
chage: تُستخدم لتعديل سياسات صلاحية كلمة المرور لمستخدم معين (مدة الصلاحية، تاريخ انتهاء الصلاحية، إلخ). -
مكتبات PAM (Pluggable Authentication Modules): توفر نظام مرن للتحقق من كلمات المرور وفرض سياسات معقدة مثل تعقيد كلمة المرور.
6. نصائح أمان في إدارة كلمات المرور على لينكس
-
تعيين كلمات مرور قوية: استخدام تركيبات معقدة من الأحرف الكبيرة والصغيرة، الأرقام، والرموز.
-
تغيير كلمات المرور بشكل دوري: لتقليل خطر الاختراق.
-
قفل الحسابات عند عدم الحاجة: بدلاً من حذفها لضمان حفظ بيانات المستخدم في حالة الحاجة إليها لاحقًا.
-
استخدام أدوات مراقبة ومراجعة: لمتابعة محاولات الدخول الفاشلة والأنشطة المشبوهة.
-
الاحتفاظ بنسخ احتياطية: من ملفات النظام المتعلقة بالحسابات (
/etc/passwd،/etc/shadow) لضمان استعادة سريعة في حالات الطوارئ.
7. مقارنة بين passwd و adduser من حيث الدور
| الوظيفة | الأمر passwd |
الأمر adduser |
|---|---|---|
| تغيير أو تعيين كلمة المرور | أساسي ومباشر | يتم خلال التهيئة الأولية فقط |
| إنشاء مستخدم جديد | لا يقوم بذلك | يقوم بإنشاء حساب المستخدم |
| إعداد المجلد الشخصي | لا | ينشئ المجلد الشخصي تلقائيًا |
| تعديل معلومات المستخدم | لا | يوفر إدخال معلومات اختيارية عند الإنشاء |
| قفل/فتح الحساب | يدعم هذه الوظيفة (-l و -u) |
لا يدعم بشكل مباشر |
8. أمثلة عملية
8.1 إنشاء مستخدم جديد مع كلمة مرور
nginxsudo adduser ahmed
يُطلب إدخال كلمة المرور، ويُنشأ مجلد /home/ahmed تلقائيًا.
8.2 تغيير كلمة مرور المستخدم
nginxsudo passwd ahmed
8.3 قفل حساب المستخدم أحمد
nginxsudo passwd -l ahmed
8.4 فتح حساب المستخدم أحمد
nginxsudo passwd -u ahmed
9. الخلاصة
إدارة كلمات المرور في لينكس هي من الركائز الأساسية لأمن النظام، والأمران passwd و adduser يشكلان الأدوات الأساسية التي يحتاجها أي مسؤول نظام لضبط حسابات المستخدمين بكفاءة. بينما يقوم adduser بإنشاء المستخدمين وإعداد بيئتهم بشكل متكامل، يأتي دور passwd لتغيير وضبط كلمات المرور وصلاحيات الوصول. استخدام هذين الأمرين بشكل صحيح، مع تبني سياسات أمان صارمة، يضمن بيئة تشغيل مستقرة وآمنة.
المصادر والمراجع
-
Linux Manual Pages: صفحات الدليل الرسمية للأوامر
passwdوadduserعبر الأمرman passwdوman adduser. -
Linux Documentation Project: دليل إدارة المستخدمين وكلمات المرور في لينكس، متاح على الرابط: https://tldp.org/HOWTO/User-Management-HOWTO/index.html

