How can I Disable SELinux on RHEL 8? or How to Disable SELinux on CentOS 8?. Security-Enhanced Linux (SELinux) is an implementation of a mandatory access control mechanism in the Linux kernel which enforces rules on files and processes and on their actions. It does this based on defined policies. The heart of SELinux operations is “loadable policy rules“.

How to Install and configure AIDE Host Based IDS on RHEL 8 / CentOS 8

SELinux gives you the ability to limit the privileges associated with executing processes and reduce the damage that could result from system and applications vulnerabilities exploitation. For this reason, it is recommended to keep SELinux in enforcing mode unless you have a good reason to disable it.

Why disable SELinux? – Not recommended

To many, the benefits of MAC and SELinux comes with a price, which is the learning curve. Because of this, some guys may consider disabling SELinux at the expense of faster system setup, Applications deployment, and troubleshooting.

I recommended you start learning how to work with SELinux Policies instead of doing a complete disable.

How to Disable SELinux on RHEL 8 / CentOS 8

Before disabling SELinux, check first its mode of operation.

$ sestatus
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
Memory protection checking: actual (secure)
Max kernel policy version: 31

The default mode in RHEL 8 is Enforcing. In this mode, SELinux policy is enforced and it denies access based on SELinux policy rules.

The other available mode for running SELinux in enabled state is Permissive. In this mode, SELinux policy is not enforced and access is not denied but denials are logged for actions that would have been denied if running in enforcing mode.

To permanently disable SELinux. edit its main configuration file /etc/selinux/config and set:


This can be done automatically using the sed command.

sudo sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config

Then verify with:

$ cat /etc/selinux/config | grep SELINUX= | grep -v ^#

Reboot your system after the change

sudo reboot

To work in disabled mode and postpone systemreboot, just set the current mode to Permissive in runtime.

sudo setenforce 0

If you prefer to set permanent Permissive mode which gives you event logging instead, then set to this mode using the command below.

sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config

That’s all. You now have SELinux disabled on your RHEL 8 / CentOS 8 system. Until next time, stay connected by following us on facebook and twitter.


  • How to Disable SELinux on RHEL 8
  • How to disable SELinux on CentOS 8

Also read: How to Configure SELinux man pages

Your support is our everlasting motivation,
that cup of coffee is what keeps us going!

As we continue to grow, we would wish to reach and impact more people who visit and take advantage of the guides we have on our blog. This is a big task for us and we are so far extremely grateful for the kind people who have shown amazing support for our work over the time we have been online.

Thank You for your support as we work to give you the best of guides and articles. Click below to buy us a coffee.


Please enter your comment!
Please enter your name here