GNU/Linux >> Tutoriales Linux >  >> Linux

el comando semanage no cambia el contexto del archivo

La diferencia entre semange y chcon es que chcon es "temporal" si el sistema se vuelve a etiquetar, los contextos presentes en un archivo/directorio se perderán, usar semanage hace que los contextos de selinux sean persistentes.

Para que la semanage funcione, debe proporcionar la ruta completa al archivo o directorio, por eso semanage fcontext -a -t public_content_rw_t upload/ no funciona pero semanage fcontext -a -t public_content_rw_t "/var/ftp/upload(/.*)? lo hace; restorecon no requiere la ruta completa.


Este es el contexto predeterminado

[[email protected] ftp]# ll -Zd upload/
drwxr-xr-x. root root unconfined_u:object_r:public_content_t:s0 upload/

Probé este comando para cambiar el contexto

[[email protected] ftp]# semanage fcontext -a -t public_content_rw_t upload/
[[email protected] ftp]# ll -Zd upload/
drwxr-xr-x. root root unconfined_u:object_r:public_content_t:s0 upload/
[[email protected] ftp]# restorecon -R -v upload
[[email protected] ftp]# ll -Zd upload/
drwxr-xr-x. root root unconfined_u:object_r:public_content_t:s0 upload/

No funciona, pero este comando escribirá el contexto en /etc/selinux/targeted/contexts/files/file_contexts.local archivo

ver aquí

# This file is auto-generated by libsemanage
# Do not edit directly.

upload/    system_u:object_r:public_content_rw_t:s0

Ahora probé este comando (Comando de trabajo )

[[email protected] ftp]# semanage fcontext -a -t public_content_rw_t "/var/ftp/upload(/.*)?"
[[email protected] ftp]# restorecon -R -v upload
restorecon reset /var/ftp/upload context unconfined_u:object_r:public_content_t:s0->unconfined_u:object_r:public_content_rw_t:s0
Now context is changed.
[[email protected] ftp]# ll -Zd upload/
drwxr-xr-x. root root unconfined_u:object_r:public_content_rw_t:s0 upload/

Pero realmente no sé por qué está funcionando, vea la diferencia en el comando.

Obtuve la respuesta en la página man de man ftpd_selinux

semanage fcontext -a -t public_content_rw_t "/var/ftpd/incoming(/.*)?"

Linux
  1. ¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

  2. No se puede ejecutar el comando de configuración:¿"no existe tal archivo o directorio"?

  3. nano:comando no encontrado

  4. toque:comando no encontrado

  5. ordenar:comando no encontrado

fsck:comando no encontrado

cola:comando no encontrado

¿Por qué find -exec mv {} ./target/ + no funciona?

Cambiar directorio y ejecutar archivo en un comando

¿Cuándo debo usar /dev/shm/ y cuándo debo usar /tmp/?

hacer eco o imprimir /dev/stdin /dev/stdout /dev/stderr