mkosi-sandbox – Befehle in einer angepassten Sandbox
ausführen
ÜBERSICHT
mkosi-sandbox [Optionen…] Befehl
[Argumente]
mkosi-sandbox führt den angegebenen Befehl in einer
angepassten Sandbox aus. Diese Sandbox wird durch die Angabe von
Befehlszeilenoptionen für bestimmte Teile der Sandbox
konfiguriert.
Falls kein Befehl angegeben ist, wird mkosi-sandbox
bash(1) in der Sandbox starten.
Beachten Sie, dass diese Sandbox nicht als Sicherheitsgrenze
entwickelt wurde. Sie ist zur Ausführung von Befehlen in einer
isolierten Umgebung gedacht, so dass diese nicht vom Wirtsystem beeinflusst
werden.
- --tmpfs
ZIEL
- Hängt ein neues Tmpfs unter ZIEL in der
Sandbox ein.
- --dev
ZIEL
- Richtet ein privates /dev unter
ZIEL in der Sandbox ein. Dieses private
/dev wird nur die grundlegenden
Geräteknoten beinhalten, die für eine funktionierende
Sandbox notwendig sind (z.B. /dev/null) und
keine tatsächlichen Geräte.
- --proc
ZIEL
- Hängt /proc des Wirtsystems unter
ZIEL in der Sandbox ein.
- --dir
ZIEL
- Erstellt ein Verzeichnis und alle übergeordneten Verzeichnisse
unter ZIEL in der Sandbox. Alle Verzeichnisse
werden mit Modus 755 erstellt, außer der Pfad endet auf
/tmp oder /var/tmp, dann
wird es mit Modus 1777 erstellt.
- --bind QUELLE
ZIEL
- Der Quellpfad QUELLE wird rekursiv unter
ZIEL in der Sandbox bind-eingehängt. Der
Einhängepunkt wird in der Sandbox erstellt, falls er nicht
existiert. Es werden auch alle fehlenden Überverzeichnisse in der
Sandbox erstellt.
- --bind-try
QUELLE ZIEL
- Ähnlich wie --bind, schlägt aber
nicht fehl, wenn der Quellpfad nicht existiert.
- --ro-bind QUELLE
ZIEL
- Wie --bind, führt aber eine
schreibgeschützte rekursive Bind-Einhängung durch.
- --ro-bind-try
QUELLE ZIEL
- Wie --bind-try, führt aber eine
schreibgeschützte rekursive Bind-Einhängung durch.
- --symlink
QUELLE ZIEL
- Erstellt einen Symlink unter ZIEL in der Sandbox,
der auf QUELLE zeigt. Falls
ZIEL bereits existiert und eine Datei oder ein
Symlink ist, wird ein temporärer Symlink erstellt und auf
ZIEL eingehängt.
- --write
DATEN ZIEL
- Schreibt die Zeichenkette aus DATEN an
ZIEL in der Sandbox.
- --overlay-lowerdir
VERZ
- Fügt VERZ vom Wirt als neues unteres
Verzeichnis für die nächste Overlayfs-Einhängung
hinzu.
- --overlay-upperdir
VERZ
- Setzt das obere Verzeichnis für die nächste
Overlayfs-Einhängung auf VERZ vom Wirt.
Falls auf tmpfs gesetzt, werden das obere und das
Arbeitsverzeichnis Unterverzeichnisse der frischen Tmpfs-Einhängung
sein.
- --overlay-workdir
VERZ
- Setzt das Arbeitsverzeichnis für die nächste
Overlayfs-Einhängung auf VERZ von dem
Wirt.
- --overlay
ZIEL
- Hängt ein neues Overlay-Dateisystem unter
ZIEL in die Sandbox ein. Die unteren
Verzeichnisse, das obere und das Arbeitsverzeichnis werden mittels der
Optionen --overlay-lowerdir,
--overlay-upperdir bzw.
--overlay-workdir festgelegt. Nachdem jede Option
--overlay ausgewertet wurde, werden die anderen
Overlay-Optionen zurückgesetzt.
- --unsetenv
NAME
- Entfernt eine in der Sandbox gesetzte Umgebungsvariable
NAME.
- --setenv
NAME WERT
- Setzt in der Sandbox die Umgebungsvariable NAME
auf WERT.
- --chdir
VERZ
- Ändert das Arbeitsverzeichnis in der Sandbox auf
VERZ.
- --same-dir
- Ändert das Arbeitsverzeichnis in der Sandbox auf das aktuelle
Arbeitsverzeichnis, in dem mkosi-sandbox auf dem Wirt aufgerufen
wurde.
- --become-root
- Bildet den aktuellen Benutzer auf den Benutzer »root« in der
Sandbox ab. Falls diese Option nicht angegeben ist, wird der aktuelle
Benutzer in der Sandbox auf sich selbst abgebildet. Unabhängig von
der Angabe dieser Option wird der aktuelle Benutzer einen
vollständigen Satz an Umgebungs-Capabilitys in der Sandbox haben.
Dazu gehört CAP_SYS_ADMIN, was bedeutet,
dass der aufgerufene Prozess in der Sandbox in der Lage sein wird,
Bind-Einhängungen und andere Aktionen durchzuführen.
Falls mkosi-sandbox als Benutzer root aufgerufen wird,
macht diese Option nichts.
- --suppress-chown
- Durch Angabe dieser Option werden alle Aufrufe von
chown() oder ähnliche Systemaufrufe in der
Sandbox wirkungslos. Dies ist hauptsächlich für den Aufruf
von Paketverwaltern in der Sandbox nützlich, da diese versuchen
könnten, Dateien mittels chown() auf andere
Benutzer oder Gruppen zu ändern und dies fehlschlagen
könnte, wenn mkosi-sandbox nicht als privilegierter Benutzer
aufgerufen wird.
- --unshare-net
- Durch Angabe dieser Option trennt mkosi-sandbox wenn möglich
einen Netzwerknamensraum ab.
- --unshare-ipc
- Durch Angabe dieser Option trennt mkosi-sandbox wenn möglich
einen IPC-Namensraum ab.
- --exec-fd
DD
- Der angegebene DD wird geschlossen, wenn
mkosi-sandbox execvp() aufruft. Dies ist
nützlich, damit auf die Beendigung sämtlicher
Einrichtungslogik gewartet wird, bevor im übergeordneten Prozess,
der mkosi-sandbox aufgerufen hat, fortgefahren wird.
- --version
- Zeigt die Paketversion.
- --help,
-h
- Zeigt einen kurzen Hinweis zum Aufruf.
bash(1) im aktuellen Arbeitsverzeichnis mit seinem eigenen
Netzwerknamensraum als aktuellen Benutzer starten:
-
mkosi-sandbox --bind / / --same-dir --unshare-net
id(1) als der Benutzer root mit nur
/usr vom Hauptsystem sowie den notwendigen Symlinks,
um Befehle ausführen zu können, in der Sandbox
ausführen:
-
mkosi-sandbox \
--ro-bind /usr /usr \
--symlink usr/bin /bin \
--symlink usr/bin /bin \
--symlink usr/lib /lib \
--symlink usr/lib64 /lib64 \
--symlink usr/sbin /sbin \
--dev /dev \
--proc /proc \
--tmpfs /tmp \
--become-root \
id
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von
Helge Kreutzmann <debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU General
Public License Version 3 oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite
finden, schicken Sie bitte eine E-Mail an die Mailingliste der
Übersetzer:
debian-l10n-german@lists.debian.org.