2Jul
AppArmor blockiert Programme auf Ihrem Ubuntu-System und gewährt ihnen nur die Berechtigungen, die sie bei normaler Verwendung benötigen - besonders nützlich für Server-Software, die möglicherweise kompromittiert wird. AppArmor enthält einfache Tools, mit denen Sie andere Anwendungen sperren können.
AppArmor ist standardmäßig in Ubuntu und einigen anderen Linux-Distributionen enthalten. Ubuntu liefert AppArmor mit mehreren Profilen, aber Sie können auch eigene AppArmor-Profile erstellen. AppArmors Dienstprogramme können die Ausführung eines Programms überwachen und Ihnen bei der Erstellung eines Profils helfen.
Bevor Sie ein eigenes Profil für eine Anwendung erstellen, sollten Sie das apparmor-profiles-Paket in den Ubuntu-Repositorys überprüfen, um festzustellen, ob bereits ein Profil für die Anwendung existiert, die Sie einschränken möchten.
Erstellen &Ausführen eines Testplans
Sie müssen das Programm ausführen, während AppArmor es beobachtet und alle seine normalen Funktionen durchläuft. Grundsätzlich sollten Sie das Programm so verwenden, wie es normalerweise verwendet wird: Starten Sie das Programm, stoppen Sie es, laden Sie es neu und nutzen Sie alle Funktionen. Sie sollten einen Testplan entwerfen, der die Funktionen durchläuft, die das Programm ausführen soll.
Bevor Sie Ihren Testplan durcharbeiten, starten Sie ein Terminal und führen Sie die folgenden Befehle aus, um aa-genprof zu installieren und auszuführen:
sudo apt-get installieren apparmor-utils
sudo aa-genprof /path/to/ binär
Lassen Sie aa-genprof im Terminal laufen, Starten Sie das Programm und führen Sie den oben beschriebenen Testplan durch. Je umfassender Ihr Testplan ist, desto weniger Probleme treten später auf.
Nachdem Sie Ihren Testplan ausgeführt haben, kehren Sie zum Terminal zurück und drücken Sie die Taste S , um das Systemprotokoll nach AppArmor-Ereignissen zu durchsuchen.
Für jedes Ereignis werden Sie aufgefordert, eine Aktion auszuwählen. Zum Beispiel können wir unten sehen, dass /usr/bin/ man, die wir profilierten, /usr/bin/ tbl ausgeführt. Wir können auswählen, ob /usr/bin/ tbl die Sicherheitseinstellungen von /usr/bin/ man erben soll, ob es mit seinem eigenen AppArmor-Profil laufen soll oder ob es im unbeschränkten Modus laufen soll.
Bei einigen anderen Aktionen werden Sie verschiedene Eingabeaufforderungen sehen - hier erlauben wir den Zugriff auf /dev/ tty, ein Gerät, das das Terminal
darstellt. Am Ende des Prozesses werden Sie aufgefordert, Ihr neues AppArmor-Profil zu speichern.
Aktivieren des Reklamationsmodus &Anpassen des Profils
Nachdem Sie das Profil erstellt haben, setzen Sie es in den "Reklamationsmodus", in dem AppArmor die möglichen Aktionen nicht einschränkt, sondern alle sonst auftretenden Einschränkungen protokolliert:
sudo aa-mask /path/to/ binär
Verwenden Sie das Programm normalfür eine Weile. Führen Sie den folgenden Befehl aus, um Ihre Systemprotokolle nach Fehlern zu durchsuchen und das Profil zu aktualisieren:
sudo aa-logprof
Verwenden des Erzwingmodus zum Sperren der Anwendung
Nach der Feinabstimmung Ihres AppArmor-Profils, aktivieren Sie "erzwingen Modus", um die Anwendung zu sperren:
sudo aa-erzwingen /path/to/ binär
Sie können den Befehl sudo aa-logprof zukünftig ausführen, um Ihr Profil zu optimieren.
AppArmor-Profile sind reine Textdateien, Sie können sie also in einem Texteditor öffnen und manuell bearbeiten. Die oben genannten Dienstprogramme führen Sie jedoch durch den Prozess.