Jailkit: Java in der chrooted-Shell

Nachdem es bereits ein Tutorial hier im KittMedia Blog gibt, das die Installation und Einrichtung von Jailkit zeigt, gibt es nun den nächsten Artikel, in dem die Konfiguration zu Jailkit gezeigt wird, um Java auch im chrooted-Shell zu aktivieren.

In der Standardkonfiguration nämlich enthält ein chrooted-Shell mit Jailkit keine Unterstützung für Java. Das nachfolgende Tutorial ist nur dazu geeignet, um Java-Programme aufzurufen, nicht aber, um Java-Quelltext zu kompilieren.

Vorbereitung

Bevor man Java in einem Jailkit einrichtet, muss natürlich Jailkit selbst installiert und eingerichtet werden. Wie das geht, steht hier:
kittmedia.com/2013/debian-chrooted-shell-mit-jailkit/

Konfiguration anpassen

Als grundlegender Schritt für Java in Jailkit muss die Konfiguration von Jailkit selbst geändert bzw. erweitert werden. Hierzu öffnet man die Datei /etc/jailkit/jk_init.ini und fügt folgenden Inhalt unten zusätzlich ein:

[java_libraries]
comment = necessary file to execute java program
paths = /usr/lib/jdk1.6.0_22/bin/java, /lib/libpthread.so.0, /lib/libdl.so.2, /lib/libc.so.6, /usr/lib/jdk1.6.0_22/jre/lib, /lib/libm.so.6, /lib/libm-2.5.so, /proc/meminfoCode-Sprache: JavaScript (javascript)

Java in Jailkit initialisieren

Wie auch alle anderen Befehle in Jailkit muss Java dann mit folgendem Befehl initialisiert werden:
jk_init -v /var/jail java_libraries
Hier muss natürlich gegebenenfalls der Pfad zur Jail angepasst werden.

Benutzerdefinierte Änderung

Als Jail-Benutzer, also der, der Java in seiner chrooted-Shell nutzen können darf, einloggen und folgende Befehle ausführen:
export JAVA_HOME=/usr/lib/jdk1.6.0_22
export PATH=$PATH:$JAVA_HOME/bin
export LD_LIBRARY_PATH=/usr/lib/jdk1.6.0_22/jre/lib/i386/jli/

Globale Änderung

Danach wieder als normaler root-Benutzer anmelden und das Verzeichnis /proc in die chrooted-Shell mounten:
mount --bind /proc /var/jail/proc

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert