6.4. Dépannage

La section qui suit décrit les problèmes et les messages d'erreur les plus courants lorsqu'on utilise Novell AppArmor.

SUSE Linux est installé, mais AppArmor n'apparaît pas dans le menu YaST

AppArmor est installé par défaut si le bureau GNOME ou KDE est choisi lors de l'installation. Si vous choisissez Système graphique minimal ou Mode texte, AppArmor n'est pas inclus par défaut. Dans ce cas, utilisez YaST pour installer les paquetages manquants. Pour plus d'informations, reportez-vous au Guide d'installation et de démarrage rapide de Novell AppArmor 2.0.

Comportement inhabituel de l'application

En cas de comportement inhabituel de l'application ou d'un autre type de problème lié à l'application, vérifiez d'abord les messages de rejet des fichiers journaux pour savoir si les contraintes exercées par AppArmor sur votre application sont trop fortes.

Pour vérifier les messages de rejet, démarrez YaST+Novell AppArmor puis accédez à Rapports AppArmor. Sélectionnez Afficher archive et App Aud pour obtenir le rapport d'audit de l'application. Vous pouvez filtrer par dates et par heure pour réduire la période de début du comportement inhabituel de l'application.

Problèmes concernant Apache

Apache ne démarre pas correctement ou n'accède pas aux pages Web et vous venez d'installer un nouveau module ou de procéder à un changement de configuration.

Lorsque vous installez des modules Apache supplémentaires (tels que mod-apparmor) ou que vous effectuez des changements de configuration d'Apache, vous devez modifier à nouveau les profils Apache pour ajouter des règles supplémentaires au profil.

Les rapports ne sont pas envoyés par courrier électronique

Lorsque la fonction de rapport génère un fichier HTML ou CSV qui dépasse la taille par défaut, le fichier n'est pas envoyé. Les serveurs de messagerie ont une limite par défaut pour la taille des messages électroniques. Cette limitation peut empêcher AppArmor d'envoyer les messages électroniques générés pour les rapports. Si vos messages ne sont pas envoyés, il se peut que cela en soit la raison.

Les utilisateurs doivent connaître les limites de taille des messages et vérifier dans leurs archives si les messages électroniques n'ont pas été reçus.

Exclusion de certains profils de la liste des profils utilisés

AppArmor charge et applique toujours tous les profils disponibles dans son répertoire de profils (/etc/apparmor.d/). Si vous décidez de ne pas appliquer un profil à une application donnée, supprimez-le ou déplacez-le dans un emplacement où AppArmor n'ira pas le rechercher.

Le fonctionnement d'AppArmor peut générer un certain nombre d'erreurs. Voici la liste des erreurs possibles et de leurs solutions.

Can't find apparmor_parser

Si vous exécutez logprof sans être un utilisateur root, tel que tux, l'erreur suivante risque de se produire :

tux@localhost:~> /usr/sbin/logprof
Can’t find apparmor_parser.
[Note]Remarque

Vous devez exécuter logprof en tant que root exclusivement.

/usr/sbin/genprof must be run as root

L'exécution de genprof sans être un utilisateur root produit un résultat similaire :

tux@localhost:~> /usr/sbin/genprof
/usr/sbin/genprof must be run as root.
Unloading AppArmor profiles..failed

Vous devez exécuter les scripts de démarrage et d'arrêt apparmor en tant que root. Leur exécution sans être un utilisateur root produit le résultat suivant :

tux@localhost:~> /etc/init.d/apparmor stop
/sbin/apparmor_parser: Sorry. You need root priveleges to run this program.
Unloading AppArmor profiles..failed
AppArmor parser error

L'exemple ci-dessous montre la syntaxe de l'erreur complète de l'analyseur.

La modification manuelle des profils Novell AppArmor peut introduire des erreurs de syntaxe. Si vous tentez de démarrer ou de redémarrer AppArmor avec des erreurs de syntaxe dans vos profils, le message d'erreur suivant s'affiche :

localhost:~ # /etc/init.d/apparmor start
Loading AppArmor profiles
AppArmor parser error, line 2: Found unexpected character: ’h’
Profile /etc/apparmor.d/usr.sbin.squid failed to load
failed