Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
apparmor [Le 05/03/2016, 03:47]
83.152.209.122
apparmor [Le 04/07/2022, 09:17] (Version actuelle)
82.65.90.171 vandalisme
Ligne 9: Ligne 9:
  
 Il s'agit plus précisément d'un outil qui permet de verrouiller les applications en limitant strictement leur accès aux seules ressources auxquelles elles ont droit sans perturber leur fonctionnement. Il s'agit plus précisément d'un outil qui permet de verrouiller les applications en limitant strictement leur accès aux seules ressources auxquelles elles ont droit sans perturber leur fonctionnement.
 +
  
 ===== Installation ===== ===== Installation =====
Ligne 19: Ligne 20:
  
 Le répertoire **/​etc/​apparmor.d** est l'​endroit où se situent les profils d'​AppArmor. Il peut être utilisé pour manipuler le mode de l'​ensemble des profils.\\ Le répertoire **/​etc/​apparmor.d** est l'​endroit où se situent les profils d'​AppArmor. Il peut être utilisé pour manipuler le mode de l'​ensemble des profils.\\
-Cette commande va lancer ​tout les profils en mode ''​enforce''​ :+Cette commande va lancer ​tous les profils en mode ''​enforce''​ :
 <​code>​ <​code>​
 sudo aa-enforce /​etc/​apparmor.d/​*</​code>​ sudo aa-enforce /​etc/​apparmor.d/​*</​code>​
 Celle-ci va tous les mettre en mode ''​complain''​ (recommandation) : <​code>​sudo aa-complain /​etc/​apparmor.d/​*</​code>​ Celle-ci va tous les mettre en mode ''​complain''​ (recommandation) : <​code>​sudo aa-complain /​etc/​apparmor.d/​*</​code>​
 Pour mettre seulement le profil d'une application en marche: Pour mettre seulement le profil d'une application en marche:
 +<​code>​
 sudo aa-enforce firefox sudo aa-enforce firefox
 </​code>​ </​code>​
Ligne 47: Ligne 49:
 Il existe deux grands types de règles utilisées dans les profils : Il existe deux grands types de règles utilisées dans les profils :
   * ''​Path entries''​ : les fichiers auxquels une application peut avoir accès dans le système de fichier.   * ''​Path entries''​ : les fichiers auxquels une application peut avoir accès dans le système de fichier.
-  * ''​Capability entries''​ : détermine les privilèges qu'un processus restreint est autoriser ​à utiliser.+  * ''​Capability entries''​ : détermine les privilèges qu'un processus restreint est autorisé ​à utiliser.
  
 À titre d'​exemple,​ regardez le fichier **/​etc/​apparmor.d/​bin.ping** : <​file>​ /​etc/​apparmor.d/​bin.ping>​ À titre d'​exemple,​ regardez le fichier **/​etc/​apparmor.d/​bin.ping** : <​file>​ /​etc/​apparmor.d/​bin.ping>​
Ligne 80: Ligne 82:
 <​code>​sudo aa-genprof /​chemin/​vers/​mon/​processus</​code>​ <​code>​sudo aa-genprof /​chemin/​vers/​mon/​processus</​code>​
  
-=== Processus de type deamon ​===+=== Processus de type daemon ​===
  
 On crée d'​abord un profil temporaire à l'aide de la commande ''​aa-autodep''​. On laisse tourner le processus à confiner durant le temps nécessaire,​ puis on corrige le fichier de profil à l'aide des messages laissés dans les fichiers log, grâce à la commande ''​aa-logprof''​. Au besoin, on continue à laisser tourner le processus et on relance la commande ''​aa-logprof'',​ jusqu'​à ce que le fichier de profil soit adéquat. On peut alors placer ce fichier en mode //​enforced//​ : <​code>​sudo aa-autodep /​chemin/​vers/​mon/​processus</​code>​ On crée d'​abord un profil temporaire à l'aide de la commande ''​aa-autodep''​. On laisse tourner le processus à confiner durant le temps nécessaire,​ puis on corrige le fichier de profil à l'aide des messages laissés dans les fichiers log, grâce à la commande ''​aa-logprof''​. Au besoin, on continue à laisser tourner le processus et on relance la commande ''​aa-logprof'',​ jusqu'​à ce que le fichier de profil soit adéquat. On peut alors placer ce fichier en mode //​enforced//​ : <​code>​sudo aa-autodep /​chemin/​vers/​mon/​processus</​code>​
Ligne 88: Ligne 90:
  
  
-Pour la onception ​d'un plan de test réfléchissez à la manière dont l'​application doit être examinée. Le plan de test devrait être divisé en test unitaires. Chaque test unitaire devrait avoir une courte description et énumérer les étapes à suivre.+Pour la conception ​d'un plan de testréfléchissez à la manière dont l'​application doit être examinée. Le plan de test devrait être divisé en tests unitaires. Chaque test unitaire devrait avoir une courte description et énumérer les étapes à suivre.
  
 Quelques tests unitaires standard sont : Quelques tests unitaires standard sont :
