Trong hướng dẫn này, bạn tìm hiểu Selinux là gì và cách bạn giải quyết lỗi “Không tải chính sách Selinux” xuất hiện trên hệ điều hành Centos.
Trước hết, hãy mô tả ngắn gọn về chế độ Selinux Security. Selinux là gì và vai trò của chúng trên hệ điều hành Linux là gì?
Selinux là mô-đun Kernel Security, có vai trò kiểm soát quyền truy cập của các ứng dụng phần mềm và người dùng vào hệ điều hành. Ra mắt đâu đó vào giữa năm 2000, Selinux ngày càng trở thành bản phân phối Linux trong những năm qua.
Hoạt động của mô-đun này bao gồm việc phân phối và kiểm soát các chính sách bảo mật trong hệ thống, hạn chế quyền truy cập của các ứng dụng ở cấp độ hệ thống con hạt nhân chính.
Cơ chế bảo mật này hoạt động độc lập với các hệ thống kiểm soát và ngăn chặn truyền thống các hoạt động đáng ngờ hiện có trên Linux. Không thể được chủ động kiểm soát bởi siêu người dùng “root” Và không cần tương tác với các ứng dụng hoặc bên thứ ba, Selinux mang lại sự ổn định hạt nhân.
Tính bảo mật của hệ thống Linux không có mô-đun Selinux này sẽ tự động phụ thuộc vào tính chính xác của cấu hình hạt nhân, các ứng dụng có đặc quyền cuộn và cấu hình của chúng. Một lỗi đơn giản của một trong những yếu tố được đề cập ở trên có thể ảnh hưởng đến hoạt động bình thường của toàn bộ hệ thống.
Tóm lại, Selinux có thể gọi là một hệ điều hành Linux đích thực, đảm bảo tính toàn vẹn, bảo mật và ổn định. Đừng nhầm lẫn mô-đun này với phần mềm chống vi-rút hoặc tường lửa. Nó hoàn toàn khác.
Người dùng sử dụng Linux cho máy chủ web và đám mây biết rằng Selinux có thể gây ra sự cố với các ứng dụng phần mềm có mức độ truy cập và kiểm soát hệ thống.
Selinux có thể kiểm soát các hoạt động của hệ điều hành cho từng người dùng, ứng dụng và daemon, đồng thời có thể áp dụng các chính sách và hạn chế bảo mật chính xác. Điều này thường có thể là một vấn đề đối với các máy chủ web, nơi hầu hết các quy trình phần mềm cụ thể đều có đặc quyền và tương tác với nhân hệ điều hành.
Những người quyết định hủy kích hoạt mô-đun Kernel này thường nhầm lẫn khi sửa đổi các chỉ thị, dẫn đến không thể tải Selinux khi khởi động lại hệ điều hành. “Failed to load SELinux policy“.

Tôi đã thể hiện trong một bài viết làm thế nào có thể vô hiệu hóa Selinux, để ngăn chặn sự gián đoạn của quá trình do dịch vụ NGINX đặt trong máy chủ web.
# 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=permissive
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=disabled (WRONG)
Một lỗi mà chúng tôi đã không làm sai và chúng tôi đã làm như vậy, và là một máy chủ từ xa nên độ phân giải đã có hiệu lực Cài đặt lại toàn bộ hệ điều hành.
Nếu may mắn hơn một chút, bạn chỉ có thể sửa Selinux nếu bạn muốn tải ảnh ISO của hệ điều hành vào mô-đun “rescue“.
Failed to load SELinux Policy được tìm thấy đặc biệt trên các phiên bản CentOS 6, CentOS 7, RHEL 7.x.
Cảm ơn bài viết, bạn đã hiểu được nguyên nhân gốc rễ nhưng lại bỏ lỡ một giải pháp: thực tế việc thêm selinux=0 vào mục hệ điều hành do grub đề xuất là đủ để vô hiệu hóa selinux và làm cho hệ điều hành có khả năng khởi động lại.
Cảm ơn vì giải pháp này!
selinux=0Tôi nghĩ rằng tại thời điểm tôi viết bài này, tùy chọn này không có sẵn. Tôi có thể nhầm lẫn. Cảm ơn vì giải pháp!