كيفية إضافة مستخدم إلى ملف sudoers في Linux

نشرت: 2022-11-02
كمبيوتر محمول Linux يعرض موجه bash
fatmawati achmad zaenuri / Shutterstock.com
إذا تم إخبارك بأن المستخدم "ليس موجودًا في ملف sudoers" ، فيمكنك منح المستخدم امتيازات sudo كاملة باستخدام الأمر usermod. للتحكم في ما يمكن للمستخدم فعله باستخدام sudo ، قم بتحرير ملف sudoers باستخدام visudo.

الأشخاص الذين يمكنهم استخدام أمر Linux sudo هم أعضاء في نادٍ صغير ومختار ، يُطلق عليه أحيانًا قائمة "sudoers". كل عضو لديه نفس صلاحيات root . إذن كيف تنضم إلى هذا النادي؟ سننتقل من خلال إضافة شخص إلى sudoers وكذلك تحرير ملف sudoers للحد من الأذونات.

جدول المحتويات

sudo: القوة الخارقة الخاصة بك Alter-Ego
ملف sudoers و visudo
أضف مستخدم sudo جديدًا في Ubuntu و Linux Distros الأخرى
الحد من امتيازات sudo عن طريق تحرير ملف sudoers
من يحمل هذه الوصية

sudo: القوة الخارقة الخاصة بك Alter-Ego

في عمليات تثبيت Linux ، يكون المستخدم الجذر هو المستخدم الأكثر امتيازًا. يمكنهم أداء أي مهمة إدارية ، والوصول إلى أي ملف بغض النظر عن ملكيته الفعلية ، ويمكنهم إنشاء مستخدمين آخرين ومعالجتهم وحتى إزالتهم.

هذا المستوى من القوة خطير. إذا أخطأ root ، فقد تكون النتائج كارثية. لديهم القدرة على تركيب أنظمة الملفات وإلغاء تحميلها ، والإفراط في كتابتها بالكامل. هناك طريقة أكثر أمانًا للعمل وهي عدم تسجيل الدخول root مطلقًا.

8 طرق لتعديل وتكوين Sudo على Ubuntu
ذات 8 طرق لتعديل وتكوين Sudo على Ubuntu

يمكن للمستخدمين المعينين استخدام sudo للحصول على صلاحيات إدارية مؤقتًا ، وتنفيذ الإجراء المطلوب ، ثم العودة إلى حالتهم الطبيعية غير المتميزة. هذا أكثر أمانًا لأنك تستدعي بوعي سلطاتك العليا عندما تحتاج إليها ، وبينما تركز على فعل كل ما يتطلبها.

الأمر sudo هو المكافئ في نظام Linux لصراخ "Shazam". عندما تنتهي الأشياء المخيفة ، فإنك تتخلى عن ذاتك الخارقة وتعود إلى ذاتك المعتادة.

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

تمنح توزيعات Linux الحديثة امتيازات sudo لحساب المستخدم الذي تم إنشاؤه أثناء خطوات التكوين أو ما بعد التثبيت. إذا حاول أي شخص آخر استخدام sudo ، فسترى رسالة تحذير مثل هذه:

 ماري ليست في ملف sudoers. سيتم الإبلاغ عن هذا الحادث.

هذا يبدو واضحا بما فيه الكفاية. لا تستطيع مستخدمتنا mary استخدام sudo لأنها ليست "في ملف sudoers". لذلك دعونا نرى كيف يمكننا إضافتها.

ذات صلة: كيفية التحكم في sudo Access على نظام Linux

ملف sudoers و visudo

قبل أن يتمكن أي شخص من استخدام الأمر sudo ، نحتاج إلى العمل مع ملف sudoers . يسرد هذا مجموعات المستخدمين للمستخدمين الذين يمكنهم استخدام sudo . إذا كنا بحاجة إلى إجراء تعديلات على الملف ، فيجب علينا تعديله.

