سرور اوبونتو - حقوق کاربر اداری. مدیریت کاربر تغییر رمز عبور کاربر

3 مه 2016 12:20 ب.ظ 27 946 بازدید | بدون نظر

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

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

این راهنما به شما نحوه ایجاد حساب های کاربری جدید، انتقال حقوق sudo و حذف کاربران را آموزش می دهد.

افزودن کاربر

برای افزودن یک کاربر جدید به جلسه root، تایپ کنید:

در حالی که در یک جلسه کاربر غیر ریشه با دسترسی sudo، می توانید یک کاربر جدید با دستور اضافه کنید:

sudo addusernewuser

این تیم ارائه خواهد داد:

  • یک رمز عبور تنظیم و تأیید کنید.
  • اطلاعات کاربر اضافی را وارد کنید. این اختیاری است. برای پذیرش اطلاعات پیش فرض، کافی است Enter را فشار دهید.
  • صحت اطلاعات ارائه شده را تأیید کنید (Enter را فشار دهید).

کاربر جدید آماده است! اکنون می توانید با استفاده از آن به سرور متصل شوید.

تنظیم مجوزهای sudo

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

  1. کاربر را به گروه sudo اضافه کنید
  2. تنظیمات sudo را در /etc/sudoers ویرایش کنید

افزودن کاربر به گروه sudo

در اوبونتو 16.04، همه کاربران گروه sudo به طور پیش فرض به دستور sudo دسترسی دارند.

برای اینکه بدانید یک کاربر جدید به کدام گروه تعلق دارد، تایپ کنید:

دستور برمی گردد:

کاربر جدید: کاربر جدید

به طور پیش فرض، هر کاربر جدید سیستم فقط در گروهی به همین نام قرار می گیرد. برای افزودن کاربر به یک گروه، تایپ کنید:

usermod -aG sudo newuser

پرچم -aG کاربر را به گروه های فهرست شده اضافه می کند.

تست تنظیمات

اکنون باید مطمئن شویم که کاربر جدید به دستور sudo دسترسی دارد.

به طور پیش فرض، دستورات در یک جلسه کاربر جدید به صورت زیر اجرا می شوند:

برای اجرای یک دستور به عنوان مدیر، sudo را به ابتدای دستور اضافه کنید:

sudo some_command

سپس سیستم رمز عبور کاربر فعلی را می خواهد.

ویرایش فایل /etc/sudoers

یک راه جایگزین برای گسترش امتیازات کاربر، ویرایش فایل sudoers است. برای این کار از دستور visudo استفاده می شود که به شما امکان می دهد فایل /etc/sudoers را در یک ویرایشگر باز کنید و به صراحت امتیازات هر کاربر سیستم را مشخص کنید.

توصیه می شود فایل sudoers را فقط با visudo ویرایش کنید، زیرا این دستور از چندین ویرایش همزمان جلوگیری می کند و محتویات را قبل از بازنویسی فایل بررسی می کند. این از پیکربندی نادرست sudo که می تواند منجر به از دست دادن امتیازات شود جلوگیری می کند.

اگر در یک جلسه روت هستید، تایپ کنید:

در یک جلسه کاربر غیر ریشه با دسترسی sudo، تایپ کنید:

به طور معمول، visudo /etc/sudoers را در ویرایشگر vi باز می کند، که ممکن است برای مبتدیان دشوار باشد. به طور پیش‌فرض در نصب‌های جدید اوبونتو، visudo از ویرایشگر نانویی آشناتر استفاده می‌کند. از کلیدهای جهت دار برای حرکت مکان نما استفاده کنید. خط را پیدا کنید:

root ALL=(ALL:ALL) ALL

این خط را کپی کرده و در زیر جایگذاری کنید و نام کاربری را که می‌خواهید حقوق ابرکاربر را به آن منتقل کنید جایگزین root کنید.

root ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL

این خط را برای هر کاربری که به امتیازات گسترده نیاز دارد اضافه کنید. ذخیره کنید و فایل را ببندید.

حذف کاربران

اکانت های غیر ضروری را می توان حذف کرد.

