في هذه المقالة، سنستكشف أهمية تنظيم مستخدمي لينكس بشكل صحيح. سنشرح صلاحيات الوصول، بدءًا من كيفية إنشاء المستخدمين وتكوينهم، وصولًا إلى كيفية منحهم حق الوصول إلى ملفات ومجلدات محددة. سنناقش أيضًا بعض أدوات الأمان المهمة، مثل sudo وSELinux، التي تساعد في حماية النظام من الأنشطة غير المرغوب فيها.
أهمية إدارة المستخدمين وحقوق الوصول في لينكس
في عالم لينكس، تلعب إدارة المستخدمين وحقوق الوصول دورًا محوريًا. تخيّل لينكس كشقة كبيرة، حيث كل مستخدم مستأجر، وكل ملف غرفة. إدارةالمستخدم يشبه تعيين مفتاح فريد لكل مستأجر، بينما حقوق الوصول هذا ما يمكنهم فعله في غرفهم.
عند إنشاء مستخدم، يتم تعيين اسم ومعرف فريد له (UID)، مثل مفتاح شخصي للشقة. يمتلك المستخدم أيضًا a رأس التجميع، وتوحيدهم مع المستأجرين الآخرين. المجموعة هو مثل النادي حيث يتقاسم الأعضاء الامتيازات المشتركة.
حقوق الوصول إلى الملفات تنقسم إلى ثلاث فئات: المالك (المستخدم), رأس التجميعو وغيرهالكل مفتاح (مستخدم) صلاحيات فريدة للقراءة والكتابة والتنفيذ لكل فئة. على سبيل المثال، قد يمتلك مالك الملف صلاحيات القراءة والكتابة، بينما تمتلك المجموعة صلاحيات القراءة فقط، بينما لا يمتلك الآخرون أي صلاحيات.
تستحق سياسات الأمن مثل سودو و SELinux، المستخدمة في أنظمة Linux. سودو أمر خاص يسمح للمستخدمين العاديين باستخدام صلاحيات المستخدم الجذر (الجذر) مؤقتًا لأداء مهام محددة متاحة عادةً للمسؤولين فقط. يساعد هذا على منع الأخطاء العرضية أو إساءة استخدام صلاحيات المستخدم الجذر. عند استخدام سودوعادةً ما يُطلب من المستخدم إدخال كلمة المرور لتأكيد هويته. بعد ذلك، يمكنه تنفيذ الأوامر بصلاحيات المستخدم الجذر (الجذر) وفقًا للقواعد المحددة في sudoers ملف.
SELinux طبقة أمان إضافية لنظام التشغيل لينكس. تراقب هذه الطبقة البرامج والملفات التي يمكن استخدامها في النظام، وتحد من الوصول إليها لمنع الاختراقات والهجمات. هذا يزيد من أمان الخادم من خلال منع محاولات الاختراق أو الأعمال الخبيثة.
إنشاء المستخدمين وإدارتهم
كيفية إنشاء مستخدم في لينكس
يتم إنشاء مستخدمي Linux عادةً باستخدام useradd على سبيل المثال، لإنشاء مستخدم باسم "اسم المستخدم"، أدخل:
useradd username
كيفية تعيين كلمة مرور مستخدم لينكس
بعد إنشاء مستخدم، لا يُحمَى حسابه بكلمة مرور. لتعيين كلمة مرور لمستخدم جديد، استخدم باسود أمر:
passwd username
حيث أن اسم المستخدم هو اسم المستخدم الذي يتم تعيين كلمة المرور له.
كيفية عرض قائمة المستخدمين في لينكس
لعرض قائمة المستخدمين في Linux باستخدام أمر واحد في المحطة الطرفية، يمكنك استخدام مختون أمر:
cut -d: -f1 /etc/passwd
يقوم هذا الأمر بقراءة محتويات / الخ / باسود ملف يحتوي على معلومات حول جميع المستخدمين.
للحصول على معلومات حول مستخدم معين، يمكنك استخدام الأمر:
id username
سيؤدي هذا إلى عرض بيانات المستخدم UID, دائرة المخابرات العامةو المجموعات.
حذف مستخدم لينكس
لحذف مستخدم، استخدم com.userdel أمر:
userdel username
مع ذلك، لا يحذف هذا الأمر الملفات الموجودة في الدليل الرئيسي للمستخدم. لإزالتها، يمكنك استخدام -r الخيار:
userdel -r username
سيؤدي هذا إلى حذف اسم المستخدم بالإضافة إلى دليل المنزل الخاص به وجميع الملفات الموجودة بداخله.
تعديل مستخدم لينكس
لتعديل المعلومات حول المستخدم، استخدم usermod الأمر. تستخدم الأداة الصيغة التالية:
usermod argument user
يتم عرض قائمة كاملة بالحجج المحتملة في تعليمات الأداة المساعدة:
على سبيل المثال، لتغيير دليل المستخدم الرئيسي، يمكنك استخدام الأمر:
usermod -d /new/path/to/directory username
إنشاء مجموعات المستخدمين وإدارتها في Linux
تتيح مجموعات المستخدمين في لينكس للمسؤولين تجميع المستخدمين ذوي صلاحيات وصول متشابهة. يُسهّل هذا إدارة صلاحيات الوصول ويُعزز أمان النظام من خلال تمكين تحديد الصلاحيات على مستوى المجموعة، بدلاً من تحديدها لكل مستخدم على حدة. على سبيل المثال، سنتناول مجموعة المطورين مع المستخدم المسؤول.
كيفية إنشاء مجموعة مستخدمين في لينكس
لإنشاء مجموعة جديدة، استخدم المجموعة الأمر باسم المجموعة الجديدة:
sudo groupadd group_name
في مثالنا، سيبدو الأمر كما يلي:
sudo groupadd developers
كيفية حذف مجموعة مستخدمين في لينكس
لحذف مجموعة، استخدم جروبديل أمر:
sudo groupdel group_name
وبالتالي فإن الأمر:
sudo groupdel developers
سيتم حذف المجموعة المسماة المطورين.
إضافة مستخدمين إلى مجموعة
لإضافة مستخدم إلى مجموعة محددة، استخدم usermod أمر:
sudo usermod -aG group_name user_name
فمثلا:
sudo usermod -aG developers admin
سيؤدي هذا الأمر إلى إضافة المستخدم المسمى مشرف إلى المطورين المجموعة.
إزالة المستخدمين من مجموعة
لإزالة مستخدم من مجموعة، استخدم deluser أمر:
sudo deluser user_name group_name
الأمر لإزالة المستخدم مشرف من المطورين المجموعة:
sudo deluser admin developers
عرض قوائم المجموعات في Linux
لعرض قائمة بجميع المجموعات في النظام، استخدم قط الأمر مع / etc / group ملف:
cat /etc/group
سيؤدي هذا الأمر إلى عرض قائمة بجميع المجموعات الموجودة في النظام.
التحقق من عضوية مجموعة المستخدمين
بعد تنفيذ الإجراءات، يمكنك التحقق من المجموعات التي ينتمي إليها المستخدم باستخدام أمر المجموعات:
groups user_name
بهذا نكون قد استكشفنا أساسيات إدارة مجموعات المستخدمين في لينكس. والآن، لننتقل إلى المرحلة التالية - دراسة منح صلاحيات الوصول إلى الملفات والمجلدات. تتيح هذه العملية تحديد الإجراءات التي يمكن للمستخدمين أو المجموعات تنفيذها على ملفات ومجلدات محددة، مما يضمن إدارة أمنية فعّالة والوصول إلى موارد النظام.
تعيين حقوق الوصول إلى الملفات والدلائل
التمثيل الرمزي لحقوق الوصول
كما اكتشفنا بالفعل، هناك 3 فئات من المستخدمين في Linux: المالك (المستخدم), رأس التجميعو وغيرهاقد يمتلك كل منهم مجموعات معينة من الوصول إلى الملفات أو الدلائل:
- قراءة (Read - r): يسمح بعرض محتويات الملف أو الدليل.
- الكتابة (Write - w): تتيح تعديل ملف أو إنشاء ملف جديد داخل المجلد. كما تتيح حذف ملفات من المجلد.
- تنفيذ (Execute - x): يسمح بتنفيذ الملف (إذا كان ملفًا قابلاً للتنفيذ) أو الدخول إلى الدليل (إذا كان دليلاً).
في أنظمة عائلة لينكس، تُمثَّل حقوق الوصول بسلسلة من عشرة أحرف. يُشير الحرف الأول إلى نوع الملف (ملف عادي، مجلد، إلخ)، بينما تُمثِّل الأحرف التسعة المتبقية ثلاث مجموعات من ثلاثة أحرف لكل مجموعة مستخدمين. لفهم ذلك، لنأخذ مثالاً.
حقوق الوصول -rwxr-xr-- تعني:
- يشير الحرف الأول (-) إلى نوع الملف (في هذه الحالة، ملف عادي).
- تشير الأحرف الثلاثة للمالك (rwx) إلى أن المالك لديه حقوق القراءة والكتابة وتنفيذها.
- تشير الأحرف الثلاثة للمجموعة (rx) إلى أن أعضاء المجموعة لديهم حقوق القراءة والتنفيذ فقط.
- ثلاثة أحرف للآخرين (r--) تعني أن المستخدمين الآخرين يمكنهم فقط قراءة الملف.
يتم تعيين حقوق الوصول باستخدام شمود الأمر، ويبدو بناء الجملة على النحو التالي:
chmod [options] mode file(s)
أين:
- [الخيارات] - معلمات إضافية، مثل -R لتغيير حقوق الوصول بشكل متكرر في الدليل والدلائل الفرعية الخاصة به.
- الوضع - سلسلة نصية خاصة تُحدد حقوق الوصول التي سيتم تغييرها ولمن. يمكن تحديد الوضع بالرموز (r، w، x) والبتات (0 أو 1). كما يمكن استخدام القيم الرقمية للوضع (سنتحدث عنها لاحقًا).
- الملف(ات) - الملفات أو الدلائل التي يتم تطبيق التغييرات عليها.
تعتبر هذه الأداة المساعدة قوية جدًا، لذلك سننظر فقط إلى بعض الأوامر الأساسية كمثال.
تغيير حقوق الوصول إلى ملف بحيث يكون لدى المالك حقوق القراءة والكتابة، وتتمتع المجموعة بحقوق القراءة فقط، ولا يتمتع المستخدمون الآخرون بأي حقوق:
chmod u=rw,g=r,o= filename
تعيين حقوق الوصول لجميع المستخدمين لقراءة الملف والكتابة إليه:
chmod a+rw filename
تغيير حقوق الوصول بشكل متكرر لجميع الملفات والدلائل الفرعية في الدليل:
chmod -R u+rwx directory
التمثيل الرقمي لحقوق الوصول
في التمثيل الرقمي، لكل فئة مستخدم (مالك، مجموعة، آخرون) رقمها الخاص، ويحدد مجموع هذه الأرقام حقوق الوصول النهائية. وكما هو الحال في التمثيل الرمزي، لكل حق من الحقوق الثلاثة قيمته، ولكن بشكل رقمي:
- اقرأ (اقرأ) - القيمة 4
- اكتب (اكتب) - القيمة 2
- تنفيذ (تنفيذ) - القيمة 1
يتم أيضًا استخدام القيم الرقمية لتحديد نوع المستخدم:
- مالك الملف (المستخدم) - الرقم الأول
- مجموعة المالك (المجموعة) - الرقم الثاني
- المستخدمون الآخرون (الآخرون) - الرقم الثالث
وبالتالي، يتكون التمثيل الرقمي الكامل لحقوق الوصول إلى الملفات من ثلاثة أرقام، يمثل كل منها مجموع قيم الحقوق لفئة مستخدمين معينة. وهذا أسهل نوعًا ما من استخدام عشرة أحرف في التمثيل الرمزي. ستكون الإدارة في هذه الحالة كما يلي:
chmod XYZ file
أين X, Yو Z هي أرقام تمثل حقوق الوصول للمالك والمجموعة والمستخدمين الآخرين على التوالي.
على سبيل المثال، لمنح المالك حقوق الوصول الكاملة (القراءة والكتابة والتنفيذ)، والمجموعة والمستخدمين الآخرين فقط القراءة والتنفيذ، يمكنك استخدام الأمر:
chmod 755 file
دعونا نفكر في أمثلة أخرى:
chmod 700 file
يملك المالك فقط حقوق القراءة والكتابة والتنفيذ، في حين لا تملك المجموعة والمستخدمين الآخرين أي حقوق الوصول.
chmod 644 file
لدى المالك حقوق القراءة والكتابة، بينما المجموعة والمستخدمين الآخرين لديهم حقوق القراءة فقط.
chmod 751 file
يملك المالك حقوقًا كاملة، والمجموعة لديها حقوق القراءة والتنفيذ، والمستخدمون الآخرون لديهم حقوق التنفيذ فقط.
كما ذكرنا سابقًا، تتميز الأداة بوظائف واسعة جدًا. في بعض الحالات، قد لا تكفي الخيارات المتاحة في قسم "المساعدة":
انتبه للسطر الأخير. استخدام هذا الأمر يفتح وثائق أكثر تفصيلاً حول الأداة. يمكنك أيضًا زيارة صفحة الأداة. ويكيبيديا الرسمية الصفحة التي يمكنك من خلالها العثور على معلومات مفصلة حول Chmod.
خاتمة
يُعدّ مستخدمو لينكس وإدارتهم أمرًا بالغ الأهمية لأمان نظام التشغيل واستقراره. في هذه المقالة، سلّطنا الضوء على أهمية الإدارة الفعّالة لحقوق المستخدمين والوصول في لينكس، بما في ذلك إنشاء المستخدمين وإدارتهم، والعمل مع مجموعات المستخدمين، ومنح حقوق الوصول إلى الملفات والمجلدات.