امیررضا حسینی
کارشناس شبکه

آموزش ساختن یوزر ها و گروه ها در لینوکس

در این مقاله به آموزش ساختن یوزر در لینوکس با استفاده از دستور useradd می پردازیم. توجه کنید که این دستور باید توسط کاربر root یا کاربری که دارای  sudo privilege  است انجام شود.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

نحوه استفاده کردن از دستور useradd

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

  useradd [options] LOGIN

برای مثال دستور sudo useradd amirreza یک کاربر با یوزرنیم amirreza ایجاد می کند.در حالت عادی و بدون استفاده کردن از option های این دستور ، مقادیر از پیش تعیین شده که در فایل /etc/default/useradd موجود می باشند به کاربر ما اختصاص داده می شوند. که ممکن است در توزیع های مختلف لینوکس متفاوت باشند. در ادامه به بررسی option های مختلف این دستور می پردازیم.

ساخت یک یوزر جدید در لینوکس به همراه Home Directory

معمولا در بسیاری از توزیع های لینوکس با استفاده از دستور useradd به تنهایی ، برای یوزر مورد نظر Home Directory ایجاد نمی شود.برای این کار باید از پارامتر m- استفاده کنیم.

sudo useradd -m amirreza

دستور بالا یک کاربر با نام کاربری amirreza ایجاد می کنید. همچنین Home Directory آن نیز در مسیر  /home/amirreza ایجاد شده است.

  • نکته : شما می توانید لیست یوزر های ایجاد شده در سیستم تان را در فایل /etc/passwd ببینید. می توانید برای پیدا کردن username مورد نظرتان در این فایل از دستور
cat /etc/passwd|grep username

استفاده کنید.

ساختن کاربر جدید با Home Directory در مسیر دلخواه

برای این منظور می توانید از پارامتر های m- و d- به همراه هم استفاده کنید.

sudo useradd -m -d /media/amir/e/newuser amirreza

دستور بالا کاربر amirreza را به همراه Home Directory آن در مسیر /media/amir/e/newuser ایجاد می کند.

ساختن یوزر به همراه USER ID دلخواه

در سیستم عامل های LinuxBased هر کاربر با username و UID منحصر به فرد خود مشخص می شوند. در حالت عادی بعد از ایجاد یک یوزر UID بعدی که در دسترس است به این یوزر اختصاص داده میشود. که رنج UID ها در فایل /etc/login.defs مشخص شده است.با استفاده از پارامتر  u- می توانیم UID دلخواه خود را به کاربر اختصاص دهیم.به این دستور توجه کنید :

sudo useradd -u 1200 amirreza

این دستور کاربر amirreza با یوزر آی دی ۱۲۰۰ را ایجاد می کند.

  • نکته : برای فهمیدن UID هر کاربر می توانید از دستور  id -u username  استفاده کنید.

اختصاص دادن group به کاربران

در لینوکس به طور پیش فرض با ایجاد یک کاربر یک گروه هم نام با آن ایجاد می شود و کاربر عضو آن میشود. این گروه primary group نامیده می شود.استفاده از پارامتر N-  باعث می شود که primary group هم نام با نام کاربر ایجاد نشود. اما کاربر خود به خود عضو گروه users خواهد شد.برای تغییر primary group می توانید از پارامتر g- استفاده کنید. اما باید به این نکته توجه کرد که گروه مورد نظر باید از پیش ساخته شده باشد.برای ایجاد گروه جدید در لینوکس می توانید از دستور groupadd GROUP  استفاده کنید.توجه کنید که می توانید به جای نام هر گروه از GID آن نیز استفاده کنید.پارامتر G- برای تعیین گروه های ثانویه یا مکمل (supplementary group) برای یک کاربر است. که در صورت نیاز علاوه بر primary group  می تواند عضو آنان نیز بشود.

sudo useradd -g g1 -G sg1,sg2 amirreza

دستور بالا کاربر amirreza را ایجاد می کند. که g1  به عنوان primary group و sg1,sg2 به عنوان supplementary group در نظر گرفته می شوند. در اینجا عملا کاربر ما عضو سه گروه می باشد.برای اینکه ببینید یک کاربر در چه گروه هایی عضو شده است می توانید بعد از لاگین کردن در آن از دستور groups استفاده کنید.

تعیین کردن shell پیش فرض کاربر

با استفاده از پارامتر s-  می توانید شل یوزر ایجاد شده را مشخص کنید. مثلا :

sudo useradd -s /bin/bash amirreza

در این مثال کاربر amirreza با شل bash  ایجاد خواهد شد.

ساختن یک کاربر با تاریخ انقضا

با استفاده از پارامتر e- می توانید یک کاربر با تاریخ انقضا درست کنید. این تاریخ باید با فرمت YYYY-MM-DD وارد شود.

مثلا

 sudo useradd -e 2021-01-22 amirreza

تنظیم password برای user

برای این منظور می توانید از دستور sudo passwd username استفاده کنید.و سپس با یوزرنیم و پسورد جدید به یوزر لاگین کنید.

مشاهده و تغییر در مقادیر default در دستور useradd

برای مشاهده مقادیر پیش فرض این دستور می توانید از useradd -D استفاده کنید.شما می توانید این مقادیر پیش فرض را تغییر دهید. برای این کار هم می توانید مستقیما فایل /etc/default/useradd را ویرایش کنید و هم می توانید با استفاده از پارامتر مورد نظر در ادامه پارامتر D- این کار را انجام دهید.

مثلا :

sudo useradd - D -s /bin/bash -g amir

دستور بالا شل پیشفرض را bash قرار می دهد. و primary group  را در صورت ایجاد نشدن amir تنظیم می کند.

ایجاد تغییر در خصوصیات user با دستور usermod

چنانچه بعد از ایجاد یک یوزر نیاز به تغییر در خصوصیات آن (UID ,GID, SHELL , ...) داشتید ، می توانید از دستور sudo usermod استفاده کنید.پارامتر های این دستور شبیه به دستور useradd می باشد.مثال :

sudo usermod -s /bin/sh amirreza

 این دستور شل یوزر amirreza را تغییر می دهد.

حذف یوزر ها و گروه ها در linux

برای حذف user و یا  group  می توانید به ترتیب از دستورات userdel  و  groupdel  استفاده کنید.استفاده از پارامتر r- در دستور userdel به صورت recursive تمامی فایل ها و اطلاعات مربوط به یک یوزر را حذف می کند.

  • نکته : برای ایجاد کردن یوزر ها در linux دستور دیگری با نام adduser نیز وجود دارد. این دستور از لحاظ عملی تفاوت چندانی با دستور useradd ندارد. فقط interactive می باشد و پارامتر های متفاوتی دارد.

دستور useradd پارامتر های مختلفی داره که در این مقاله سعی کردم موارد کاربردی تر  اونو معرفی کنم. امیدوارم بدردتون خورده باشه :)


امیررضا حسینی
امیررضا حسینی

کارشناس شبکه

امیررضا حسینی دانشجوی کامپیوتر فعال در زمینه شبکه های کامپیوتری

نظرات