¿Cómo deshabilitar SELinux sin reiniciar?


50

Necesito desactivar SELinux pero no puedo reiniciar la máquina

Seguí este enlace donde obtengo el siguiente comando

setenforce 0

Pero después de ejecutar este comando, busqué eso

sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   permissive
Mode from config file:          disabled
Policy version:                 24
Policy from config file:        targeted

¿Hay alguna otra opción?


44
setenforce 0<- lo ejecutaste desde root o con sudo?
UVV

1
@UVV sí, estoy haciendo todo esto desde la raíz
Vikas Hardia

Respuestas:


59

sestatusmuestra el modo actual como permissive.

En permissivemodo, SELinux no bloqueará nada, sino que simplemente lo advertirá. La línea se mostrará enforcingcuando en realidad esté bloqueando.

No creo que sea posible desactivar completamente SELinux sin reiniciar.


1
Creo que puede deshabilitarlo sin reiniciar editando directamente el archivo / etc / selinux / config y configurando SELINUX = disabled
dmohr el

1
@dmohr: si lee este documento de Centos, le indica que solo funciona en el próximo reinicio.
garethTheRed

12

Deshabilitar SELinuxsin reiniciar no es posible. Pero supongo que hacerlo en permissivemodo satisfará tus requisitos.

La salida de sestatusshows SELinuxestá habilitada pero también muestra que está en Permissivemodo, que es lo que acabas de hacer con el setenforcecomando.


10

En CentOS 7:

echo 0 > /sys/fs/selinux/enforce

2
fwiw, esto no funcionó para mí, Centos 7.2:# sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: permissive # echo 0 > /sys/fs/selinux/enforce # sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted
datakid

7

Al momento de escribir, lo que OP hizo debería funcionar. En Fedora 26:

[aries@csibesz]$ 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
Max kernel policy version:      30

Como el usuario no funciona.

[aries@csibesz]$ setenforce 0
setenforce:  setenforce() failed

Como root, lo hace:

[aries@csibesz]$ sudo setenforce 0
[aries@csibesz]$ sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   permissive
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      30

Lo mismo se aplica a CentOS 7 y RedHat EL 7: funciona sin reiniciar.


4

La mejor manera de deshabilitar selinux es mediante el siguiente comando:

  1. sed -i 's/enforcing/disabled/g' /etc/selinux/config /etc/selinux/config

O

  1. vi /etc/sysconfig/selinuxestablecer selinux=disabled

O

  1. set enforce 0 sestatus

Aunque en ciertos casos será necesario reiniciar.


3

Para CentOS 6 (no 7):

echo 0 > /selinux/enforce

1
No funciona en centos 7. Solo funciona en centos 6 y menores
shreddd

1
Esta respuesta es correcta para los centos 6. Por favor verifique antes de votar.
ora-600
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.