برای حذف کاربر در حین خروج از فایل های خود، تایپ کنید:

به عنوان ریشه
متوهم
به عنوان یک کاربر معمولی با امتیازات گسترده:
sudo deluser newuser

برای حذف یک کاربر به همراه فهرست اصلی آنها، از:

در جلسه کاربر ریشه
deluser --remove-home newuser
در یک جلسه کاربر با امتیازات گسترده:
sudo deluser --remove-home newuser

اگر کاربر راه دور دارای حقوق ابرکاربر بود، باید با ویرایش فایل، این حقوق را از بین ببرید:

visudo
یا
sudo visudo
root ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL # این خط را حذف کنید

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

نتیجه

مدیریت کاربر در هنگام مدیریت سرور اوبونتو 16.04 یک مهارت ضروری است. به شما این امکان را می دهد که کاربران را از هم جدا کنید و فقط به آنها دسترسی داشته باشید که برای کار نیاز دارند.

برای اطلاعات بیشتر در مورد راه اندازی sudo، ما را بررسی کنید.

برچسب ها: ,

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

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

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

    اگر به دلایلی می خواهید اکانت root را فعال کنید، به سادگی به آن رمز عبور بدهید:

    تنظیمات با رمزهای عبور root پشتیبانی نمی شوند.

    sudo passwd

    Sudo از شما رمز عبور را درخواست می کند و سپس از شما می خواهد که یک رمز عبور جدید برای root را مطابق شکل زیر ارائه کنید:

    رمز عبور برای نام کاربری: (رمز عبور خود را وارد کنید) رمز عبور جدید یونیکس را وارد کنید: (یک رمز عبور جدید برای root وارد کنید)رمز عبور جدید یونیکس را دوباره تایپ کنید: (تکرار رمز عبور جدید برای روت) passwd: رمز عبور با موفقیت به روز شد

    برای غیرفعال کردن رمز عبور حساب ریشه، از دستور passwd زیر استفاده کنید:

    ریشه sudo passwd -l

    با این حال، برای غیرفعال کردن خود حساب ریشه، از دستور زیر استفاده کنید:

    usermod --expiredate 1

    شما باید با خواندن صفحه مرد در Sudo بیشتر بخوانید:

    مرد سودو

به طور پیش فرض، کاربر اولیه ایجاد شده توسط نصب کننده اوبونتو عضوی از گروه "sudo" است که به عنوان کاربر مجاز sudo به فایل /etc/sudoers اضافه می شود. اگر می‌خواهید به هر حساب دیگری از طریق sudo دسترسی ریشه کامل بدهید، به سادگی آنها را به گروه sudo اضافه کنید.

افزودن و حذف کاربران

فرآیند مدیریت کاربران و گروه‌های محلی ساده است و تفاوت بسیار کمی با سایر سیستم‌عامل‌های گنو/لینوکس دارد. اوبونتو و سایر توزیع‌های مبتنی بر دبیان استفاده از بسته «adduser» را برای مدیریت حساب تشویق می‌کنند.

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

    نام کاربری sudo adduser

    برای حذف یک حساب کاربری و گروه اصلی آن، از دستور زیر استفاده کنید:

    نام کاربری sudo deluser

    حذف یک حساب، پوشه اصلی مربوطه را حذف نمی کند. این به شما بستگی دارد که آیا می خواهید پوشه را به صورت دستی حذف کنید یا آن را مطابق با سیاست های حفظ دلخواه خود نگه دارید.

    به یاد داشته باشید، اگر اقدامات احتیاطی لازم را انجام نداده باشید، هر کاربری که بعداً با همان UID/GID مالک قبلی اضافه شود، اکنون به این پوشه دسترسی خواهد داشت.

    ممکن است بخواهید این مقادیر UID/GID را به چیزی مناسب تر، مانند اکانت ریشه، تغییر دهید و شاید حتی محل پوشه را برای جلوگیری از درگیری های بعدی تغییر دهید:

    sudo chown -R root:root /home/username/ sudo mkdir /home/archived_users/ sudo mv /home/username /home/archived_users/

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

    sudo passwd -l نام کاربری sudo passwd -u نام کاربری

    برای افزودن یا حذف یک گروه شخصی، به ترتیب از دستور زیر استفاده کنید:

    نام گروه sudo addgroup نام گروه sudo delgroup

    برای افزودن کاربر به یک گروه، از دستور زیر استفاده کنید:

    نام کاربری sudo adduser نام گروه

