راهنمای ساخت و حذف یوزر در لینوکس + افزودن امتیاز sudo
ساخت یوزر در لینوکس و حذف آن از مواردی به شمار میرود که ادمینها باید با آن آشنا باشند. در این مطلب از ابر زس نحوه ساخت یوزر در لینوکس، افزودن امتیازات sudo به آن و نیز حذف یوزر را در توزیعهای CentOS، دبیان و اوبونتو آموزش میدهیم.
داشتن حسابهای متنوع برای کاربران مختلف و تنظیم مجوزها، به منظور بهبود امنیت، روش مناسبی است. برای انجام این دستورات به دسترسی روت نیاز دارید. البته حتی اگر یوزر فعلی، فاقد امتیاز باشد، با استفاده از مکانیزمی به نام «sudo» میتوان دستورات را با دسترسی Administrator اجرا کرد. علاوه بر این میتوان با اجرای «su» و سپس وارد کردن رمز عبور روت، دستورات را با دسترسی روت اجرا نمود.
از طریق لینکهای زیر، به سرعت به بخش مورد نظر دسترسی پیدا کنید:
در این مقاله از نام فرضی «ali» برای نام کاربری استفاده کردهایم و طبیعتا باید نام دلخواه خود را با آن جایگزین کنید.
آموزش ساخت یوزر در لینوکس CentOS 8
وقتی که برای اولین بار از یک سرور جدید لینوکس استفاده میکنید، افزودن و حذف کاربران از اولین کارهایی است که به آنها نیاز پیدا میکنید. در ادامه این مقاله، نحوه ساخت یوزر در لینوکس، اختصاص امتیازات sudo و حذف کاربران در سرور CentOS 8 را آموزش میدهیم.
پیش نیازها
در این مقاله فرض بر این است که شما به عنوان یک یوزر غیر روت با sudo فعال وارد سرور CentOS 8 شدهاید. اگر بهعنوان یوزر روت وارد شدهاید، میتوانید دستورات sudo
را به کار نبرید.
افزودن کاربران در CentOS
برای ساخت کاربر در لینوکس (توزیع CentOS 8) کافی است دستور زیر را تایپ کنید:
sudo adduser ali
در مرحله بعد، باید یک رمز عبور را انتخاب و وارد کنید. برای انجام این کار، از دستور passwd استفاده کنید:
sudo passwd ali
برای تایید رمز عبور، از شما خواسته میشود تا دوباره آن را وارد کنید. اکنون ساخت یوزر در لینوکس CentOS 8 به اتمام میرسد و میتوانید از آن استفاده کنید.
نکته: اگر SSH سرور شما اجازه احراز هویت مبتنی بر پسورد را نمیدهد، امکان اتصال به سرور از طریق یوزر جدید را نخواهید داشت. در آینده در مقالهای جداگانه، راهکاری برای این موضوع ارائه خواهیم داد.
افزودن امتیازات Sudo به یک کاربر در CentOS
اگر کاربر جدید توانایی اجرای دستورات با امتیازات root را داشته باشد، باید به آن اجازه دسترسی به sudo
را بدهید. انجام این کار را با افزودن کاربر به گروه wheel (که به طور پیشفرض به تمام اعضای خود دسترسی sudo میدهد) امکانپذیر است. با استفاده از دستور usermod میتوانید یوزر جدید را به wheel group اضافه کنید:
sudo usermod -aG wheel ali
اکنون کاربر جدید شما میتواند دستورات را با امتیازات administrative اجرا کند. برای انجام این کار، sudo
را قبل از دستوری که میخواهید به عنوان مدیر اجرا و اضافه کنید و دستور «some_command» را با دستور دلخواه خود جایگزین نمایید:
sudo some_command
در این مرحله، از شما خواسته میشود رمز عبور حساب کاربری خود را وارد کنید (نه رمز عبور root). پس از ارسال رمز عبور صحیح، دستوری که وارد کردهاید با امتیازات root اجرا میشود.
مدیریت کاربران با امتیازات Sudo در CentOS
در حالی که میتوانید با استفاده از usermod
کاربران را از یک گروه اضافه و حذف کنید، این دستور نشان نمیدهد که کاربران عضو کدام گروه هستند. برای مشاهده اینکه کدام کاربران عضو گروه wheel
هستند (و قاعدتا از امتیاز sudo
بهره میبرند)، می توانید از دستور lid
استفاده کنید. از کامند lid
معمولا برای نشان دادن اینکه یک کاربر به کدام گروه تعلق دارد، استفاده می شود، اما با فلاگ g-
، میتوانید آن را معکوس کنید و نشان دهید که کدام کاربران در یک گروه هستند:
sudo lid -g wheel
Output
centos(uid=1000)
ali(uid=1001)
درنهایت خروجی بالا، نامهای کاربری و UIDهای مرتبط با گروه را به شما نشان میدهد.
نحوه حذف کاربران در CentOS 8
خب اکنون که با نحوه ساخت یوزر در لینوکس CentOS 8 آشنا شدید، در ادامه به آموزش نحوه حذف کاربر در این سرور میپردازیم.
اگر حساب کاربری دارید که دیگر به آن نیاز ندارید، بهتر است آن را حذف کنید. برای حذف کاربر بدون حذف فایلهای مرتبط با آن، از دستور userdel
استفاده کنید:
sudo userdel ali
اگر میخواهید دایرکتوری home کاربر را به همراه حساب کاربری او حذف کنید، از فلگ r-
را به userdel
اضافه کنید:
sudo userdel -r ali
با استفاده از هر یک از دستورهای بالا، کاربر به طور خودکار از هر گروهی که به آن اضافه شده است، از جمله گروه wheel
، حذف میشود. اگر بعدها یوزر دیگری با همین نام اضافه کنید، برای دسترسی به sudo باید دوباره به گروه wheel
اضافه شود.
آموزش نحوه ساخت یوزر در لینوکس دبیان ۸
همانطور که اشاره شد، یکی از اساسیترین کارهایی که باید بهعنوان مدیر یک سیستمعامل لینوکس بدانید، افزودن و حذف کاربران است. هنگامی که یک سیستم جدید ایجاد میکنید، به طور پیش فرض به شما حساب root داده میشود. در حالی که اجرای دستورات به وسطه یوزر روت به شما قدرت و انعطاف زیادی میدهد، میتواند مخرب باشد؛ به همین دلیل بهتر است که یک یوزر غیر روت برای انجام کارهای رایج اضافه کنید.
باید برای هر کاربر دیگری که روی سیستم خود دارید، حسابهای اضافی ایجاد کنید. همچنین میتوانید در مواقعی که به آنها نیاز دارید، از طریق مکانیزمی به نام sudo
، امتیازات administrator را کسب کنید. در ادامه، نحوه ایجاد حسابهای کاربری، اختصاص امتیازاتsudo
و حذف کاربران در دبیان را آموزش خواهیم داد.
افزودن کاربران در دبیان
اگر به عنوان کاربر root وارد سیستم شوید، میتوانید با تایپ کردن نام یوزر، یک کاربر جدید ایجاد کنید:
adduser ali
اگر به عنوان یک یوزر غیر روت وارد شدهاید که امتیازات sudo
به او داده شده است، میتوانید با تایپ کردن دستور زیر یک کاربر جدید اضافه کنید:
sudo adduser ali
هنگامی که دستور را اجرا میکنید، خروجی زیر را مشاهده خواهید کرد، سپس اعلانهایی ظاهر میشوند که از شما میخواهند یک رمز عبور را برای کاربر جدید انتخاب و آن را تأیید کنید.در مرحله بعد از شما خواسته میشود تا اطلاعات اضافی در مورد کاربر جدید را وارد کنید. این بخش کاملاً اختیاری است و اگر نمیخواهید اطلاعات را در این فیلدها وارد کنید، میتوانید با زدن کلید ENTER
از آن صرفنظر کنید.
در نهایت، از شما خواسته میشود که صحت اطلاعات وارد شده را تأیید کنید. برای ادامه، حرف Y
را وارد کنید.
Output
Adding user `ali' ...
Adding new group `ali' (1001) ...
Adding new user `ali' (1001) with group `ali' ...
Creating home directory `/home/<^>ali' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for ali
Enter the new value, or press ENTER for the default
Full Name []: ali b
Room Number []: 123
Work Phone []: +98-21-91078149
Home Phone []:
Other []:
Is the information correct? [Y/n] y
دستور adduser
یک کاربر، یک گروه و یک دایرکتوری اصلی برای کاربر شما ایجاد کرد. یوزر جدید شما اکنون آماده استفاده است و میتوانید با استفاده از رمز عبوری که تنظیم کردهاید وارد شوید.
افزودن امتیازات Sudo به یک یوزر جدید در دبیان
اگر کاربر جدید شما نیاز به اجرای دستورات با امتیازات روت دارد، باید به کاربر جدید دسترسی به sudo
بدهید. برای این کار باید دو رویکرد اضافه کردن کاربر به یک گروه کاربر sudo
از پیش تعریف شده و تعیین امتیازات بر اساس هر کاربر در پیکربندی sudo
را بررسی کنیم.
کاربر جدید را به Sudo Group اضافه کنید:
بهطور پیشفرض، sudo
در سیستمهای Debian 8 به گونهای پیکربندی شده است که امتیازات کامل را به هر یوزر در sudo group میدهد.
با استفاده از دستور group
میتوانید مشاهده کنید که یوزر جدید شما در چه گروهی قرار دارد:
groups ali
Output
ali : ali
بهطور پیش فرض، یک یوزر جدید فقط در گروه خود قرار دارد که در زمان ساخت حساب ایجاد شده است و نام کاربری گروه و کاربر مشترک است.
برای افزودن کاربر به یک گروه جدید، کافی است از دستور usermod
استفاده کنید:
usermod -aG sudo ali
گزینه aG-
در اینجا به usermod
میگوید که کاربر را به گروههای لیست شده اضافه کند. برای بررسی اینکه یوزر شما اکنون عضو گروه sudo
است، دوباره از دستور groups
استفاده کنید. خروجی به صورت زیر خواهد بود:
Output
ali: ali sudo
اکنون کاربر جدید قادر به اجرای دستورات با امتیازات مدیریتی است. هنگامی که بهعنوان کاربر جدید وارد سیستم میشوید، میتوانید با تایپ دستورات بهطور معمول آنها را بهعنوان کاربر معمولی خود اجرا کنید:
ls ~
با تایپ sudo
در جلوی دستور میتوانید دستوراتی را با امتیازات administrative اجرا کنید:
sudo ls /root
دستور sudo
، از شما میخواهد یک رمز عبور وارد کنید. به این نکته توجه داشته باشید که باید به جای رمز عبور کاربر روت، رمز عبور حساب کاربری که دستور را صادر کرده است وارد کنید.
تعیین امتیازات Explicit یوزر در etc/sudoers/
بهجای قرار دادن یوزر در گروه sudo، میتوانید از دستور visudo
استفاده کنید که یک فایل پیکربندی به نام etc/sudoers/
را در ویرایشگر پیشفرض سیستم باز میکند و به صراحت امتیازات را بر اساس هر کاربر مشخص میکند.
نکته: دقت کنید ویرایش فایل etc/sudoers/
انعطافپذیری بیشتری را ارائه میدهد، اما باید زمانی استفاده شود که به این انعطافپذیری نیاز دارید، زیرا در مدیریت حسابهای کاربری به توجه و دقت بیشتری نیاز دارد.
استفاده از دستور visudo
تنها راه توصیه شده برای ایجاد تغییرات در etc/sudoers/
است؛ زیرا فایل را در برابر چندین ویرایش همزمان قفل و قبل از بازنویسی فایل، محتویات آن را بررسی میکند. این امر از پیکربندی اشتباه و از دست دادن امتیازات sudo
جلوگیری میکند.
اگر بهعنوان یوزر روت وارد شدهاید، دستور زیر را تایپ کنید:
visudo
و اگر بهعنوان یوزر غیر روت با امتیازات sudo
وارد سیستم شدهاید، دستور زیر را وارد کنید:
sudo visudo
به طور معمول دستور visudo
ویرایش فایل etc/sudoers/
را در ویرایشگر vi
باز میکند که برای کاربران مبتدی گیج کننده است. بهطور پیشفرض در نسخههای جدید دبیان باید از دستور nano
استفاده کرد که تجربه ویرایش متن آشناتری را ارائه میدهد. از کلیدهای جهتدار برای حرکت مکان نما استفاده کرده و خطی را که به شکل زیر است جستجو کنید:
root ALL=(ALL:ALL) ALL
اکنون فرمت خط زیر را کپی کنید، سپس کلمه root را برای ارجاع به کاربر جدیدی که میخواهید به آن امتیازات sudo
بدهید، تغییر دهید:
root ALL=(ALL:ALL) ALL
ali ALL=(ALL:ALL) ALL
باید به ازای هر کاربری که میخواهید امتیازات sudo کامل داشته باشد، این خط را اضافه کنید.
در نهایت وقتی کارتان تمام شد، میتوانید با زدن کلیدهای Y
،CTRL-X
و ENTER
فایل را ذخیره کنید.
نحوه حذف یک کاربر در دبیان
اکنون که با مراحل ساخت یوزر در لینوکس Debian 8 آشنا شدید، در این بخش میخواهیم به آموزش نحوه حذف کاربر بپردازیم.
میتوانید یوزر خود را بدون حذف فایلهای او، با تایپ عبارت زیر بهعنوان root حذف کنید:
deluser ali
و اگر به عنوان کاربر غیر روت با امتیازات sudo
وارد شدهاید، برای حذف آن میتوانید دستور زیر را تایپ کنید:
sudo deluser ali
اگر میخواهید دایرکتوری اصلی کاربر را هنگام حذف کاربر حذف کنید، دستور زیر را به عنوان root وارد کنید:
deluser --remove-home ali
اگرمیخواهید این کار را به عنوان یک کاربر غیر روت با امتیازات sudo
اجرا کنید، باید دستور زیر را به کار ببرید:
sudo deluser --remove-home ali
اگر قبلاً امتیازات sudo
را برای کاربری که با ویرایش فایل etc/sudoers/
حذف و پیکربندی کردهاید، باید از دستور زیر برای حذف استفاده کنید:
visudo
یا اگر یک یوزر غیر روت با امتیازات sudo
هستید کامند زیر را به کار ببرید:
sudo visudo
سپس در فایل، خط مرتبط با کاربر خود پیدا کرده و آن را حذف کنید.
Output
root ALL=(ALL:ALL) ALL
ali ALL=(ALL:ALL) ALL # DELETE THIS LINE
با اجرای این دستور، حتی اگر کاربر جدیدی با همین نام ساخته شود، به طور تصادفی امتیازات sudo
به او داده نمیشود.
آموزش نحوه ساخت یوزر در لینوکس اوبونتو ۲۲.۰۴
برای ایجاد یک کاربر لینوکس مانند دو روش قبلی ابزاری به نام sudo
روی سیستمهای اوبونتو وجود دارد. این ابزار به شما اجازه میدهد تا یک دستور را به عنوان یک کاربر دیگر اجرا کنید؛ از جمله کاربرانی که دارای امتیازات administrative هستند. در ادامه با ما همراه باشید تا با نحوه ساخت یوزر لینوکس و حذف آن در اوبونتو آشنا شوید.
پیش نیازها
برای تکمیل این آموزش، باید به سروری که اوبونتو را اجرا میکند، دسترسی داشته باشید. اطمینان حاصل کنید که دسترسی روت به سرور و فایروال را فعال کردهاید.
نحوه ایجاد کاربر در اوبونتو
اگر بهعنوان کاربر روت به سیستم وارد شدهاید، با استفاده از دستور زیر در هر زمان میتوانید یک کاربر جدید اضافه کنید:
adduser ali
اگر بهعنوان یک کاربر غیر روت وارد شدهاید که دارای امتیازات sudo
است، برای افزودن یک کاربر باید دستور زیر را به کار ببرید:
sudo adduser ali
در مرحله بعد از شما خواسته میشود تا مراحل زیر را وارد و تایید کنید:
- برای کاربر جدید یک پسورد تعیین و تأیید کنید.
- اطلاعات لازم را در مورد کاربر جدید وارد کنید. این مرحله اختیاری است و اگر نمیخواهید این فیلدها را تکمیل کنید، میتوانید با فشار دادن کلید
ENTER
آن را رد کنید. - در نهایت، از شما خواسته می شود که صحت اطلاعات ارائه شده را تأیید کنید. برای این کار باید کلید
Y
را فشار دهید.
اکنون کاربر جدید ایجاد شده و میتوانید با استفاده از رمز عبوری که تعیین کردهاید، وارد شوید. اگر نیاز دارید که کاربر جدید شما دارای امتیازات administrative باشد، مراحل بعد را انجام دهید.
افزودن کاربر جدید به Sudo Group
برای اینکه کاربر جدید به امتیازات روت دسترسی داشته باشد، باید به او دسترسی sudo
را بدهید. به این منظور باید روشهای، اضافه کردن کاربر به sudo user group و مشخص کردن امتیازات بر اساس هر کاربر در پیکربندی sudo
را طی کنید.
بهطور پیشفرض، sudo
در سیستمهای اوبونتو ۲۲.۰۴ به گونهای پیکربندی شده است که امتیازات کامل را به هر کاربر در گروه sudo بدهد.
با استفاده از دستور group میتوانید مشاهده کنید که کاربر جدید شما در چه گروههایی قرار دارد:
groups ali
Output
ali : ali
بهطور پیشفرض، یک کاربر جدید فقط در یک گروه قرار میگیرد، زیرا adduser
علاوه بر پروفایل کاربر، گروه را ایجاد میکند.
یوزر و گروه نام یکسانی دارند. برای افزودن کاربر به یک گروه جدید، میتوانید از دستور usermod
استفاده کنید:
usermod -aG sudo ali
گزینه aG-
به usermod
میگوید که کاربر را به گروههای فهرست شده اضافه کند.
به این نکته توجه داشته باشید که دستور usermod
خود به امتیازات sudo
نیاز دارد. این بدان معناست که تنها در صورتی میتوانید کاربران را به گروه sudo
اضافه کنید که بهعنوان کاربر روت یا به عنوان کاربری که قبلاً بهعنوان عضوی از گروه sudo
اضافه شده است، وارد شده باشید. در مورد دوم، شما باید قبل استفاده از دستور usermod
از sudo
استفاده کنید مانند مورد زیر:
sudo usermod -aG sudo ali
مشخص کردن امتیازات Explicit User در etc/sudoers/
بهعنوان جایگزینی برای قرار دادن کاربر در گروه sudo
، میتوانید از دستور visudo
استفاده کنید که یک فایل پیکربندی به نام etc/sudoers/
را در ادیتور پیشفرض سیستم باز کرده و امتیازات را بر اساس هر کاربر مشخص میکند.
استفاده از visudo
تنها راه پیشنهادی برای ایجاد تغییرات در etc/sudoers/
است؛ زیرا فایل را در برابر ویرایشهای همزمان قفل میکند و قبل از بازنویسی فایل، یک بررسی اعتبارسنجی روی محتویات آن انجام میدهد. این دستور به جلوگیری از وضعیتی کمک میکند که در آن sudo
را به اشتباه پیکربندی کردهاید و نمیتوانید مشکل را برطرف کنید؛ زیرا امتیازات sudo
را از دست دادهاید.
اگر بهعنوان یوزر root وارد شدهاید، دستور زیر را اجرا کنید:
visudo
و اگر بهعنوان یک یوزر non-root با امتیازات sudo
به سیستم وارد شدهاید، همان دستور را با پیشوند sudo
به کار ببرید:
sudo visudo
بهطور معمول، این دستور etc/sudoers/
را در ادیتور vi باز میکند که میتواند برای کاربران مبتدی کمی گیجکننده باشد. در نسخههای جدید اوبونتو، visudo
از ادیتور تکست nano
استفاده میکند که دسترسی و کار با آن راحتتر است. از کلیدهای جهت دار برای حرکت مکان نما استفاده کرده و خطی را که مانند زیر است پیدا کنید:
root ALL=(ALL:ALL) ALL
زیر این خط، خط هایلایت شده زیر را اضافه کنید. حتماًali
را به نام پروفایل کاربری که میخواهید به آن امتیازات sudo
بدهید تغییر دهید:
root ALL=(ALL:ALL) ALL
ali ALL=(ALL:ALL) ALL
برای هر کاربر یک خط جدید مانند بالا را اضافه کنید تا به آنها امتیازات sudo
داده شود. در پایان کار، با فشار دادن کلیدهای CTRL + X
و به دنبال آنها Y
و سپس ENTER
، فایل را ذخیره کرده و ببندید.
تست امتیازات Sudo کاربر در اوبونتو
اکنون کاربر جدید شما قابلیت اجرای دستورات با امتیازات administrative را دارد. هنگامی که بهعنوان کاربر جدید به سیستم وارد میشوید، میتوانید دستورات دلخواه را اجرا کنید. توجه داشته باشید که باید «some_command» را با دستور دلخواه خود جایگزین نمایید:
some_command
با تایپ sudo
قبل از هر دستور، میتوانید آن را با امتیازات administrative اجرا کنید:
sudo some_command
هنگام انجام این کار، از شما خواسته میشود رمز عبور حساب کاربری را که با آن وارد شده اید، وارد کنید.
حذف کاربر در اوبونتو
اکنون که با نحوه ساخت یوزر در لینوکس آشنا شدید، در صورتی که دیگر نیازی به آن ندارید، میتوانید حساب کاربری مورد نظر را حذف کنید.
با اجرای دستور زیر به صورت کاربر روت میتوانید آن را بدون حذف هیچ یک از فایلهای او حذف کنید:
deluser ali
اگر بهعنوان کاربر غیر روت با امتیازات sudo
وارد شدهاید، از دستور زیر استفاده کنید:
sudo deluser ali
اگر بخواهید هنگام حذف یوزر، دایرکتوری اصلی آن را حذف کنید، باید دستور زیر را بهعنوان root صادر کنید:
deluser --remove-home ali
و اگر بهعنوان یک کاربر غیر روت با امتیازات sudo
وارد شدهاید، کافی است دستور را با پیشوند sudo
اجرا کنید:
sudo deluser --remove-home ali
اگر قبلاً امتیازات sudo
را برای کاربری که حذف نمودهاید، پیکربندی کردهاید، ممکن است بخواهید دوباره خط مربوطه را حذف کنید:
visudo
اگر یوزر غیر روت هستید میتوانید برای دسترسی با امتیاز sudo
از دستور زیر استفاده کنید:
sudo visudo
root ALL=(ALL:ALL) ALL
ali ALL=(ALL:ALL) ALL # DELETE THIS LINE
با انجام این کار، اگر کاربر جدیدی با نام مشابه کاربر حذف شده قبلی را اضافه کنید، بهطور تصادفی امتیازات sudo به او داده نمیشود.
جمع بندی
در این مقاله آموزشی به نحوه ساخت یوزر در لینوکس CentOS 8، دبیان ۸ و اوبونتو ۲۲.۰۴ پرداختیم و شما را با مراحل هریک آشنا کردیم. با دنبال کردن مراحل ارائه شده در این مقاله و با استفاده از دستور sudo
بهراحتی میتوانید کاربر مورد نظر خود را ایجاد و حذف کنید یا به کاربر دسترسی Administrative بدهید. مدیریت کارآمد کاربر به شما این امکان را میدهد که کاربران را از هم جدا کنید و تنها دسترسیهای مورد نیاز را به آنها بدهید.
با خرید سرور ابری زَس، میتوانید سیستمعامل دلخواه خود از جمله نسخههای مختلف ویندوز یا توزیعهای متنوع لینوکس را انتخاب کنید و سرور را به همراه میزان منابع دلخواه، در یک دقیقه، تحویل بگیرید.