شما برای مطالعه این مقاله فقط 5 دقیقه وقت نیاز دارید

diff-between-su-su-
دسته بندی : آموزش لینوکس

آیا دستورات su و – su در لینوکس تفاوت دارند؟

4/5 - (8 امتیاز)

سیستم های لینوکس با ارائه انواع ابزارها و قابلیت های خط فرمان، این امکان را به کاربران می دهند که تسک هایی مدیریتی را تکمیل کنند و دستورات لینوکس را با سطوح مختلف امتیازات اجرا کنند که دستورات su و – su با هدف ساده سازی این ایده توسعه یافتند.

su و - su دو نمونه از رایج ترین دستورات لینوکس هستند که برای تغییر زمینه کاربر و اجرای دستور موردنظر با استفاده از امتیازات کاربر دیگر استفاده می شوند و در عین شباهت، تفاوت های اساسی دارند که حتماً باید از آنها اطلاع داشته باشید.

در واقع، موقع کار با سیستم های لینوکس گاهی وقت ها باید زمینه کاربری یا همان کاربری که در حال اجرای دستور موردنظر است را تغییر دهید تا امتیازات لازم برای تکمیل دستور را داشته باشید یا از منابعی که فقط برای برخی از کاربران قابل دسترسی هستند، استفاده کنید.

شاید دستورات su و – su کمی مشابه به نظر برسند ولی تفاوت هایی که این دو دستور دارند کاملاً واضح و مشخص است و هر کدام از آنها در سناریوهای مختلفی استفاده می شوند. مطمئن باشید که اگر استفاده درستی و به جایی از این دستورات داشته باشید، امنیت و کارایی سیستم خود را در تا حد زیادی بالا خواهید برد.

مخصوصاً که اگر با خرید سرور مجازی لینوکس سعی کردید محکم کاری کنید و یک سرور امن با کارایی بالا تهیه کنید، حتماً باید به چنین نکاتی توجه داشته باشید تا وضعیت سرور خود را به خطر نیاندازید.

ما در این مقاله، تفاوت ها و نحوه استفاده از دستورات su و – su، مزایا و معایب و همچنین بهترین روش های استفاده از آنها را به طور کامل بررسی می کنیم تا درک درستی از کاربرد این دستورات داشته باشید:

آشنایی با دستورات su و – su

دستور su با مخفف “switch user”، این امکان را به کاربر لینوکس می دهد که برای اجرای دستور موردنظر از مجوز ها و امتیازات یک کاربر دیگر استفاده کند. با توجه به اینکه کاربر ریشه یا همان superuser، دسترسی نامحدودی به سیستم دارد و از تمام امتیازات برخوردار است، اکثر کاربران از دستور su برای تغییر به کاربر روت استفاده می کنند.

البته، بهتر است به این نکته اشاره کنیم که دستور su موقع تغییر زمینه کاربری، محیط مربوط به کاربر اصلی مثل دایرکتوری کاری، متغیرهای shell و تنظیمات دیگر را حفظ می کند.

از طرف دیگر، دستور – su برای باز کردن یک shell جدید به عنوان یک کاربر دیگر (معمولاً کاربر ریشه) استفاده می شود. با اضافه کردن این دستور به ابتدای دستور موردنظر، کاری می کنید که آن دستور با حقوق کاربر ریشه اجرا شود.

ولی در حالت کلی، هر کاربری می تواند از این دو دستور برای سویچ کردن به یک کاربر دیگر استفاده کند و از امتیازات لازم برای اجرای دستور مودنظر خود بهره مند شود.

تا اینجا متوجه شدیم که یکی از تفاوت های اصلی دستورات su و – su عملکرد آنها در زمینه پوسته است. دستور su متغیرهای پوسته و تنظیمات محیط را حفظ می کند در حالی که – su یک پوسته با محیط کاملاً جدید باز می کند.

ولی تفاوت بین این دو دستور به این یک مورد محدود نمی شود:

تفاوت های اصلی دستورات su و – su

  1. تغییر زمینه کاربر

