1 AppArmor (Der digitale Bodyguard für Anwendungen)
Im Gegensatz zu den klassischen Linux-Dateirechten (wo ein Programm alles darf, was der ausführende Benutzer darf) setzt AppArmor auf das Prinzip der Anwendungs-Einkapselung (Sandboxing). Selbst wenn du ein Programm als mächtiger root-Nutzer startest, darf dieses Programm durch AppArmor nur exakt das tun, was ihm in seinem spezifischen Sicherheits-Profil erlaubt wurde.
Wenn beispielsweise dein Webbrowser durch eine Sicherheitslücke im Internet kompromittiert wird, verhindert AppArmor im Kernel, dass der Angreifer auf deine privaten Dokumente im Heimatverzeichnis zugreift oder die Passwörter ausliest – weil der Browser laut seinem AppArmor-Profil schlicht keinen Zugriff darauf hat.
1.1 🔬 Wie funktioniert AppArmor? (Die Profile)
AppArmor arbeitet pfadbasiert. Das bedeutet, das System schaut sich den genauen Pfad einer ausführbaren Datei an (z. B. /usr/bin/firefox) und sucht nach einem passenden Profil unter /etc/apparmor.d/.
Ein Profil kann in zwei Modi laufen:
- Enforce-Modus (Erzwingen):
Das Profil ist scharf geschaltet. Jede Aktion, die nicht ausdrücklich erlaubt ist, wird vom Kernel sofort blockiert und im System-Log protokolliert. - Complain-Modus (Beschweren):
Das Profil läuft im Testbetrieb. Das Programm darf alles tun, aber jede Verletzung der Regeln wird im Logbuch protokolliert.
1.2 🛠️ Status und Installation (Das "Große Vier"-Gesetz)
Unter Debian und openSUSE gehört AppArmor zum Standard-Lieferumfang und ist ab Werk aktiv.
Unter Fedora wird historisch auf das konkurrierende SELinux gesetzt (weshalb man dort AppArmor meist nicht nachrüstet).
Unter Arch Linux ist es im Kernel eingebaut, muss aber vom Nutzer aktiviert werden.
So kontrollierst oder installierst du den Dienst:
1.2.1 1. Unter Debian 13 (Trixie) / Ubuntu
Bereits standardmäßig installiert und aktiv. Zum Nachinstallieren der Standard-Profile:
sudo apt update
sudo apt install apparmor-profiles apparmor-utils
sudo systemctl enable --now apparmor
1.2.2 2. Unter Arch Linux / EndeavourOS
Hier muss es in den Kernel-Parametern aktiviert und der Dienst nachinstalliert werden:
(In Arch muss zusätzlich apparmor=1 lsm=landlock,lockdown,yama,apparmor,bpf in die Zeile der Bootloader-Konfiguration eingefügt werden).
1.2.3 3. Unter Fedora Linux
Fedora nutzt standardmäßig SELinux.
Eine parallele Installation von AppArmor wird dringend nicht empfohlen, da sich zwei Sicherheitsmodule auf Kernel-Ebene gegenseitig blockieren.
1.2.4 4. Unter openSUSE (Tumbleweed / Leap)
Bereits standardmäßig voll integriert und aktiv. Verwaltung der Werkzeuge via:
1.3 🖥️ Wichtige Terminal-Befehle zur Kontrolle
Den aktuellen Sicherheits-Status abfragen:
(Dieser Befehl zeigt dir genau an, wie viele Profile geladen sind, wie viele im „Enforce“-Modul laufen und welche Prozesse aktuell aktiv überwacht werden).
Ein Profil in den Testmodus (Complain) versetzen:
Ein Profil wieder scharf schalten (Enforce):
1.4 ⚠️ Die klassischen Stolpersteine
1.4.1 1. "Ein Programm startet plötzlich nicht mehr oder kann keine Dateien speichern, obwohl die Rechte stimmen!"
- Die Ursache:
Das ist der häufigste Fall nach einem großen Software-Update.
Wenn Entwickler Pfade ändern (z. B. wenn ein Programm Daten nun in ~/.var/ statt ~/.config/ ablegen will), blockiert das alte AppArmor-Profil diesen neuen Schreibvorgang gnadenlos. Der Nutzer sieht oft nur eine nichtssagende Fehlermeldung wie „Zugriff verweigert“. Die Lösung: Im System-Log nachschauen, ob AppArmor der Schuldige ist.
Der Befehl lautet:Taucht dort das Wort DENIED auf, sieht man genau, welche Datei blockiert wurde. Man kann das Profil dann im Complain-Modus testen oder den Pfad in der Profil-Datei unter /etc/apparmor.d/ manuell erlauben.
1.5 📝 Ergänzung:
QuoteMerksatz:
Eine Firewall schützt das System vor unbefugten Zugriffen aus dem Netzwerk.
AppArmor schützt das System vor Schäden durch Amok laufende oder kompromittierte lokale Programme.