امنیت نمایه کاربر

هنگامی که یک کاربر جدید ایجاد می شود، ابزار adduser یک دایرکتوری خانگی کاملاً جدید به نام /home/username ایجاد می کند. نمایه پیش فرض بر اساس محتویات یافت شده در فهرست راهنمای /etc/skel که شامل تمام اصول نمایه است، مدل می شود.

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

    برای تأیید مجوزهای دایرکتوری اصلی کاربر فعلی خود، از نحو زیر استفاده کنید:

    ls -ld /home/username

    خروجی زیر نشان می دهد که دایرکتوری /home/username دارای مجوزهای قابل خواندن جهانی است:

    drwxr-xr-x 2 نام کاربری نام کاربری 4096 2007-10-02 20:03 نام کاربری

    با استفاده از دستور زیر می توانید مجوزهای خواندنی جهان را حذف کنید:

    sudo chmod 0750 /home/username

    برخی از افراد تمایل دارند از گزینه بازگشتی (-R) بی رویه استفاده کنند که تمام پوشه ها و فایل های فرزند را تغییر می دهد، اما این ضروری نیست و ممکن است نتایج نامطلوب دیگری به همراه داشته باشد. دایرکتوری والد به تنهایی برای جلوگیری از دسترسی غیرمجاز به هر چیزی که زیر والد است کافی است.

    یک رویکرد بسیار کارآمدتر برای این موضوع، اصلاح مجوزهای پیش‌فرض جهانی adduser هنگام ایجاد پوشه‌های خانگی کاربر است. به سادگی فایل /etc/adduser.conf را ویرایش کنید و متغیر DIR_MODE را به چیزی مناسب تغییر دهید، به طوری که همه فهرست های خانه جدید مجوزهای صحیح را دریافت کنند.

    پس از تصحیح مجوزهای دایرکتوری با استفاده از هر یک از تکنیک های ذکر شده قبلی، نتایج را با استفاده از نحو زیر تأیید کنید:

    ls -ld /home/username

    نتایج زیر نشان می دهد که مجوزهای قابل خواندن در جهان حذف شده اند:

    drwxr-x--- 2 نام کاربری نام کاربری 4096 2007-10-02 20:03 نام کاربری

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

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

حداقل طول رمز عبور

به طور پیش‌فرض، اوبونتو به حداقل طول رمز عبور 6 کاراکتری و همچنین برخی بررسی‌های اولیه آنتروپی نیاز دارد. این مقادیر در فایل /etc/pam.d/common-password کنترل می‌شوند که در زیر مشخص شده است.

رمز عبور pam_unix.so مبهم sha512

اگر می خواهید حداقل طول را روی 8 کاراکتر تنظیم کنید، متغیر مناسب را به min=8 تغییر دهید. اصلاح در زیر مشخص شده است.

رمز عبور pam_unix.so مبهم sha512 minlen=8

بررسی‌های اولیه آنتروپی رمز عبور و قوانین حداقل طول برای سرپرست با استفاده از دستورات سطح sudo برای تنظیم یک کاربر جدید اعمال نمی‌شود.

انقضای رمز عبور