Ligne 104: Ligne 106:
 ====Mise à jour des profils==== ====Mise à jour des profils====
  
-Lorsque le programme ne se comporte pas correctement,​ des messages d'​audit sont journalisés. L'​application ''​aa-logprof''​ peut être utilisée pour analyser les massages ​d'​audit AppArmor dans les fichiers journaux. Examinez-les puis mettez à jour le profil. Dans un terminal :+Lorsque le programme ne se comporte pas correctement,​ des messages d'​audit sont journalisés. L'​application ''​aa-logprof''​ peut être utilisée pour analyser les messages ​d'​audit AppArmor dans les fichiers journaux. Examinez-les puis mettez à jour le profil. Dans un terminal :
 <​code>​sudo aa-logprof</​code>​ <​code>​sudo aa-logprof</​code>​
  
Ligne 112: Ligne 114:
 Le mode strict applique les règles et rapporte les tentatives de violation, alors que le mode relâché se contente d'​enregistrer dans les journaux système les appels système qui auraient été bloqués, sans les bloquer réellement.\\ Le mode strict applique les règles et rapporte les tentatives de violation, alors que le mode relâché se contente d'​enregistrer dans les journaux système les appels système qui auraient été bloqués, sans les bloquer réellement.\\
 ''​aa-genprof''​ n'est en fait qu'un petit script intelligent qui utilise ''​aa-logprof''​ : il crée un profil vide, le charge en mode relâché, puis lance ''​aa-logprof''​. Ce dernier est un outil qui met à jour un profil en fonction des violations qui ont été enregistrées. On peut donc relancer cet outil plus tard, de manière à améliorer le profil nouvellement créé. ''​aa-genprof''​ n'est en fait qu'un petit script intelligent qui utilise ''​aa-logprof''​ : il crée un profil vide, le charge en mode relâché, puis lance ''​aa-logprof''​. Ce dernier est un outil qui met à jour un profil en fonction des violations qui ont été enregistrées. On peut donc relancer cet outil plus tard, de manière à améliorer le profil nouvellement créé.
-Pour voir une notification sur votre bureau lorsqu'​AppArmor entre un log "​DENIED"​ log entry vous devez entrez ​cette commande :+Pour voir une notification sur votre bureau lorsqu'​AppArmor entre un log "​DENIED"​ log entry vous devez entrer ​cette commande :
 <​code>​sudo aa-notify -p --display $DISPLAY</​code>​ <​code>​sudo aa-notify -p --display $DISPLAY</​code>​
-qui doit être ajouter ​à chaque boot.+qui doit être ajoutée ​à chaque boot.
  
-Une autre solution pourrait être d'installer le paquet **[[apt>​logcheck]]** ( [[http://​nyquist.life.free.fr/​dotclear/​index.php?​post/​2008/​10/​13/​Logcheck|tutoriel-1]],​ [[https://​home.demi-lune.org/​brain/?​page=display&​section=articles&​id=129|tutoriel-2]] ) , qui se chargera d'​envoyer par courriel diverses informations contenues dans les logs, dont les violations signalées par AppArmor.+Une autre solution pourrait être l'installation du paquet **[[apt>​logcheck]]** ( [[http://​nyquist.life.free.fr/​dotclear/​index.php?​post/​2008/​10/​13/​Logcheck|tutoriel-1]],​ [[https://​home.demi-lune.org/​brain/?​page=display&​section=articles&​id=129|tutoriel-2]] ) , qui se chargera d'​envoyer par courriel diverses informations contenues dans les logs, dont les violations signalées par AppArmor.
  
  
Ligne 123: Ligne 125:
  
   * [[https://​code.launchpad.net/​apparmor-profiles|Sur launchpad]]   * [[https://​code.launchpad.net/​apparmor-profiles|Sur launchpad]]
-  * [[http://​bodhizazen.net/​Tutorials/​aa|Les profiles de bodhy zazen]] 
   * [[https://​wiki.ubuntu.com/​AppArmor|Wiki ubuntu Apparmor]]   * [[https://​wiki.ubuntu.com/​AppArmor|Wiki ubuntu Apparmor]]
   * [[https://​wiki.ubuntu.com/​DebuggingApparmor|Wiki Ubuntu DebuggingApparmor]]   * [[https://​wiki.ubuntu.com/​DebuggingApparmor|Wiki Ubuntu DebuggingApparmor]]
  • apparmor.1457146062.txt.gz
  • Dernière modification: Le 05/03/2016, 03:47
  • par 83.152.209.122