Khi cài đặt một số phần mềm trên Linux, HĐH sẽ yêu cầu disable SELinux. Vậy làm thế nào để Disable SELinux trên CentOS 7? Tìm hiểu ngay qua bài chia sẻ này để hiểu rõ hơn.
SELinux là gì?
SELinux viết tắt của (Security Enhanced Linux) là một module bảo mật Linux kernel. Nó cho phép admin và user kiểm soát các điều khiển truy cập (access control) dựa trên các quy tắc của SELinux policy.
Cụ thể, các quy tắc SELinux policy chỉ định cách các process và user tương tác với nhau. Bên cạnh đó là cách các process và user tương tác với các file.
Khi không có quy tắc SELinux policy nào cho phép quyền truy cập, chẳng hạn như đối với process mở một file, quyền truy cập bị từ chối.
SELinux có ba chế độ:
- Enforcing: SELinux cho phép truy cập dựa trên các quy tắc SELinux policy.
- Permissive: SELinux chỉ log các hành động đã bị từ chối nếu chạy chế độ enforcing.
- Disabled: Không có SELinux policy nào được load.
Theo mặc định, trong CentOS 7, SELinux được enabled và ở chế độ enforcing.
Theo khuyến cáo, bạn nên giữ SELinux ở chế độ enforcing. Nhưng trong một số trường hợp, bạn có thể cần đặt nó ở chế độ Permissive hoặc Disabled hoàn toàn.
Trong hướng dẫn này, chúng tôi sẽ hướng dẫn cách disable SELinux trên CentOS 7.
Điều kiện để Disable SELinux trên CentOS 7
Trước khi bắt đầu, hãy đảm bảo rằng bạn đã logg in với tư cách là một user có đặc quyền sudo.
Kiểm tra SELinux Status
Để xem SELinux Status hiện tại và SELinux policy đang được sử dụng trên hệ thống của bạn, hãy sử dụng lệnh sestatus
:
$ sestatus
Output
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
Bạn có thể thấy từ kết quả bên trên, SELinux đã được enabled và đang ở chế độ enforcing.
Disable SELinux trên CentOS 7
Bạn có thể tạm thời thay đổi chế độ SELinux từ targeted thành permissive bằng command sau:
$ sudo setenforce 0
Tuy nhiên, thay đổi này chỉ hợp lệ cho phiên thời gian chạy hiện tại.
Để disable vĩnh viễn SELinux trên hệ thống CentOS 7, hãy làm theo các bước bên dưới:
- Mở file
/etc/selinux/config
và đặt chế độSELINUX
thànhdisabled
:
$ vim /etc/selinux/config
# 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
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
2. Lưu file and reboot hệ thống CentOS với:
sudo shutdown -r now
3. Sau khi hệ thống boot up, hãy xác minh thay đổi bằng command sestatus
:
sestatus
Kết quả sẽ giống như sau:
SELinux status: disabled
Ngoài ra, trên CentOS 7 bạn cũng nên tham khảo về cách tự động hóa việc triển khai ứng dụng Node.js với Shipit, đây là một giải pháp đơn giản và giúp tiết kiệm thời gian cực kì hiệu quả cho các nhà phát triển.
Kết luận
Việc tắt hoặc vô hiệu hóa SELinux trên CentOS 7 có thể giúp bạn giải quyết một số vấn đề bảo mật hoặc xử lý các tình huống đặc biệt. Tuy nhiên, trước khi thực hiện điều này, bạn nên đảm bảo rằng đã hiểu rõ hệ quả và rủi ro của việc vô hiệu hóa SELinux.
Trong bài viết này, chúng tôi đã hướng dẫn cho bạn cách tắt SELinux trên CentOS 7 một cách đơn giản và hiệu quả. Hy vọng với bài viết này, bạn đã có thêm kiến thức và hiểu rõ hơn về SELinux và quy trình tắt nó trên CentOS 7.