Firejail
Baustelle: Dieser Artikel ist eine Baustelle. Das heißt, jemand hat sich dieses Artikels angenommen und überarbeitet ihn gerade. |
Diese Seite soll einen Überblick über die Einrichtung von Sandboxen mit firejail, dessen Anwendung und Funktionen bereitstellen.
Was ist firejail
Mit firejail kann man auf relativ einfache Weise Anwendungen in eine Sandbox einsperren. D.h. die Programme bekommen nur Zugriff auf bestimmte Daten, Devices oder Prozesse und sind von anderen Programmen abgeschottet.
ToDo: Funktionsweise Sandboxen genauer erklären. Quellen. Link zur Projektseite.
Installation
Da firejail ab Stretch in den Debian-Quellen, bzw. für Jessie in den Backports, vorhanden ist gestaltet sich die Installation einfach. Man muss lediglich das Paket firejail mit dem bevorzugten Paketmanager installieren, z.B. mit apt:
root@debian:~# apt install firejail
Einrichtung
Für viele Programme sind schon Profile unter /etc/firejail vorhanden und man kann diese einfach nutzen, indem man die Anwendung per firejail $PROGRAMMNAME aufruft. Per firecfg kann man sich für installierte Programme, für die ein Profil vorhanden ist, folgendermaßen automatisch Symlinks nach /usr/local/bin/ anlegen lassen:
root@debian:~# firecfg
Dadurch genügt es nun das Programm in einem Terminal oder per Alt+F2 mit dem Programmnamen ohne vorangestelltes firejail aufzurufen.
Mit folgendem Befehl kann man sich anzeigen lassen, welche Symlinks zu firejail von firecfg angelegt wurden:
user@debian:~$ firecfg --list
Da viele Programmstarter (.desktop-Dateien) unter /usr/local/share/applications/ den kompletten Pfad zum binary enthalten funktionieren die Verknüpfungen aus den Menüs der Desktopumgebungen für diese Programme nicht mit firejail. Das lässt sich ebenfalls automatisch mit firecfg beheben:
user@debian:~$ firecfg --fix
Parameter
ToDO: Übersicht über Parameter (in *.profile und Programmaufruf)