Linux is regarded as one of the most secure operating systems you can use today, that is because of its illustrious security implementation features such as SELinux (Security-Enhanced Linux).
For starters, SELinux is described as a mandatory access control (MAC) security structure executed in the kernel. SELinux offers a means of enforcing some security policies which would otherwise not be effectively implemented by a System Administrator.
When you install RHEL/CentOS or several derivatives, the SELinux feature or service is enabled by default, due to this some applications on your system may not actually support this security mechanism. Therefore, to make such applications function normally, you have to disable or turn off SELinux.
Important: If you don’t want to disable SELinux, then you should read the following articles to implement some mandatory access control on files and services to function properly.
Don’t Miss: Setup Mandatory Access Control with SELinux in Linux
Don’t Miss: Implement Mandatory Access Control with SELinux and AppArmor in Linux
In this how-to guide, we shall walk through steps you can follow to check the status of SELinux and also disable SELinux in CentOS/RHEL and Fedora, in case it is enabled.
How Can I Disable SELinux in Linux
The first thing to do is to check the status of SELinux on your system, and you can do this by running the following command:
Next, proceed to disabling SELinux on your system, this can be done temporarily or permanently depending on what you want to achieve.
Disable SELinux Temporarily
To disable SELinux temporarily, issue the command below as root:
# echo 0 > /selinux/enforce
Alternatively, you can use the
setenforce tool as follows:
# setenforce 0
Else, use the Permissive option instead of 0 as below:
# setenforce Permissive
These methods above will only work until the next reboot, therefore to disable SELinux permanently, move to the next section.
Disable SELinux Permanently
To permanently disable SELinux, use your favorite text editor to open the file
/etc/sysconfig/selinux as follows:
# vi /etc/sysconfig/selinux
Then change the directive
SELinux=disabled as shown in the below image.
Then, save and exit the file, for the changes to take effect, you need to reboot your system and then check the status of SELinux using sestatus command as shown:
In conclusion, we moved through the simple steps you can follow to disable SELinux on CentOS/RHEL and Fedora. There is nothing much to cover under this topic but additionally, finding out more about SELinux can prove helpful especially for those interested in exploring security features in Linux.