يجب فتح ملف sudoers باستخدام الأمر visudo . يؤدي هذا إلى تأمين ملف sudoers ويمنع شخصين من محاولة إجراء تغييرات في نفس الوقت. كما يقوم بإجراء بعض فحوصات السلامة قبل حفظ تعديلاتك ، والتأكد من أنها تحلل بشكل صحيح وأنها سليمة من الناحية التركيبية.

لاحظ أن visudo ليس محررًا ، إنه يقوم بتشغيل أحد المحررين المتاحين لديك. في Ubuntu 22.04 و Fedora 37 و Manjaro 21 ، أطلق visudo nano. قد لا يكون هذا هو الحال على جهاز الكمبيوتر الخاص بك.

إذا أردنا منح شخص ما حق الوصول إلى امتيازات sudo الكاملة ، فنحن بحاجة فقط إلى الإشارة إلى بعض المعلومات من ملف sudoers . إذا أردنا أن نكون أكثر دقة ونمنح مستخدمنا بعض إمكانيات root ، فنحن بحاجة إلى تحرير الملف وحفظ التغييرات.

في كلتا الحالتين ، نحتاج إلى استخدام visudo .

ذات صلة: كيفية الخروج من محرر Vi أو Vim

أضف مستخدم sudo جديدًا في Ubuntu و Linux Distros الأخرى

لدينا مستخدمان يحتاجان إلى الوصول إلى امتيازات الجذر من أجل القيام بأدوار وظيفتهما. هما توم وماري. تحتاج ماري إلى الوصول إلى كل ما يمكن أن يفعله root . يحتاج توم فقط إلى تثبيت التطبيقات.

دعونا نضيف ماري إلى مجموعة sudoers أولاً. نحن بحاجة إلى بدء visudo .

 sudo visudo 

إطلاق Visudo على Ubuntu Linux

قم بالتمرير لأسفل في المحرر حتى ترى قسم "مواصفات امتياز المستخدم". ابحث عن تعليق يقول شيئًا مشابهًا لـ "السماح لأعضاء هذه المجموعة بتنفيذ أي أمر".

يتم فتح ملف sudoers في محرر nano

قيل لنا أن أعضاء مجموعة sudo يمكنهم تنفيذ أي أمر. كل ما نحتاج إلى معرفته في حالة ماري هو اسم تلك المجموعة. إنه ليس sudo دائمًا ؛ قد تكون wheel أو أي شيء آخر. الآن بعد أن عرفنا اسم المجموعة ، يمكننا إغلاق المحرر وإضافة ماري إلى تلك المجموعة.

كيفية تغيير بيانات المستخدم باستخدام chfn و usermod على نظام Linux
ذات صلة كيفية تغيير بيانات المستخدم باستخدام chfn و usermod على نظام Linux

نحن نستخدم الأمر usermod مع الخيارين -a (إلحاق) و -G (اسم المجموعة). يسمح لنا الخيار -G بتسمية المجموعة التي نرغب في إضافة المستخدم إليها ، ويخبرنا الخيار -a usermod بإضافة المجموعة الجديدة إلى قائمة المجموعات الحالية التي ينتمي إليها هذا المستخدم بالفعل.

إذا لم تستخدم الخيار -a ، فإن المجموعة الوحيدة التي سيكون المستخدم فيها هي المجموعة المضافة حديثًا. تحقق جيدًا ، وتأكد من تضمين الخيار -a .

 sudo usermod -aG sudo mary 

استخدام usermod لإضافة user mary إلى مجموعة sudo

في المرة التالية التي تسجّل فيها ماري الدخول ، ستتمكّن من الوصول إلى sudo . لقد سجلنا دخولها ونحاول تعديل ملف جدول نظام الملفات ، "/ etc / fstab." هذا ملف خارج الحدود للجميع ما عدا root .

 sudo نانو / الخ / fstab 

استخدام usermod لإضافة user mary إلى مجموعة sudo

يفتح محرر nano مع تحميل ملف “/ etc / fstab”.

يقوم المستخدم mary بتحرير ملف / etc / fstab باستخدام sudo