هدف اصلی دستورات su و – su، تغییر زمینه کاربر است ولی آنها این کار را با روش های مخصوص به خود انجام می دهند. دستور su کاری با پوسته ندارد و بدون این که یک پوسته جدید شروع کند، زمینه کاربری را تغییر می دهد. در حالی که – su، یک پوسته جدید باز می کند و تغییر زمینه را در این پوسته جدید اعمال می کند.

  1. دسترسی ریشه

تفاوت دوم هم در سطح دسترسی به ریشه است. کاربر با استفاده از دستور su می تواند دسترسی کاملی به روت داشته باشند و هر گونه کار مدیریتی را انجام دهد. ولی  دستور – su دسترسی کاملی به ریشه نمی دهد ولی کاربر برای اجرای دستورات موردنظر خود به امتیازات بالایی دست پیدا می کند.

  1. متغیرهای محیطی

دستور su تمام متغیرهای محیطی، دایرکتوری کاری، تنظیمات پوسته و … را حفظ می کند ولی دستور – su یک پوسته جدید با متغیرهای پیش فرض کاربر جدید ایجاد می کند.

  1. ورود به سیستم

دستور su دستوراتی که در محیط کاربر جدید اجرا می شوند را ثبت نمی کند و به همین دلیل، ردیابی اقدامات و فعالیت های کاربر بعد از تغییر زمینه کمی سخت می شود. در مقابل، دستور – su همه اقدامات کاربر در پوسته جدید را ثبت می کند و پروسه ردیابی فعالیت را راحت تر می کند.

کلیک کنید  آشنایی با دستور touch در لینوکس + مثال های پرکاربرد

نحوه استفاده از دستورات su و – su

سینتکس دستور su به صورت زیر است:

su user_name

user_name، اسم کاربری است که می خواهید به امتیازات آن دسترسی پیدا کنید و دستورات را موردنظر را با هویت این کاربر اجرا کنید. مثلاً اگر برای اجرای دستورات موردنظر، کاربر ریشه را مدنظر قرار داده اید، باید دستور را به صورت زیر اجرا کنید:

su root

البته بعد از اجرای این دستور باید احراز هویت هم انجام دهید و با وارد کردن رمز عبور کاربر موردنظر، صاحب هویت کاربر موردنظر شوید و امتیازات آن را به دست بیاورید.

دستور su root

سینتکس دستور – su  هم به صورت زیر است:

su - user_name -c command

user_name، اسم کاربری است که امتیازات آن را برای اجرای دستور (command) در نظر گرفته اید.

مزایا و معایب دستور su

مزایامعایب
دسترسی سریع به محیط کاربر موردنظردسترسی کامل به ریشه و خطرات ناشی از تغییرات غیرمجاز
افزایش انعطاف پذیری اجرای چند تسک در محیط کاربر موردنظرعدم امکان ردیابی فعالیت کاربر در محیط جدید
سهولت استفاده

مزایا و معایب دستور – su

مزایامعایب
اجرای دستور یا دستورات موردنظر با امتیازات بالانیاز به پیشوند – su  برای اجرای تک تک دستورات
ارتقا امنیت با محدودسازی اقدامات مجاززمان بر بودن عملیات چند تسکی (به خاطر پیشوند)
امکان ثبت و ردیابی فعالیت های کاربر

کاربرد دستورات su و – su

این دو دستور حوزه فعالیت مشابهی دارند ولی به خاطر سینتکس و ویژگی های خاص خود، کاربردهای متفاوتی دارند:

su

  • مدیریت تنظیمات و پیکربندی های سیستمی
  • نصب و آپدیت پکیج های نرم افزاری
  • خطایابی و دیباگ مشکلات سیستم

– su

  • اجرای دستور یا دستورات موردنظر به عنوان کاربر ریشه
  • اجرای دستورات حساسی مثل بکاپ گیری که به امتیازات بالایی نیاز دارند.

نکات مهم جهت استفاده درست از دستورات su و – su

دسترسی ریشه را محدود کنید

