AppArmor in Ubuntu verstehen [Linux]
Sie haben wahrscheinlich schon während der Installation von Ubuntu von dem AppArmor gehört, aber da es sich nicht um eine Anwendung handelt, die im Anwendungsmenü erscheint und nicht in einer grafischen Form erscheint, haben die meisten wahrscheinlich keine Ahnung, was sie tut und warum Es ist wichtig für Ihr System. Kurz gesagt, AppArmor ist ein Sicherheitsmodul, das einzelne Programme auf eine Reihe von aufgelisteten Dateien und Funktionen beschränkt, damit sie auf Ihrem System keinen Schaden anrichten.
Was ist AppArmor?
AppArmor ist ein Mandatory Access Control (MAC) -System, das Programme auf eine begrenzte Anzahl von Ressourcen beschränkt. Es beschränkt Programme auf eine Reihe von Dateien, Attributen und Fähigkeiten, so dass es nicht tief in das System eindringen und Chaos anrichten kann (es sei denn, es wird ihm die Erlaubnis erteilt). Anstelle des UAC-Modells von Windows, mit dem die Benutzer gesteuert werden, bindet AppArmor die Zugriffssteuerungsattribute an das Programm selbst.
Wie funktioniert AppArmor?
AppArmor arbeitet auf Kernel-Ebene und wird während des Bootvorgangs geladen. Die Art und Weise, wie AppArmor die Berechtigung behandelt, erfolgt über Profile. Profile ist eine Reihe von Regeln, die bestimmen, was das Programm kann und was nicht. Es gibt zwei Modi, die die Profile ausführen können: Erzwingen und Beschweren . Der Erzwingungsmodus ist eine strenge Durchsetzung der im Profil definierten Richtlinie sowie die Meldung von Richtlinienverstößen. Im Modus "Beschwerde" werden nur die Richtlinienverletzungsversuche gemeldet, die Richtlinie wird jedoch nicht erzwungen. Die meisten Profile werden im Enforcement-Modus geladen, obwohl es auch eine gute Anzahl von Drittanbieter-Profilen geben kann, die ebenfalls im Complain-Modus geladen werden.
Überprüfen Sie Ihren AppArmor-Status
Wenn Sie Ubuntu 7.04 oder höher verwenden, wird AppArmor standardmäßig installiert und beim Booten des Computers geladen. Geben Sie den folgenden Befehl in dem Terminal ein, um den AppArmor-Status zu überprüfen:
sudo apparmor_status
Das wirst du sehen:
In meinem System können Sie sehen, dass im Enforcement-Modus 17 Profile geladen sind und 4 aktuell laufende Prozesse von AppArmor erzwungen werden.
Suche nach deaktivierten AppArmor-Profilen
Zusätzlich zu den Profilen, die beim Systemstart ausgeführt werden, stehen mehrere Profile zur Verfügung, die standardmäßig deaktiviert sind. Sie können sie im Ordner "/etc/apparmor.d/disable" auschecken. Von hier aus können Sie sehen, dass die Profile Firefox und Rsyslogd nicht aktiviert sind.
Das Firefox-Profil wurde wahrscheinlich deaktiviert, da es zu einem Leistungsabfall in Firefox führt. Wenn Sie jedoch das Profil aktivieren möchten, damit Sie im Internet in Ruhe surfen können, können Sie dies wie folgt tun.
Öffnen Sie ein Terminal und geben Sie Folgendes ein:
sudo aa-enforce /etc/apparmor.d/usr.bin.firefox
Um es wieder zu deaktivieren:
sudo ln -s /etc/apparmor.d/usr.bin.firefox /etc/apparmor.d/disable/sudo apparmor_parser -R /etc/apparmor.d/usr.bin.firefox
Wie sieht ein AppArmor-Profil aus?
Während sich die Profile wie ein kompliziertes Softwaremodul anhören, handelt es sich tatsächlich um eine einfache Textdatei mit darin enthaltenen Dateipfaden, aus der hervorgeht, auf welche Ordner und Verzeichnisse die Anwendung zugreifen kann. So sieht das eVince-Profil aus (Sie können einfach auf ein beliebiges Profil im Ordner "/etc/apparmor.d" klicken, um es in Ihrem Texteditor zu öffnen).
Erstellen Sie Ihre eigenen Profile, um die Anwendung zu sperren
Ubuntu hat eine ziemlich gute Arbeit geleistet, um Sie zu schützen, aber wenn Sie eine benutzerdefinierte Anwendung einschränken möchten, die nicht durch Ubuntu geschützt ist, können Sie ein eigenes Profil erstellen, um die Anwendung zu sperren. Dies ist besonders nützlich in einem Serverzustand, in dem viele Anwendungen im Hintergrund ausgeführt werden, wo Sie sie nicht sehen können.
Hinweis : Bevor Sie eigene Profile erstellen, sollten Sie zunächst in die vorhandene AppArmor-Profilbibliothek schauen, um zu überprüfen, ob das Profil für Ihre Anwendung verfügbar ist. Sie können auch " apparmor-profiles
" installieren, um eine zusätzliche Liste von Profilen zu erhalten.
Um eigene AppArmor-Profile zu erstellen, müssen Sie zuerst "apparmor-utils" installieren.
sudo apt-get installieren apparmor-utils
Führen Sie nach der Installation den folgenden Befehl aus, um das Profiling zu starten:
sudo aa-genprof / Pfad / zu / Anwendung
Dabei ist "/ Pfad / zu / Anwendung" der Dateipfad zu der Anwendung, die Sie profilieren möchten. Der Standardanwendungsordner ist "/ usr / bin", kann aber je nach Anwendung unterschiedlich sein.
Als nächstes starten Sie (das Terminal läuft) die Anwendung, die Sie Profilieren werden. In diesem Beispiel verwende ich Krita. Verwenden Sie die Anwendung wie an jedem anderen Tag.
Für jede Aktion, die Sie an der Anwendung ausführen, kehren Sie zum Terminal zurück und drücken Sie "Shift + s", um nach Änderungen zu suchen.
Von hier aus können Sie den Pfad, auf den die Anwendung zugreift, und den Schweregrad der Aktion sehen. Sie können dann die Aktion "Zulassen (A)" oder "Ablehnen (D)" zulassen.
Tun Sie dies für den Rest der Aktionen, die für die Anwendung ausgeführt werden. Um das beste Ergebnis zu erzielen, planen Sie am besten die Liste der Aktionen aus, bevor Sie mit dem Profiling beginnen.
Wenn Sie fertig sind, drücken Sie "Shift + F", um das Profiling zu beenden und "Shift + s", um das Profil zu speichern.
Nach der Erstellung wird das Profil im Ordner "/etc/apparmor.d" gespeichert und im Enforcement-Modus geladen.
Bearbeiten Sie Profile
Verwenden Sie den folgenden Befehl, um das neu erstellte Profil zu bearbeiten:
sudo aa-logprof / Pfad / zu / Anwendung
AppArmor überprüft dann die Protokolleinträge und ermöglicht Ihnen, Änderungen am Profil vorzunehmen.
Stoppen und Neustarten von AppArmor
Aus bestimmten Gründen, die Sie zum Beenden oder Neustarten von AppArmor benötigen, können Sie dies problemlos tun
sudo-service apparmor stop #stop apparmor
und
sudo service apparmor neustart #restart apparmor
Weitere Informationen zu AppArmor finden Sie auf der Ubuntu AppArmor-Seite.
Bildnachweis: Ritter in glänzender Rüstung