بدون امتيازات sudo ، ستتمكن فقط من فتح هذا كملف للقراءة فقط. لم يعد لدى ماري تلك القيود. يمكنها حفظ أي تغييرات تقوم بها.

أغلق المحرر ولا تحفظ أي تغييرات قد تكون أجريتها.

الحد من امتيازات sudo عن طريق تحرير ملف sudoers

سيتم منح المستخدم الآخر ، توم ، إذنًا لتثبيت البرنامج ، لكنه لن يحصل على جميع الامتيازات التي مُنحت لماري.

نحتاج إلى تعديل ملف sudoers .

 sudo visudo 

إطلاق Visudo على Ubuntu Linux

قم بالتمرير لأسفل في المحرر حتى ترى قسم "مواصفات امتياز المستخدم". ابحث عن تعليق يقول شيئًا مشابهًا لـ "السماح لأعضاء هذه المجموعة بتنفيذ أي أمر". إنها نفس النقطة في الملف حيث وجدنا اسم المجموعة التي كنا بحاجة إلى إضافة ماري إليها.

أضف هذه الأسطر أسفل هذا القسم.

 # مستخدم توم يمكنه تثبيت البرنامج
tom ALL = (root) / usr / bin / apt 

إضافة مدخلات جديدة إلى ملف sudoers

السطر الأول تعليق بسيط. لاحظ أن هناك علامة تبويب بين اسم المستخدم "توم" وكلمة "الكل".

هذا ما تعنيه العناصر الموجودة على الخط.

  • tom : اسم المجموعة الافتراضية للمستخدم. عادة ما يكون هذا هو نفس اسم حساب المستخدم الخاص بهم.
  • ALL = : تنطبق هذه القاعدة على جميع المضيفين على هذه الشبكة.
  • (الجذر) : يمكن لأعضاء مجموعة "tom" - أي المستخدم توم - تولي امتيازات root للأوامر المدرجة.
  • / usr / bin / apt : هذا هو الأمر الوحيد الذي يستطيع توم تشغيله root .

لقد حددنا مدير الحزم apt هنا لأن هذا الكمبيوتر يستخدم Ubuntu Linux. ستحتاج إلى استبدال هذا بالأمر المناسب إذا كنت تستخدم توزيعة مختلفة.

دعنا نسجل دخول توم ونرى ما إذا كنا سنحصل على السلوك المتوقع. سنحاول تحرير ملف “/ etc / fstab”.

 sudo نانو / الخ / fstab 

محاولة تحرير ملف / etc / fstab بدون امتيازات sudo

تم رفض هذا الأمر ، وقيل لنا أن "المستخدم توم غير مسموح له بتنفيذ" / usr / bin / nano / etc / fstab "كجذر ..."

هذا ما أردناه. من المفترض أن يكون User Tom قادرًا فقط على استخدام مدير الحزم apt . دعونا نتأكد من أنهم يستطيعون فعل ذلك.

 sudo apt install neofetch 

يستخدم المستخدم Tom الأمر apt مع sudo

تم تنفيذ الأمر بنجاح لـ Tom.

من يحمل هذه الوصية

إذا كان بإمكان جميع المستخدمين لديك استخدام sudo ، فستكون هناك فوضى في يديك. لكن الأمر يستحق الترويج لمستخدمين آخرين حتى يتمكنوا من مشاركة العبء الإداري الخاص بك. فقط تأكد من أنهم يستحقون ، وراقبهم.

حتى لو كنت المستخدم الوحيد على جهاز الكمبيوتر الخاص بك ، فمن الجدير التفكير في إنشاء حساب مستخدم آخر ومنحه حق الوصول الكامل إلى sudo . بهذه الطريقة ، إذا وجدت نفسك مغلقًا من حسابك الرئيسي ، فلديك حساب آخر يمكنك تسجيل الدخول به لمحاولة تصحيح الموقف.

ذات صلة: كيفية مراجعة استخدام sudo Command على نظام Linux