نحوه غیرفعال کردن ورود کاربر root در لینوکس #
rootحساب کاربری پیشفرض ادمین یا کاربر ارشد در لینوکس است. غیرفعال کردن این rootکاربر تضمین میکند که فقط کاربران خاص میتوانند وظایف مدیریتی را انجام دهند و بستههای خاصی را با امتیازات sudo (super user do) روی سیستم شما نصب کنند. شما فقط در rootصورتی باید این کاربر را غیرفعال کنید که یک کاربر غیر ریشه با امتیازات sudo برای اجرای تمام وظایف مدیریتی داشته باشید.
این مقاله نحوه غیرفعال کردن ورود به سیستم root در لینوکس و اجازه دادن به فقط کاربران sudo برای انجام وظایف مدیریتی را توضیح میدهد.
پیشنیازها #
قبل از شروع، شما نیاز دارید:
- به عنوان یک کاربر غیر ریشه با امتیازات sudo به یک نمونه لینوکس دسترسی داشته باشید .
غیرفعال کردن ورود به SSH توسط کاربر ریشه #
پوسته امن (SSH) به کاربران اجازه میدهد تا از راه دور با استفاده از یک جفت نام کاربری و رمز عبور معتبر یا کلیدهای SSH به یک ایستگاه کاری لینوکس دسترسی پیدا کنند. غیرفعال کردن rootورود به سیستم SSH تمام rootدرخواستهای اتصال کاربر را خاتمه میدهد و فقط اتصالات کاربر غیر ریشه را میپذیرد. برای غیرفعال کردن ورود به سیستم SSH در ایستگاه کاری خود، مراحل زیر را دنبال کنید root.
/etc/ssh/sshd_configبا استفاده از یک ویرایشگر متن مانند باز کنیدnano.کنسول$ sudo nano /etc/ssh/sshd_config- دستورالعمل زیر را پیدا کنید
PermitRootLoginو مقدار آن را از به تغییر دهیدyesتا ورود کاربر از طریق SSHnoغیرفعال شودroot.اینیPermitRootLogin noفایل را ذخیره کنید و ببندید.
- برای اعمال تغییرات پیکربندی، سرویس SSH را مجدداً راهاندازی کنید.کنسول
$ sudo systemctl restart ssh
غیرفعال کردن دسترسی به پوسته کاربر ریشه #
غیرفعال کردن دسترسی به rootپوسته کاربر، ورود مستقیم به rootکاربر و sudo suدستور را غیرفعال میکند. این به کاربران sudo اجازه میدهد تا بدون ورود به پوسته کاربر، وظایف مدیریتی را در سیستم انجام دهند . برای غیرفعال کردن ورود کاربر با استفاده از فایل موجود در ایستگاه کاری لینوکس خود، rootمراحل زیر را دنبال کنید .root/etc/passwd
- فایل را باز کنید
/etc/passwd.کنسول$ sudo nano /etc/passwd rootپوسته کاربر را از/bin/bashبه تغییر دهید/sbin/nologin.اینیroot:x:0:0:root:/root:/sbin/nologin
فایل را ذخیره کنید و ببندید.
این گزینه ، پوسته کاربر
/sbin/nologinپیشفرض را غیرفعال میکند و وقتی کاربران سعی میکنند به عنوان کاربر ریشه وارد سیستم شوند، پیامی نمایش میدهد .rootnologinaccount is not available/etc/passwdبرای غیرفعال کردن هرگونه تغییر در فایل، ویژگی تغییرناپذیر (Immutable) را در آن فعال کنید .کنسول$ sudo chattr +i /etc/passwd- برای تأیید غیرفعال بودن کاربر، دستور زیر را اجرا کنید
root. در صورت درخواست، رمز عبور کاربر sudo خود را وارد کنید.کنسول$ sudo suخروجی:
This account is currently not available.
ایجاد یک MOTD سفارشی #
پیکربندی Message of the Day( motd) هنگام ورود کاربران به ایستگاه کاری لینوکس شما، یک اعلان یا پیام سفارشی نمایش میدهد. مراحل زیر را برای ایجاد یک motd سفارشی دنبال کنید تا به کاربران دارای امتیاز دستور دهید هنگام انجام وظایف مدیریتی به جای تلاش برای دسترسی به پوسته کاربر، از دستور sudo استفاده کنند root.
- فایل را باز کنید
/etc/motd.کنسول$ sudo nano /etc/motd - پیام زیر را به فایل اضافه کنید تا به عنوان motd استفاده شود.متن
Welcome to the server Note: The root account is disabled. Use sudo to execute commands and perform administrative tasks.
فایل را ذخیره کنید و ببندید.
ورود کاربر ریشه را آزمایش کنید #
rootبرای آزمایش و تأیید غیرفعال بودن ورود کاربر در ایستگاه کاری لینوکس خود، مراحل زیر را دنبال کنید .
sudo suبرای دسترسی به پوسته کاربر از دستور استفاده کنیدroot.کنسول$ sudo suبا استفاده از دستور زیر، مطمئن شوید که ورود شما ناموفق است:
This account is currently not available.- با استفاده از SSH به عنوان کاربر، به ایستگاه کاری لینوکس خود دسترسی پیدا کنید
root.کنسول$ ssh root@Server-IPتأیید کنید که اتصال SSH برقرار نمیشود، حتی هنگام استفاده از اعتبارنامههای صحیح مشابه خروجی زیر.
Permission denied, please try again. ... Received disconnect from Server-IP port 22:2: Too many authentication failures Disconnected from Server-IP port 22 tty1با استفاده از یا یک مدیر نمایش (DM) به عنوان کاربر، به سیستم لینوکس خود وارد شویدrootو بررسی کنید که اتصال برقرار نمیشود.
نتیجهگیری #
rootشما کاربر را در ایستگاه کاری لینوکس خود غیرفعال کردهاید . کاربران عادی نمیتوانند به rootپوسته کاربر دسترسی پیدا کنند یا /etc/passwdفایل را برای فعال کردن rootورود کاربر تغییر دهند. علاوه بر این، شما rootورود کاربر از طریق SSH را غیرفعال کردهاید، که تمام تلاشهای اتصال به ایستگاه کاری لینوکس شما را غیرفعال میکند. یک پیام روز (motd) به کاربران دارای امتیاز دستور میدهد تا وظایف مدیریتی را با استفاده از روشهای خاص تعریف شده در پیام شما انجام دهند، که امنیت سیستم را بهبود میبخشد و سطوح دسترسی را اعمال میکند.
