GNU/Linux >> Tutoriales Linux >  >> Linux

Apparmor:¿cómo 'permitir todo' la regla y luego endurecerla?

Este no es el enfoque correcto.

En general, la inclusión en la lista negra es una base deficiente para una política de seguridad (debe basarse en la inclusión en la lista blanca) y la sintaxis de AppArmor se basa en esto. Con ese fin, debe comenzar sin detalles en el perfil, pero configure la acción del perfil para quejarse en lugar de hacer cumplir. Puede configurar esto en el perfil (flags=(complain) ) o usando el comando aa-complain. Entonces las directivas específicas para permitir una operación se vuelven redundantes.

Creo que la documentación autorizada es la publicada por SuSE. Pero, brevemente, para el acceso a archivos, el formato de configuración es:

<object> <permissions>,

Tenga en cuenta que el objeto englobado (si es una ruta) es ligeramente diferente de lo que puede estar familiarizado en la línea de comando. Hay más cosas específicas de dbus aquí.


Pero es el allow *, una sintaxis correcta para 'permitir todo'

La sintaxis correcta para permitir que todo se vea así:

profile DAC /path/to/exec {
  # Allow all rules
  capability,
  network,
  mount,
  remount,
  umount,
  pivot_root,
  ptrace,
  signal,
  dbus,
  unix,
  file,
}

En realidad, hay dos reglas más:

  1. rlimit (AppArmor puede establecer y controlar los límites de recursos asociados con un perfil)
  2. change_profile (controle a qué permisos para qué perfiles puede pasar una tarea confinada)

Pero no tiene sentido en este caso particular.


Linux
  1. ¿Cómo decirle a Gnome que vuelva a leer el ~/.profile?

  2. Cómo permitir la conexión remota al servidor de base de datos MySQL

  3. IPTables de Linux:cómo agregar reglas de firewall (con el ejemplo Permitir SSH)

  4. Error de sintaxis cerca del token inesperado 'entonces'

  5. ¿Cómo restringir a un usuario de SSH para que solo permita el túnel SSH?

Cómo construí un laboratorio casero con el presupuesto

Cómo:Solución de problemas básicos de IPTables

Cómo configurar un Firewall en Jelastic Cloud

¿Cómo verifico la sintaxis de un script Bash sin ejecutarlo?

¿Cómo puedo perfilar el código C++ que se ejecuta en Linux?

¿Cómo perfilar el uso de la memoria?