Apparmor Funktionsweise

Aus Xinux Wiki
Version vom 16. Januar 2023, 17:35 Uhr von Thomas.will (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „*App Armor ist auch ein System zur Umsetzung von Mandatory Access Control. *Es unterscheidet für jede einzelne Datei, ob der erbetene Zugriff erlaubt ist ode…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen
  • App Armor ist auch ein System zur Umsetzung von Mandatory Access Control.
  • Es unterscheidet für jede einzelne Datei, ob der erbetene Zugriff erlaubt ist oder nicht..
  • Ganz gleich welcher Benutzer den Zugriff auf ein bestimmtes Objekt anfragt – er hat aus Sicht von App Armor exakt die gleichen Rechte wie alle anderen Benutzer auch.
  • Das einzige Kriterium, das für App Armor überhaupt eine Rolle bei der Entscheidung spielt, ob es den Zugriff auf ein Objekt erlaubt, ist dessen Pfad im System.
  • Die Regeln für dieses Spiel sind in so genannten Profiles definiert: Ein App-Armor-Profil legt die Zugriffsregeln für Programme im System fest.
  • Ein App-Armor-Profil für den Daemon »sshd« könnte zum Beispiel festlegen, dass dieses Programm auf die Datei »/etc/ssh/sshd_config« lesend zugreifen darf.
  • Führt Systemd das Programm »sshd« dann beim Systemstart tatsächlich aus, überprüft App Armor, dessen Systemaufrufe.
  • Es winkt sie durch oder blockiert sie, wenn der Daemon auf Ressourcen zugreifen will, die ihm nicht erlaubt wurden.
  • Die Profildateien liegen im Klartext-Format alle im Verzeichnis »/etc/ apparmor.d«.
  • Dort liest ein Hilfsprogramm sie aus und lädt sie beim Start des Systems in den laufenden Kernel.
  • Das hat aus Sicht des Nutzers den Vorteil, dass es sehr einfach ist, zusätzliche App-Armor-Profile hinzuzufügen.
  • Tatsächlich genügt es, ein syntaktisch korrektes File in den genannten Ordner zu platzieren.
  • Anschließend den Befehl »aa-enforce Programm« als Benutzer Root auf der Kommandozeile aufzurufen.
  • Programm ist dabei durch den Namen des Programms zu ersetzen, auf den sich das App-Armor-Profil beziehen soll.
  • Und das war es dann auch schon: Ab sofort schaut App Armor dem genannten Binary genau auf die Finger.