کاربر ریشه به طور نامحدود به تمام بخش ها و منابع سیستم دسترسی دارد و از تمام امتیازات برخوردار است پس در مورد ارائه دسترسی root حساسیت به خرج دهید و برای اجرای بعضی از دستورات به عنوان کاربر ریشه ترجیحاً از دستور – su استفاده کنید. در کل، سعی کنید فقط در صورتی دستورات حساس که نیاز امتیازات بالایی دارند را اجرا کنید که چاره دیگری ندارید و حتماً باید این کار را انجام دهید.

گزارش گیری را فراموش نکنید

امکان فعالیت چند کاربر در یک سیستم لینوکس یکی از مهم ترین دلایلی است که باعث می شود نیاز به  پیگیری فعالیت و گزارش گیری عملیات کاربران احساس شود. اگر می خواهید در جریان تمام فعالیت ها باشید و از نظارت و شناسایی مسائل امنیتی عقب نمانید، بهتر است از دستور – su استفاده کنید.

از پسوردهای قوی استفاده کنید

رمز عبوری که برای کاربر روت یا سایر کاربران لحاظ شده اند، ابزاری است که برای احراز هویت کاربران موقع اجرای دستورات su و – su استفاده می شود. پس تا حد امکان سعی کنید از رمزهای قوی استفاده کنید و هر چند وقت یکبار آنها را آپدیت کرده و به صورت کاملاً امن ذخیره کنید. استفاده از روش احراز هویت دو مرحله ای هم یکی از بهترین کارهایی است که می توانید برای افزایش امنیت سیستم لینوکس خود انجام دهید.

دسترسی به دستورات su و – su را محدود کنید

تنظیمات کاربری را طوری انجام دهید که فقط کاربران و گروه های مورداعتماد بتوانند از دستورات su و – su استفاده کنند. اگر با پیکربندی مناسب فایل etc/sudoers، دسترسی ها را کنترل کنید و فعالیت هر کدام از کاربران را هم پیگیری کنید، به راحتی می توانید از هر گونه دسترسی غیرمجاز و سوءاستفاده جلوگیری کنید.

کلام آخر

دستورات su و – su برای تغییر زمینه کاربری جهت اجرای برخی از دستورات با سطوح امتیاز بالا استفاده می شوند. در کل، این دو دستور اهداف مشابهی دارند ولی مکانیسم و نتایج آنها به طور قابل توجهی متفاوت است. آشنایی با تفاوت ها و روش های درست استفاده از این دو دستور برای اطمینان از امنیت سیستم، گزارش گیری از فعالیت کاربران و مدیریت بهتر تسک های ادمین ضروری است.

از اینکه تا انتهای مقاله با ما همراه بودید، از شما متشکریم. امیدواریم که مطالعه این مقاله برای شما مفید واقع شده باشد. در صورت داشتن هرگونه سوال، درخواست و نیاز به راهنمایی، می توانید با ثبت نظر خود، با ما وارد ارتباط شوید تا هر چه زودتر به شما پاسخ دهیم.

سوالات متداول:

برای اطلاع از این موضوع کافیست ترمینال را باز کنید و دستور - su را اجرا کنید. اگر در خروجی، داکیومنتیشن این دستور را مشاهده کردید می توانید نتیجه بگیرید که سیستم شما از این دستور پشتیبانی می کند.

مطالب مشابهی که شاید علاقمند باشید

من زهرا پیرجانی دانشجوی رشته نرم افزار هستم. علاقه ای که به یادگیری مطالب جدید دارم باعث شد که انگیزم برای فعالیت در حوزه تولیدمحتوا بیشتر شود. تمام تلاشم این است که با درک کامل موضوع، محتوایی ساده و کامل تهیه کنم که برای همه علاقمندان مفید و کاربردی باشد. یادگیری مطالب جدید و آموزش اونها به بقیه، بهترین کاری هست که می توانم برای رشد خودم و همچنین کمک به رشد علاقمندان به مباحث مورنظر انجام بدم.

دیدگاه های شما

برای دریافت این مقاله لطفا ایمیلتان را وارد کنید

می توانید مقاله را دانلود کنید یا پرینت بگیرید