دستور sudo (آموزش لینوکس LPIC1-101)
دستور sudo (آموزش لینوکس LPIC1-101)
دستور sudo در بسیاري موارد شبیه دستور su می باشد ولی sudo قابلیت هاي مهم دیگري نیز دارد.
مدیریت می تواند sudo را به گونه اي پیکربندي کند
تا به یکسري کاربران عادي اجازه دهد که تا یکسري دستورات خاص را به حالت ادمین (به شکلی کاملا کنترل شده) اجرا نمایند.
به طور خاص یک کاربر عادي ممکن است از انجام یکسري دستورات ویژه منع شده باشد (براي افزایش امنیت و یکپارچگی سیستم).
یک ویژگی مهم دیگر sudo این است که براي استفاده از آن شما لازم نیست پسورد کاربر ارشد (Superuser) را داشته باشید.
پس به این شیوه بدون در اختیار قرار دادن پسورد ادمین در اختیار دیگران (ریسک امنیتی بالایی دارد) شما یکسري کاربران خاص خود را قادر به انجام یکسري دستورهاي خاص می کنید.
براي مثال:
فرض کنید sudo پیکربندي شده تا به ما اجازه دهد که یک برنامه بکاپ فرضی با نام backup_script را اجرا کنیم
که براي اجرا این برنامه نیاز به دسترسی کاربر ارشد داریم.
با استفاده از sudo به این صورت انجام می شود:
sudo backup_script
پس از اجراي دستور از ما پسورد خواسته می شود (پسورد کاربري خودمان ، پسورد کاربر ارشد را نمی خواهد)
و پس از انجام تشخیص هویت دستور موجود در اسکریپت بک آپ اجرا می شود.
یک تفاوت مهم بین su و sudo این است که sudo یک شل (Shell) جدید را آغاز نمی کند و به تبع آن محیط کاربري ، کاربر دیگري را بارگذاري نمی کند.
یعنی این که براي اجراي دستورات لازم نیست دستورات داخل کوتیشن قرار گیرند.
براي مشاهده اینکه چه دسترسی هایی براي sudo تعیین شده است از گزینه l- براي لیست کردن آنها استفاده کنید.
اوبونتو و دستور sudo
یکی از مشکلات اخیر براي کاربران عادي این است که چگونه برخی وظایف را که نیاز به دسترسی کاربر ارشد (Superuser) را دارد اجرا کنند.
این وظایف شامل نصب و بروزرسانی نرم افزارها، ویرایش فایل هاي پیکربندي سیستم و دسترسی به دیوایس ها هستند.
در دنیاي ویندوز این کار اغلب از طریق اعطاي سطوح دسترسی مدیریتی به کاربران انجام می شود.
این کار باعث می شود تا کاربران بتوانند به راحتی وظایف خود را انجام دهند.
هرچند این کار باعث می شود برنامه هایی که توسط کاربر اجرا می شوند نیز همان توانایی هاي کاربر را داشته باشند.
این در بیشتر موارد پسندیده و مطلوب است ولی!!
این کار باعث می شود که بدافزارهایی مثل ویروس ها نیز به راحتی توانایی اجرا در کامپیوتر را داشته باشند.
در دنیاي یونیکس جریان متفاوت است.
در یونیکس همیشه اختلاف بزرگتري بین کاربران عادي و ادمین وجود دارد.
این رویکرد یونیکس باعث می شود فقط زمانی دسترسی کاربر ارشد (Superuser) صادر شود که به آن نیاز باشد.
به این منظور همانطور که در قسمت قبل مشاهده کردید از دستورهاي su و sudo استفاده می شود.
چند سال گذشته بیشتر توزیع هاي لینوکس متکی به دستور su براي رسیدن به این هدف بودند.
دستور su نیاز به پیکربندي که دستور sudo لازم دارد، نداشت و داشتن یک حساب کاربري root در یونیکس رسمی شده بود.
این مشکلی را بوجود می آورد.
کاربران براي راحتی کار خود حتی در موارد غیر ضروري از اکانت root براي عملیات خود استفاده می کردند.
تا جایی که برخی کاربران سیستم خود را به صورت اختصاصی با کاربر root پردازش می کردند
تا از اخطار آزاردهنده مجوز رد شد (Permission Denied) جلوگیري شود.
این دقیقا همان جایی است که شما امنیت یک سیستم لینوکس را کاهش می دهید.
تا شبیه یک ویندوز مایکروسافتی شود که اصلا ایده خوبی نیست.
همیشه این مثال معروف را به یاد داشته باشید. ویندوز مایکروسافت مثل یک خانه ساحلی است.
راحتی و رفاه بالایی دارد ولی امنیت آن پایین است.
لینوکس درست مثل یک قلعه است که در نوك کوه بنا شده دسترسی به آن دشوار است ولی امنیت بسیار بالایی دارد.
وقتی که اوبونتو معرفی شد، سازندگان آن یک رویه دیگر را پیش گرفتند.
به صورت پیش فرض اوبونتو لاگین به حساب کاربري root را غیرفعال کرده است
و به جاي آن شما می توانید با استفاده از دستور sudo به سطوح دسترسی کاربر ارشد (Superuser) دسترسی پیدا کنید.
حساب کاربري اولیه دسترسی کامل به سطوح دسترسی کاربر ارشد را (Superuser) را از طریق دستور sudo دارد.
جهت مشاهده دوره های آموزشی بر روی این لینک کلیک نمایید.
جدیدترین اخبار مجموعه فراز نتورک را در این صفحه اجتماعی دنبال کنید.
نویسنده: موسی رشوند
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.