semanage Generador de comandos
Generar comandos semanage para gestionar las asignaciones de políticas SELinux (fcontext, login, user, port, boolean)
Introducción a semanage
## ¿Qué es semanage?
`semanage` gestiona las asignaciones de políticas de SELinux: las etiquetas que indican al kernel qué acciones *están permitidas* para un proceso, archivo, puerto o usuario de inicio de sesión. No activa ni desactiva el modo estricto/permisivo en sí (eso lo hace `setenforce`); en su lugar, configura las asignaciones persistentes que utiliza la política de SELinux.
## Cómo usarlo
1. **Elija un objeto**: `fcontext` (etiquetas de archivos), `login` (asignación usuario de Linux → usuario de SELinux), `user`, `port` o `boolean`. 2. **Elija una acción**: `add` (`-a`), `modify` (`-m`), `delete` (`-d`) o `list` (`-l`). 3. **Establezca el tipo de SELinux** (`-t`) y el **valor** (expresión regular de ruta, puerto, usuario, etc.). 4. **Aplique el contexto del archivo**: Para los cambios en `fcontext`, ejecute `restorecon` posteriormente para que los archivos existentes reciban nuevas etiquetas. 5. **Copiar y ejecutar**: Anteceda con `sudo`.
Objetos, acciones y opciones
### Mapeos de contexto de archivo `fcontext` Asocia una expresión regular de ruta a un tipo SELinux. Después de agregar o modificar, ejecuta `restorecon -Rv /path` para volver a etiquetar los archivos existentes: `semanage fcontext -a -t httpd_sys_content_t '/web(/.*)?'`.
### Mapeo Linux-user → SELinux-user `login` Asocia un nombre de inicio de sesión en Linux (o `__default__`) a un usuario SELinux, por ejemplo, `semanage login -a -s user_u john`.
### Usuarios SELinux `user` Crea o modifica usuarios SELinux y los roles que pueden asumir.
### Mapeos puerto → tipo `port` Etiqueta un puerto de red para que un servicio confinado pueda vincularse a él: `semanage port -a -t http_port_t -p tcp 8080`.
### Booleanos de política `boolean` Activa o desactiva un booleano nombrado para cambiar el comportamiento de la política (`semanage boolean -m --on httpd_can_network_connect`).
### Acciones `-a` / `-m` / `-d` / `-l` Agrega un mapeo nuevo, modifica uno existente, elimina uno o lista los mapeos actuales.
▶¿Qué es un contexto SELinux y por qué es importante?
▶Agregué una regla de fcontext, pero httpd sigue sin poder leer los archivos: ¿por qué?
▶¿Cómo puedo permitir que un servicio escuche en un puerto no estándar?
Si este herramienta le ha sido útil, considere comprarme un café.
Compra un café para mí.