هنگام ایجاد حساب‌های کاربری، باید حداقل و حداکثر سن گذرواژه را در نظر بگیرید که کاربران را مجبور می‌کند پسوردهای خود را پس از انقضا تغییر دهند.

    برای مشاهده آسان وضعیت فعلی یک حساب کاربری، از دستور زیر استفاده کنید:

    sudo chage -l نام کاربری

    خروجی زیر حقایق جالبی را در مورد حساب کاربری نشان می دهد، یعنی اینکه هیچ سیاستی اعمال نشده است:

    آخرین تغییر رمز عبور: 20 ژانویه 2015 گذرواژه منقضی می شود: هرگز رمز عبور غیرفعال: هرگز حساب منقضی نمی شود: هرگز حداقل تعداد روز بین تغییر رمز عبور: 0 حداکثر روز بین تغییر رمز عبور: 99999 تعداد روزهای هشدار قبل از انقضای رمز عبور: 7

    برای تنظیم هر یک از این مقادیر، به سادگی از نحو زیر استفاده کنید و دستورات تعاملی را دنبال کنید:

    sudo نام کاربری را تغییر دهید

    در زیر همچنین نمونه‌ای از نحوه تغییر دستی تاریخ انقضای صریح (-E) به 01/31/2015، حداقل سن رمز عبور (-m) 5 روز، حداکثر سن رمز عبور (-M) 90 روز، عدم فعالیت وجود دارد. دوره (-I) 5 روز پس از انقضای رمز عبور، و یک دوره زمانی هشدار (-W) 14 روز قبل از انقضای رمز عبور:/home/username/.ssh/authorized_keys .

    دایرکتوری .ssh/ را در پوشه اصلی کاربر حذف یا تغییر نام دهید تا از قابلیت های بیشتر احراز هویت SSH جلوگیری کنید.

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

    چه کسی | نام کاربری grep (برای دریافت ترمینال pts/#) sudo pkill -f pts/#

    دسترسی SSH را فقط به حساب های کاربری که باید آن را داشته باشند محدود کنید. به عنوان مثال، می توانید گروهی به نام "sshlogin" ایجاد کنید و نام گروه را به عنوان مقدار مرتبط با متغیر AllowGroups که در فایل /etc/ssh/sshd_config قرار دارد اضافه کنید.

    AllowGroups sshlogin

    سپس کاربران SSH مجاز خود را به گروه "sshlogin" اضافه کنید و سرویس SSH را مجددا راه اندازی کنید.

    sudo adduser نام کاربری sshlogin sudo systemctl sshd.service را راه اندازی مجدد کنید

    احراز هویت پایگاه داده کاربر خارجی

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

افزودن و حذف کاربران یکی از کارهای اساسی است که ممکن است هنگام کار بر روی یک سرور جدید با سیستم عامل خانواده لینوکس با آن مواجه شوید. به عنوان یک قاعده، پس از نصب یک سیستم جدید، شما فقط یک کاربر دارید - superuser.

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

در این صورت، شما قادر خواهید بود با استفاده از یک کاربر دارای حقوق sudo، وظایف اداری را انجام دهید. در این آموزش، نحوه ایجاد کاربران، دادن حقوق sudo و حذف آنها را خواهید آموخت.

نحوه اضافه کردن کاربر

# addusernewuser

اگر می خواهید از یک کاربر با حقوق sudo برای ایجاد یک کاربر جدید استفاده کنید، دستور کمی متفاوت به نظر می رسد:

$ sudo addusernewuser

(در این صورت به جای newuser می توانید کلمه دیگری را مشخص کنید، زیرا این نام کاربر جدید خواهد بود.)

پس از وارد کردن دستور، باید به طور متوالی به چندین سوال پاسخ دهید، یعنی:

  • رمز عبور کاربر جدید را وارد و تأیید کنید.
  • اطلاعات اضافی در مورد کاربر جدید بنویسید. انجام این کار اختیاری است. اگر نمی خواهید چیزی اضافه کنید، فقط Enter را فشار دهید.
  • در نهایت، باید صحت تمام اطلاعات وارد شده را تأیید کنید - برای این کار باید y (بله - بله) را فشار دهید.

کاربر جدید اکنون ایجاد شده و آماده استفاده است! می توانید با استفاده از رمز عبوری که قبلاً تعیین کرده اید وارد آن شوید.

اگر می خواهید به کاربر حقوق مدیریتی بدهید، بخش بعدی را بخوانید.

نحوه دادن حقوق sudo به کاربر

اگر به یک کاربر جدید نیاز دارید تا بتواند دستورات اداری (ریشه) را اجرا کند، باید به آن کاربر دسترسی sudo بدهید. دو راه برای انجام این کار وجود دارد: یا این کاربر را به گروه کاربری ایجاد شده که می تواند دستورات sudo را اجرا کند اضافه کنید، یا با ایجاد تغییراتی در پیکربندی ابزار sudo، این حق را به کاربر بدهید. بیایید هر دو گزینه را در نظر بگیریم.

افزودن یک کاربر جدید به گروه sudo

به طور پیش فرض، در اوبونتو 16.04، همه کاربرانی که به گروه مناسب تعلق دارند، حق اجرای دستورات sudo را دارند.

برای اینکه ببینید کاربر ایجاد شده در حال حاضر در کدام گروه قرار دارد، از دستور زیر استفاده کنید:

$ groupnewuser

در نتیجه، روی صفحه خواهید دید:

کاربر جدید: کاربر جدید

زیرا به طور پیش فرض هر کاربر جدید در گروه خود قرار دارد که همزمان با ایجاد خود کاربر ایجاد می شود و نامی مشابه دارد. برای اضافه کردن کاربر به گروه دیگر، باید دستور زیر را در خط فرمان بنویسید:

$ usermod -aG sudo newuser

(به شما یادآوری می کنم که به جای newuser باید نام کاربری را که می خواهید به گروهی با حقوق مدیریت منتقل کنید بنویسید.)

سوئیچ -aG برای اضافه شدن کاربر به یکی از گروه هایی که قبلاً در لیست وجود دارد، مورد نیاز است.

بررسی حقوق sudo

اکنون باید بررسی کنید که آیا کاربر شما می تواند دستورات مدیریتی را اجرا کند یا خیر.

دستور $

اگر sudo را در ابتدا بنویسید، می توانید همان دستور را اجرا کنید، اما با حقوق مدیریت:

دستور sudo $

در این صورت باید رمز عبور حساب کاربری این کاربر را وارد کنید.

شفاف سازی حقوق کاربر در /etc/sudoers

یک راه جایگزین برای دادن حقوق sudo به کاربر، تنظیم یک فایل پیکربندی است. شما باید از دستور visudo برای باز کردن فایل پیکربندی /etc/sudoers در ویرایشگر پیش فرض خود استفاده کنید و مجوزها را به طور خاص برای آن کاربر تنظیم کنید.

توصیه می شود از دستور visudo برای ویرایش فایل پیکربندی استفاده کنید: اولاً فایل را در برابر چندین تغییر همزمان محافظت می کند و ثانیاً سینتکس فایل را قبل از بازنویسی بررسی می کند. با تشکر از این، وضعیتی نخواهید داشت که sudo را به درستی پیکربندی کرده باشید، و سپس نمی توانید تغییرات لازم را انجام دهید، زیرا حقوق اداری را از دست داده اید.

اگر از کاربری با حقوق sudo استفاده می‌کنید، دستور مورد نیاز به شکل زیر خواهد بود:

به طور معمول، دستور visudo /etc/sudoers را در ویرایشگر vi باز می کند، که می تواند کاربران بی تجربه را گیج کند. بنابراین، اوبونتو 16.04 از nano به جای vi استفاده می کند، ابزاری که برای اکثر کاربران بسیار آشناتر است. از کلیدهای جهت دار روی صفحه کلید خود برای پیدا کردن خط مورد نیاز خود استفاده کنید. چیزی شبیه این به نظر می رسد:

Root ALL=(ALL:ALL) ALL

این متن را دقیقاً در زیر کپی کنید و به جای "root" نام کاربری را که می خواهید حق اجرای دستورات sudo را اعطا کنید، بنویسید. چیزی شبیه به این خواهد بود:

Root ALL=(ALL:ALL) ALL newuser ALL=(ALL:ALL) ALL

برای هر کاربر جدید، یک ردیف جدید باید اضافه شود. پس از انجام تمام تغییرات لازم، فایل را با فشار دادن Ctrl-X و سپس Y و Enter برای تایید، ذخیره و ببندید.

نحوه حذف کاربران

اگر دیگر به یکی از کاربران ایجاد شده نیاز ندارید، بهترین راه حل حذف آن است.

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

# کاربر جدید گمراه کننده

اگر از کاربری با حقوق sudo استفاده می کنید، دستور به شکل زیر خواهد بود:

$ sudo deluser newuser

برای حذف یک کاربر به همراه فهرست اصلی آنها، به عنوان ابرکاربر، باید وارد کنید:

# deluser --remove-home newuser

برای کاربران دارای حقوق sudo:

$ sudo deluser --remove-home newuser

و اگر می خواهید حقوق sudo را از یک کاربر راه دور حذف کنید، باید فایل پیکربندی را باز کنید:

(اگر از سوپرکاربر)
یا

(اگر از یک کاربر با حقوق sudo)

Root ALL=(ALL:ALL) ALL newuser ALL=(ALL:ALL) ALL # این خط را حذف کنید.

این امر ضروری است تا در آینده یک کاربر ایجاد شده با همین نام به طور تصادفی حقوق sudo را دریافت نکند.

نتیجه

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

در این آموزش، نحوه حذف یک کاربر لینوکس به همراه اطلاعات و فهرست اصلی آنها را بررسی خواهیم کرد.

اگر شما یک مدیر سیستم در یک شرکت بزرگ هستید، به احتمال زیاد، حذف کاربران لینوکس یک کار نسبتاً رایج برای شماست. هنگامی که دیگر نیازی به حساب کاربری نیست یا کاربر سازمان را ترک می کند، برای جلوگیری از باقی ماندن حفره های امنیتی، حساب باید حذف شود.

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

قبل از رفتن به دنیای واقعی، بیایید کمی تمرین کنیم، بیایید دو کاربر lostt و lostt1 را به همراه فهرست‌های اصلی آنها ایجاد کنیم و سپس آنها را حذف کنیم:

اضافه کننده گم شد
$passwd گم شد

adduser lostt1
$ passwd lostt1

در اینجا دستور adduser برای ایجاد یک حساب کاربری و passwd برای ایجاد رمز عبور استفاده می شود.

بیایید نگاهی به نحوه حذف یک کاربر لینوکس در ترمینال بیندازیم. این کار با استفاده از دستور -deluser در سیستم های دبیان و مشتق شده و در RedHat - userdel انجام می شود. بیایید نگاهی دقیق تر به این دو ابزار کمکی بیندازیم.

شرح هذیان

نحو دستور deluser بسیار ساده است:

کاربر پارامترهای $deluser

تنظیمات فرمان deluser در فایل /etc/deluser.conf قرار دارد، در میان سایر تنظیمات، مشخص می‌کند که با پوشه و فایل‌های اصلی کاربر چه باید کرد.

با اجرای دستور می توانید این تنظیمات را مشاهده و تغییر دهید:

vi /etc/deluser.conf

بیایید نگاهی دقیق تر به این تنظیمات بیندازیم:

  • REMOVE_HOME- فهرست اصلی کاربر را حذف کنید
  • REMOVE_ALL_FILES- حذف تمامی فایل های کاربری
  • پشتیبان گیری- از فایل های کاربر نسخه پشتیبان تهیه کنید
  • BACKUP_TO- پوشه پشتیبان
  • ONLY_IF_EMPTY- گروه کاربری را در صورت خالی بودن حذف کنید.

این تنظیمات رفتار پیش‌فرض ابزار را هنگام حذف کاربر تعیین می‌کنند، البته، می‌توان با استفاده از پارامترهای دستور، آنها را لغو کرد.

پارامترهای زیر پشتیبانی می شوند، آنها مشابه تنظیمات هستند، اما گزینه های بیشتری وجود دارد:

  • --سیستم- فقط در صورتی حذف کنید که این کاربر سیستم باشد
  • --پشتیبان گیری- پشتیبان گیری از فایل های کاربر
  • -- پشتیبان گیری به- پوشه پشتیبان
  • --حذف-خانه- پوشه خانه را حذف کنید
  • --حذف-همه-فایل ها- حذف تمام فایل های کاربر در سیستم فایل

توضیحات userdel

ابزار userdel کمی متفاوت عمل می‌کند، هیچ فایل تنظیماتی در اینجا وجود ندارد، اما گزینه‌هایی وجود دارد که می‌توانید از آن‌ها استفاده کنید تا به ابزار بگویید چه کاری انجام دهد. نحو مشابه است:

کاربر پارامترهای $ userdel

  • -f، -- نیرو- حذف اجباری حتی اگر کاربر هنوز وارد سیستم شده باشد
  • -r، -- حذف- دایرکتوری خانگی کاربر و فایل های او را در سیستم حذف کنید.
  • -Z- تمام اشیاء SELinux را برای این کاربر حذف کنید.

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

قفل شدن حساب کاربری

می توانید از ابزار passwd برای قفل کردن حساب کاربری استفاده کنید. این کار دسترسی کاربر به سیستم را ممنوع می کند و از شروع فرآیندهای جدید جلوگیری می کند:

دستور passwd را با گزینه --lock اجرا کنید:

passwd -- از دست دادن قفل

passwd: اطلاعات انقضای رمز عبور تغییر کرده است.

تمام فرآیندهای کاربر در حال اجرا را از بین ببرید

حالا بیایید تمام فرآیندهایی که به عنوان کاربر اجرا می شوند را پیدا کرده و آنها را بکشیم.

یافتن فرآیندها با pgrep:

با ارسال pid هر یک از آنها به دستور ps، می توانید با جزئیات بیشتر ببینید که این فرآیندها چیستند:

ps -f --pid $(pgrep -u lostt)

UID PID PPID C STIME TTY STAT TIME CMD
باخت 14684 14676 0 22:15 امتیاز/2 س 0:00 -باش
lostt 14735 14684 0 22:15 pts/2 S+ 0:00 vi text

اکنون که مطمئن شدید هیچ چیز مهمی در آن وجود ندارد، می توانید با دستور killall تمام فرآیندها را بکشید:

Killall -9 -u باخت

گزینه -9 به برنامه می گوید که یک SIGKILL به این فرآیندها ارسال کند و -u نام کاربری را مشخص می کند.

در سیستم های مبتنی بر Red Hat، برای استفاده از killall باید بسته psmisc را نصب کنید:

sudo yum psmisc را نصب کنید

پشتیبان گیری از اطلاعات کاربر

این به هیچ وجه ضروری نیست، اما برای یک پروژه جدی، پشتیبان گیری از فایل های کاربر اضافی نخواهد بود، به خصوص اگر فایل های مهمی در آنجا وجود داشته باشد. برای انجام این کار، می توانید به عنوان مثال از ابزار tar استفاده کنید:

tar jcvf /user-backups/losst-backup.tar.bz2 /home/losst

حذف یک حساب کاربری

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

deluser --remove-home lostt

userdel -- حذف ضرر

اگر می‌خواهید تمام فایل‌های متعلق به یک کاربر در سیستم را حذف کنید، از گزینه --remove-all-files استفاده کنید، فقط مراقب آن باشید، زیرا فایل‌های مهم را می‌توان رونویسی کرد:

deluser --remove-all-files lostt

اکنون کاربر به همراه فایل ها و فهرست اصلی خود به طور کامل از سیستم شما حذف شده است.

حذف کاربر در اوبونتو

باز کن تنظیمات سیستم:

آیتم قابل دسترسی حساب ها:

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

حالا برای حذف یک کاربر در لینوکس کافیست با ماوس روی آن کلیک کنید و سپس روی علامت منفی کلیک کنید.

در پنجره ای که باز می شود، می توانید انتخاب کنید که با فایل های کاربر چه کاری انجام دهید:

طبیعتا فقط پوشه home حذف می شود، در مورد همه فایل ها صحبت نمی کنیم. و برای حذف صحیح، کاربر نباید در سیستم کار کند.

نتیجه گیری

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

فرض کنید من یک کاربر جدید Ubuntu Linux 16.04.xx LTS هستم. من بلافاصله تعدادی سوال دارم. چگونه یک کاربر sudo جدید در سرور خود ایجاد کنم؟ چگونه با استفاده از گزینه خط فرمان در اوبونتو کاربر جدیدی را به فایل sudoer اضافه کنیم؟

در لینوکس (و به طور کلی یونیکس) یک ابرکاربر به نام root وجود دارد. کاربر root می تواند هر کاری و هر کاری را انجام دهد و بنابراین استفاده عادی از سیستم می تواند بسیار خطرناک شود. می توانید دستور را اشتباه وارد کنید و سیستم را از بین ببرید. دستور sudo به کاربر مجاز اجازه می دهد تا دستوری را به عنوان ابرکاربر (کاربر ریشه) یا کاربر دیگری که در خط مشی امنیتی مشخص شده است اجرا کند. اغلب sudo در سرورها برای اعطای حقوق و امتیازات مدیریتی به کاربران عادی استفاده می شود. این آموزش سریع به شما نشان می دهد که چگونه یک کاربر sudo در اوبونتو ایجاد کنید.

برای ایجاد یک کاربر sudo در اوبونتو چند مرحله باید دنبال کنید

اطلاعات بیشتر در مورد گروه مدیریت و گروه sudo در سرور اوبونتو

اعضای گروه اداری می توانند از امتیازات root برخوردار شوند. همه اعضای گروه sudo هر دستوری را در سرور اوبونتو اجرا می کنند. بنابراین فقط کاربر را به گروه sudo در سرور اوبونتو اضافه کنید. قابلیت های گروه مدیریت از اوبونتو 12.04 به بعد به میزان قابل توجهی کاهش یافته است. بنابراین، گروه مدیریت دیگر وجود ندارد، یا به سادگی در اوبونتو 12.04 یا بالاتر استفاده می شود. دلیل اینکه چرا این کار می کند:

# grep -B1 -i "^%sudo" /etc/sudoers

$ sudo grep -B1 -i "^%sudo" /etc/sudoers

# به اعضای گروه sudo اجازه دهید هر دستوری را اجرا کنند %sudo ALL=(ALL:ALL) ALL

بیایید به چند مثال عملی نگاه کنیم.

چگونه با استفاده از خط فرمان یک کاربر جدید به نام vivek را به sudo اضافه کنیم؟

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

$ ssh [ایمیل محافظت شده]$ ssh [ایمیل محافظت شده] { [ایمیل محافظت شده]:/root) #

# adduser vivek

$ sudo adduser vivek

شکل 01: چگونه یک کاربر جدید در اوبونتو اضافه کنیم

نمونه هایی از خروجی داده های ممکن:

نحوه ایجاد کاربر sudo در اوبونتو برای حساب vivek

دستور زیر را وارد کنید:

# adduser vivek sudo

یا از دستور usermod برای اضافه کردن یک کاربر به یک گروه در لینوکس استفاده کنید:

# usermod -aG sudo vivek

$ sudo usermod -aG sudo vivek

$ sudo adduser vivek sudo

نمونه هایی از خروجی داده های ممکن:

شکل 02: کاربر vivek را به sudo اضافه کنید تا حقوق مدیریت را دریافت کنید

کاربر جدید و عضو گروه را با:

$id vivek

نمونه هایی از خروجی داده های ممکن:

شکل 03: نمایش اطلاعات کاربر و گروه

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

$ ssh [ایمیل محافظت شده]

مطمئن شوید که vivek می تواند از دستور sudo استفاده کند:

$ sudo cat /etc/sudoers

اولین باری که از دستور sudo استفاده می کنید، رمز عبور حساب vivek از شما خواسته می شود. بنابراین رمز عبور vivek را برای دسترسی روت وارد کنید. هر نوع دستوری با sudo باید با حقوق ریشه برای حساب vivek اجرا شود. برای بدست آوردن پوسته ریشه، تایپ کنید:

$ sudo -s

نمونه هایی از خروجی داده های ممکن:

شکل 03: تست دسترسی sudo برای حساب کاربری vivek

و بنابراین شما آن را انجام دادید. اکنون می توانید به سایر کاربران اجازه دهید sudo را روی سرور اوبونتو اجرا کنند و به کاربران حقوق مدیریت بدهید.