نحوه غیرفعال کردن SELinux در Rocky Linux 9 #
لینوکس با امنیت بهبود یافته (SELinux) یک سیستم کنترل دسترسی اجباری (MAC) است که سیاستهای امنیتی سختگیرانهای را بر روی پلتفرمهای لینوکس اعمال میکند. برای تنظیم این کنترلها، ممکن است لازم باشد SELinux را در Rocky Linux 9 غیرفعال کنید، به خصوص اگر برنامههای خاصی به دسترسی مجازتری نیاز داشته باشند. SELinux به طور پیشفرض در Rocky Linux فعال است تا با محدود کردن تعاملات غیرمجاز، از سیستم محافظت کند.
اگرچه غیرفعال کردن SELinux در سیستمهای عملیاتی توصیه نمیشود، اما ممکن است برخی از برنامهها به دلیل مشکلات سازگاری نیاز به غیرفعال کردن آن داشته باشند. این راهنما نحوه بررسی وضعیت SELinux، غیرفعال کردن موقت SELinux و غیرفعال کردن دائمی SELinux در Rocky Linux 8 و ۹ را توضیح میدهد .
حالتهای SELinux #
SELinux در سه حالت مختلف عمل میکند.
- Enforcing: سیاستهای SELinux به طور فعال اعمال میشوند و دسترسی غیرمجاز را محدود میکنند. این حالت برای سیستمهای عملیاتی توصیه میشود.
- Permissive: سیاستهای SELinux اعمال نمیشوند، اما تخلفات ثبت میشوند. این حالت برای اشکالزدایی و آزمایش مفید است.
- Disabled: سیاستهای SELinux کاملاً غیرفعال هستند. این حالت توصیه نمیشود زیرا تمام کنترلهای دسترسی را حذف میکند.
برای حفظ امنیت نمونه خود، سیاست SELinux را در Rocky Linux در حالت اجرا نگه دارید. غیرفعال کردن SELinux ممکن است نمونه شما را در معرض خطرات امنیتی قرار دهد. با این حال، اگر برنامه شما با SELinux سازگار نیست، قبل از غیرفعال کردن کامل SELinux از حالت مجاز استفاده کنید.
پیش نیازها #
قبل از شروع، شما نیاز دارید:
- به عنوان یک کاربر sudo غیر ریشه به یک نمونه Rocky Linux 9 دسترسی داشته باشید.
بررسی وضعیت SELinux #
SE Linux به طور پیشفرض در Rocky Linux 9 فعال است. قبل از غیرفعال کردن آن در ایستگاه کاری خود، مراحل زیر را برای بررسی وضعیت پیشفرض SELinux دنبال کنید.
- وضعیت SELinux را بررسی کنید.کنسول
$ sudo sestatusخروجی شما باید مانند تصویر زیر باشد.
SELinux status: enabled Current mode: enforcing - این دستور وضعیت
sestatusSELinux سیستم و حالت فعلی آن را نمایش میدهد . برای خروجی فیلتر شده، از دستور زیر استفاده کنید:کنسول$ sudo sestatus | grep 'SELinux status\|Current mode'
غیرفعال کردن موقت SELinux در Rocky Linux 9 #
برای غیرفعال کردن موقت SELinux تا زمان راهاندازی مجدد بعدی، مراحل زیر را دنبال کنید.
- SELinux را موقتاً غیرفعال کنید.کنسول
$ sudo setenforce ۰
- وضعیت SELinux را بررسی کنید.کنسول
$ sudo sestatus | grep 'SELinux status\|Current mode'
خروجی:
SELinux status: enabled Current mode: permissiveبر اساس خروجی بالا، حالت فعلی اکنون مجاز است و این تغییر تا راهاندازی مجدد بعدی ادامه خواهد داشت. سیستم را با استفاده از دستور زیر مجدداً راهاندازی کنید
sudo rebootوsudo sestatusدوباره اجرا کنید تا تأیید شود که حالت به حالت اجباری برمیگردد.
غیر فعال کردن دائمی SELinux #
غیرفعال کردن دائمی SELinux در Rocky Linux 9 توصیه نمیشود. فقط در صورتی SELinux را در Rocky Linux 9 غیرفعال کنید که سایر مکانیسمهای امنیتی مانند فایروالها فعال باشند. برای غیرفعال کردن دائمی SELinux در ایستگاه کاری خود، مراحل زیر را دنبال کنید.
- فایل پیکربندی اصلی SELinux را با استفاده از یک ویرایشگر متن مانند
nanoباز کنید .کنسول$ sudo nano /etc/selinux/config - دایرکتیو را پیدا کنید
SELINUX=و مقدار آن را به صورت زیر تغییر دهیدdisabled:ini# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled
فایل را ذخیره کنید و ببندید.
- برای اعمال تغییرات سیستم، نمونه را مجدداً راهاندازی کنید.کنسول
$ sudo reboot - پس از راهاندازی مجدد سیستم، بررسی کنید که SELinux غیرفعال شده باشد.کنسول
$ sudo sestatusخروجی:
SELinux status: disabledبر اساس خروجی بالا، SELinux اکنون غیرفعال شده است. این تغییر در راهاندازیهای مجدد نیز ادامه مییابد، به این معنی که SELinux غیرفعال باقی میماند، مگر اینکه دوباره به صورت دستی فعال کنید. هرگونه تغییر جدید در این
/etc/selinux/configفایل برای اعمال شدن نیاز به راهاندازی مجدد سیستم دارد. - پارامترهای بوت را بررسی کنید تا تأیید کنید که SELinux در سطح هسته کاملاً غیرفعال شده است.کنسول
$ cat /proc/cmdline | grep selinux
توجه داشته باشیدپس از غیرفعال کردن دائمی SELinux، سیاستهای امنیتی دیگر اجرا نخواهند شد. اگر نیاز به فعال کردن مجدد SELinux دارید،
/etc/selinux/configفایل را تغییر داده و سیستم خود را مجدداً راهاندازی کنید تا تغییرات اعمال شوند.
نتیجه گیری #
شما SELinux را در Rocky Linux 9 غیرفعال کردهاید. شما SELinux را به طور موقت غیرفعال کردهاید و با تغییر فایل پیکربندی اصلی، آن را به طور دائم غیرفعال کردهاید. اگر برنامه شما نیاز به غیرفعال کردن SELinux دارد، ابتدا برای حفظ گزارشهای دسترسی، استفاده از حالت مجاز را در نظر بگیرید. غیرفعال کردن SELinux کنترلهای امنیتی مهم را حذف میکند، در نتیجه، اطمینان حاصل کنید که اقدامات امنیتی جایگزین برای ایمنسازی سیستم شما فعال شدهاند. man selinuxبرای اطلاعات بیشتر و گزینههای دستور، دستور را اجرا کنید.