sudo without password

هل مللت من ادخال كلمة المرور كلما أردت استعمال خاصية sudo ؟ الأمر ممكن فقط تابع معنا هذا الشرح.

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

في البداية ادخل لحساب root و اكتب الأمر التالي:

nano /etc/sudoers
و سيفتح لنا ملف جديد داخل الترمنال, لا يهم ما يحتويه الملف المهم أننا سنذهب آخر الملف و ندخل اﻷسطر التالية:

# for user
USER_NAME ALL= NOPASSWD: ALL
# for group
%GROUP_NAME ALL= NOPASSWD: ALL
مع تعويض USER_NAME و GROUP_NAME باسم المستعمل و اسم المجموعة الذان تستخدمهما في حسابك,
الآن نغلق الملف باستعمال ctrl+x ثم Enter و نفتح ترمنال جديد بحساب عادي لتجربة ما قمنا بتطبيقه و نكتب مثلا

sudo update
سنلاحظ أنه قام بالعملية مباشرة من دون ادخال كلمة المرور.



جيد, الشرح يعمل بكفائة و لكن دعونا نتعمق أكثر و نتعرف على خيارات أخرى.


لنفترض أنك لأسباب أمنية لا ترغب في فتح الباب على مصراعيه للمخترقين و لكنك في نفس الوقت تمل من اعادة امر معين تضطر على اثره لادخال كلمة المرور, الحل هنا أن نسمح بأمر واحد بأن ينفذ ك root بدلا من جميع اﻷوامر

لدينا هذا الأمر الذي يوضع في نفس الملف السابق بدل ما قمنا بكتباته سابقا

user ALL= /usr/sbin/command
مع تعويض user باسم المستعمل و command باﻷمر الذي ترغب في تنفيذه و الآن أصبح اﻷمر ينفذ ك root و لكن مع الحفاظ على ادخال كلمة المرور, الآن لنعد نفس الطريقة و لكن هذه المرة من دون ادخال كلمة مرور.

user ALL= NOPASSWD: /usr/sbin/command
إذا لاحظت مثلا أن مستخدما ما لا يملك كافة الصلاحيات و ترغب في اعطاءه كافة الصلاحيات.


user ALL=(ALL) ALL
و كما في السابق إن أردنا عدم استعمال كلمة مرور يصبح الأمر كما كما قمنا به في بداية المقال 


 أما هذا الطريقة فهي تجعل جميع المستخدمين يملكون صلاحيات root 

ALL ALL=(ALL) ALL
و الأمر اﻷخير سيجعل كل المستخدمين يصبحون root و لكن من دون ادخال كلمة المرور.
ALL ALL=(ALL) NOPASSWD: ALL
بالطبع جميع الإضافات السابقة يمكن استعمالها للمجموعات كما فعلنا في البداية,
مثال آخر:


%group ALL = /usr/sbin/command

و بالطبع نعوض group باﻹسم الحقيقي للمجموعة



0 comments: