Escucho mucho sobre Aparmor, quiero saber lo siguiente:
- ¿Qué es el apparmor?
- ¿Cómo funciona el apparmor?
Apparmor es un sistema de control de acceso obligatorio (o MAC). Utiliza mejoras del kernel LSM para restringir los programas a ciertos recursos. AppArmor hace esto con los perfiles cargados en el kernel cuando se inicia el sistema. Apparmor tiene dos tipos de modos de perfil, aplicación y queja. Los perfiles en modo de aplicación hacen cumplir las reglas de ese perfil e informan intentos de violación en syslogo auditd. Los perfiles en modo de queja no aplican ninguna regla de perfil, solo registran los intentos de violación.
En Ubuntu, Apparmor está instalado por defecto. Limita las aplicaciones a los perfiles para determinar a qué archivos y permisos debe acceder un programa. Algunas aplicaciones vendrán con sus propias propiedades y se pueden encontrar más en el apparmor-profilespaquete.
Puede instalar apparmor-profilesejecutando sudo apt-get install apparmor-profiles.
Encontré un buen ejemplo de Apparmor en los foros de Ubuntu que reescribí para esta publicación.
Apparmor es un marco de seguridad que evita que las aplicaciones se vuelvan malvadas. Por ejemplo: si ejecuto Firefox y visito un sitio malo que intenta instalar malware que eliminará mi
homecarpeta, Apparmor tiene límites en Firefox, pero evita que haga algo que no quiero (como acceder a mi música, documentos, etc.). De esta manera, incluso si su aplicación se ve comprometida, no se puede hacer daño.
El apparmor-utilspaquete contiene herramientas de línea de comandos para configurar Apparmor. Utilizándolo, puede cambiar el modo de ejecución de Apparmor, encontrar el estado de un perfil, crear nuevos perfiles, etc.
Estos son los comandos más comunes:
Nota: los perfiles se almacenan en/etc/apparmor.d/
sudo apparmor_status. Obtendrá una lista de todos los perfiles * cargados, todos los perfiles en modo de cumplimiento, todos los perfiles en modo de reclamo, qué procesos se definen en cumplimiento / reclamo, etc. sudo aa-complain /path/to/bin, ¿dónde /path/to/binestá la bincarpeta de programas ? Por ejemplo, ejecutar: sudo aa-complain /usr/bin/firefoxpondrá a Firefox en modo de queja.sudo aa-enforce /path/to/binpara imponer un perfil de programas. sudo aa-complain /etc/apparmor.d/*y sudo aa-enforce.d/*respectivamente. Para cargar un perfil en el núcleo que usaría apparmor_parser. Puede volver a cargar perfiles utilizando el -rparámetro
cat /etc/apparmor.d/profile.name | sudo apparmor_parser -aque imprime efectivamente el contenido de profile.nameen el analizador de Apparmor.-rparámetro, así:cat /etc/apparmor.d/profile.name | sudo apparmor_parser -r sudo service apparmor reload Para desactivar un perfil que vincula al /etc/apparmor.d/disable/uso de lnla siguiente manera: sudo ln -s /etc/apparmor.d/profile.name /etc/apparmor.d/disable/a continuación, ejecute: sudo apparmor_parser -R /etc/apparmor.d/profile.name.
Nota: ¡No confundaapparmor_parser -rconapparmor_parser -R ELLOS NO SON LO MISMO!
/etc/apparmor.d/disable/y cárguelo usando el -aparámetrosudo rm /etc/apparmor.d/disable/profile.name cat /etc/apparmor.d/profile.name | sudo apparmor_parser -a sudo service apparmor stopy eliminar el módulo del kernel usandosudo update-rc.d -f apparmor defaults sudo service apparmor starty cargue los módulos del núcleo consudo update-rc.d apparmor defaults Los perfiles se almacenan en /etc/apparmor.d/y se nombran después de la ruta completa al ejecutable que perfilan, reemplazando '/' con '.'. Por ejemplo, /etc/apparmor.d/bin.pinges el perfil de pingin /bin.
Hay dos tipos principales de entradas utilizadas en los perfiles:
Las entradas de ruta determinan a qué archivos puede acceder una aplicación.
Las entradas de capacidad determinan qué privilegios puede usar un proceso.
Veamos el perfil para ping, ubicado en etc/apparmor.d/bin.ping, como un ejemplo.
#include <tunables/global>
/bin/ping flags=(complain) {
#include <abstractions/base>
#include <abstractions/consoles>
#include <abstractions/nameservice>
capability net_raw,
capability setuid,
network inet raw,
/bin/ping mixr,
/etc/modules.conf r,
}
#include <tunables/global>Incluye el archivo globalen el directorio tunables, esto permite que las declaraciones pertenecientes a múltiples aplicaciones se coloquen en un archivo común.
/bin/ping flags=(complain)establece la ruta al programa perfilado y establece el modo para quejarse.
capability net_rawpermite que la aplicación acceda a la CAP_NET_RAW Posix.1ecapacidad.
/bin/ping mixr permite que la aplicación lea y ejecute el acceso al archivo.
/etc/modules.conf r,Le rda a la aplicación privilegios de lectura para/etc/modules.conf
Nota: Después de crear / editar un perfil, debe volver a cargar el perfil para que los cambios surtan efecto.
Aquí hay una lista de permisos que puede usar:
r - leer w - escribir ux - Ejecución sin restricciones Ux - Ejecución sin restricciones - fregar el entorno px - Ejecución discreta del perfil Px - Ejecución discreta del perfil - friegue el ambiente ix - Heredar ejecutar m - permitir PROT_EXECcon mmap(2)llamadas l - enlace
Tengo algunos enlaces más útiles para usted: Wiki.Ubuntu.com Ubuntuforums.org
Guías de Apparmor para Ubuntu 12.04 y Ubuntu 12.10
Espero que te ayude.
fuente
Aquí hay una cita del wiki de Apparmor :
fuente