Profile anwenden

Läuft ein Programm bereits, lässt sich das zugehörige AppArmor-Profil nicht nachträglich aktivieren. Das liegt vor allem daran, dass sich AppArmor beim Linux-Syscall exec einklinkt, also beim Start einer ausführbaren Datei. Arbeiten Sie unter Ubuntu, sind die AppArmor-Profile standardmäßig aktiv und schützen die Anwendung damit automatisch.

Was ein Programm ohne aktiven Schutz so alles tun würde, können Sie selbst überprüfen: Öffnen Sie unter Debian oder Ubuntu ein neues Terminalfenster und wechseln Sie in den privilegierten Modus. Tippen Sie dann die folgenden beiden Zeilen:

# apt-get install apparmor-utils
# aa-audit usr.bin.evince

Rufen Sie anschließend den Dokumentenbetrachter Evince über den Ubuntu-Starter auf und öffnen Sie eine beliebige PDF-Datei aus Ihrem Heimatverzeichnis. Ein Blick in /var/log/kern.log zeigt für die Aktion die entsprechenden Zugriffe (Abbildung 1). AppArmor gestattet Evince hier nur deshalb den Zugriff auf die Datei, weil sich diese im Heimatverzeichnis des aktuell angemeldeten Benutzers befindet.

Abbildung 1: In der Protokolldatei kern.log erscheinen die Zugriffe von Evince auf die PDF-Datei (hell hervorgehobene Zeile).

Das eigene Profil

Für viele Programme stehen keine AppArmor-Profile zur Verfügung. Sie haben aber die notwendigen Werkzeuge zur Hand, um eigene zu erstellen. Im ersten Schritt bringen Sie AppArmor für die fragliche Anwendung in den Lernmodus, für VLC beispielsweise mit:

# aa-genprof /usr/bin/vlc

Jetzt starten Sie die eigentliche Anwendung, in unserem Fall VLC. Anschließend nutzen Sie diese so, wie Sie es üblicherweise im Alltag tun würden. Haben Sie alle häufig genutzten Funktionen ausgeführt, dann schließen Sie die Anwendung und finalisieren das Profil. Drücken Sie dafür im Terminal [S], um AppArmor die Log-Dateien nach Aktionen des VLC-Players durchforsten zu lassen.

Anschließend überlässt Ihnen AppArmor für jeden Zugriffsversuch von VLC die Wahl, ob dieser erlaubt sein soll oder nicht (Abbildung 2). Für Testzwecke halten Sie [D] (für "deny") gedrückt und verbieten damit erst einmal alle Aktionen. Wurden alle Abfragen bestätigt, dann speichern sie das Profil mit [S] und verlassen danach mit [F] den Lernmodus.

Abbildung 2: AppArmors Profiler registriert die Programmzugriffe und gestaltet daraus ein Profil.

AppArmor meldet beim Beenden des Lernmodus, dass sich das neue Profil für den VLC-Player nun im Enforce-Modus befindet. Öffnen Sie ein neues Terminal und starten Sie VLC mit dem Kommando vlc als unprivilegierter Benutzer. In unserem Fall taucht der Mediaplayer erst gar nicht auf, da AppArmor schon beim Start Zugriffe auf wichtige Dateien blockiert (Abbildung 3).

Abbildung 3: Da dem VLC-Player die Zugriffsberechtigungen auf wichtige Dateien fehlen, verweigert er den Start.

Sie finden das entsprechende Profil unter /etc/apparmor.d/usr.bin.vlc und können es von nun an weiter anpassen. Um den VLC-Player wieder zu starten, löschen Sie einfach die zugehörige Profildatei – oder verfrachten VLC mittels aa-complain usr.bin.vlc in den Beschwerdemodus.

Soll langfristig ein valides AppArmor-Profil den VLC-Player beschützen, so beginnen Sie die Profilerstellung von Neuem oder passen das bestehende Profil an, indem Sie es von Hand bearbeiten.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 06/2017: System im Griff

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

Anfänger Frage
Klaus Müller, 24.05.2017 14:25, 1 Antworten
Hallo erstmal. Habe von linux nicht so viel erfahrung müsste aber mal ne doofe frage stellen. A...
Knoppix-Live-CD (8.0 LU-Edition) im Uefiboot?
Thomas Weiss, 26.04.2017 20:38, 2 Antworten
Hallo, Da mein Rechner unter Windows 8.1/64Bit ein Soundproblem hat und ich abklären wollte, o...
Grub2 reparieren
Brain Stuff, 26.04.2017 02:04, 5 Antworten
Ein Windows Update hat mir Grub zerschossen ... der Computer startet nicht mehr mit Grub, sondern...
Linux open suse 2,8
Wolfgang Gerhard Zeidler, 18.04.2017 09:17, 2 Antworten
Hallo.bitte um Hilfe bei. Code fuer den Rescue-login open suse2.8 Mfg Yvo
grep und sed , gleicher Regulärer Ausdruck , sed mit falschem Ergebnis.
Josef Federl, 15.04.2017 00:23, 1 Antworten
Daten: dlfkjgkldgjldfgl55.55klsdjfl jfjfjfj8.22fdgddfg {"id":"1","name":"Phase L1","unit":"A",...