ubuntuusers.de

PHPVirtualBox

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Artikel für fortgeschrittene Anwender

Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

phpvbox-logo.png PHPVirtualBox ist eine Weboberfläche für VirtualBox, um einen Server ohne grafische Oberfläche zu betreiben, dessen Hauptaufgabe die Virtualisierung ist. Sie bietet den Komfort einer vereinfachten Bedienung von VirtualBox. Die Weboberfläche sieht weitestgehend so aus wie die Qt-GUI des Herstellers. Das erleichtert die Bedienung einer VirtualBox auf einem Server enorm. Das Übertragen von Installationsmedien von Betriebssystemen ist noch nicht integriert, aber es ist zumindest möglich, lokale Dateien zu nutzen, die z.B per FTP übertragen wurden.

Das Programm wurde mit der Lizenz GPL v3.0 🇩🇪 veröffentlicht.

Voraussetzungen

Webserver

Vorausgesetzt wird der Webserver Apache mit installierter PHP5-Unterstützung. Wer stattdessen nginx einsetzen möchte, nutzt die Anleitung Managing A Headless VirtualBox Installation With phpvirtualbox On nginx (Ubuntu 12.04) 🇬🇧.

Virtualbox

Die Installation von VirtualBox wird ausführlich im Artikel VirtualBox/Installation erklärt. Anschließend muss lediglich folgende Zeile im Terminal ausgeführt werden [1][2]:

sudo VBoxManage setproperty websrvauthlibrary null 

Erweiterungen

  • Remote Desktop Protocol (Konsolen-Tab) - VirtualBox ExtensionPack (PUEL)

Installation

Das Programm ist nicht in den offiziellen Paketquellen enthalten.

Manuell

Hinweis!

Fremdsoftware kann das System gefährden.

Die Installation erfolgt mit Root-Rechten und besteht aus dem Herunterladen des Pakets sowie dem Entpacken [3] in das "document root" des Webservers, also konkret nach /var/www/ (VERSION ist entsprechend anzupassen):

sudo -i
cd /var/www
wget 'http://sourceforge.net/projects/phpvirtualbox/files/latest/download' --content-disposition
apt install unzip
unzip phpvirtualbox-VERSION.zip -d phpvirtualbox-VERSION
ln -s phpvirtualbox-VERSION phpvirtualbox
#Nutzer wird hinzugefuegt
useradd -m vbox -G vboxusers
passwd vbox
#Header und Kernelmodule werden gesondert aktualisiert
apt install linux-headers-$(uname -r) dkms
apt install php-xml
exit 

Hinweis:

Soll der neu angelegte Benutzer vbox Zugriff auf das CD-Laufwerk des Servers haben dürfen, muss dieser zusätzlich in die Gruppe cdrom aufgenommen werden.

VirtualBox Extension Pack

Die Installation des VirtualBox Extension Packs ist optional, also nicht unbedingt erforderlich, aber empfehlenswert.

Installation

Auch hier ist wieder VERSION anzupassen:

wget http://download.virtualbox.org/virtualbox/VERSION/Oracle_VM_VirtualBox_Extension_Pack-VERSION.vbox-extpack
VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-VERSION.vbox-extpack 

Durch das Zustimmen zu den Lizenzbedingungen wird VirtualBox zur PUEL-Version.

Alternativen

Es ist alternativ möglich, zur grafischen Verwaltung VNC zu nutzen oder die Verwaltung auf der Kommandozeile via SSH durchzuführen.

Einstellungen

Die Konfiguration der VirtualBox-Schnittstelle erfolgt über die Datei /etc/default/virtualbox, die mit einem Editor [4] und Root-Rechten bearbeitet wird. Dort werden folgende Zeilen eingefügt:

VBOXWEB_USER=vbox
VBOXWEB_HOST={IP-Adresse des Hosts(ohne Klammern)}

Mit einem anschließenden Start des Dienstes ist dieser Teil abgeschlossen:

systemctl start vboxdrv
systemctl start vboxweb
systemctl enable vboxdrv
systemctl enable vboxweb 

Nachdem man die Beispielkonfiguration mit:

cp /var/www/html/phpvirtualbox/config.php-example /var/www/html/phpvirtualbox/config.php 

kopiert hat, muss /var/www/html/phpvirtualbox/config.php noch angepasst werden:

var $username = 'vbox';
var $password = '{Passwort des vbox-Benutzers (ohne Klammern)}';
var $location = 'http://{IP-Adresse des Servers (ohne Klammern)}:18083/';
var $language = 'de'
var $consoleHost = '{IP-Adresse des Servers (ohne Klammern)}';

Anschliessend passt man die datei /lib/systemd/system/vboxweb.service mit dem Editor an:

ExecStart=/usr/bin/vboxwebsrv -H {IP-Adresse des Servers (ohne Klammern)} --pidfile /run/vboxweb.pid --background

Nun muss diese Datei mit folgendem Befehl kopiert werden, damit sie sich auch bei Updates nicht ändert:

cp /lib/systemd/system/vboxweb.service /etc/systemd/system/vboxweb.service

Verwendung

Der erste Login mit:

  • Benutzer: admin

  • Passwort: admin

erfolgt unter http://<SERVER-IP_ODER_NAME>/html/phpvirtualbox. Für die weitere Verwendung sei auf den Artikel VirtualBox verwiesen.

Hinweis:

Es wird empfohlen, nach der erfolgreichen Anmeldung unter "Ablage → Passwort ändern" das Kennwort zu ändern, damit man auch alles absichert.

Fernsteuerung über die php VirtualBox Web Console

Für die Verwendung der Konsolenansicht wird die Aktivierung der Fernsteuerung benötigt. Oder man verwendet SSH. Dennoch ist es wichtig, dass für die Fernsteuerung unterschiedliche Ports genommen werden, weil sich mehrere gleichzeitig laufende Maschinen gegenseitig stören.

Gasterweiterung installieren

Leider fehlt in der VirtualBox-Web-Console das Menü der gestarteten virtuellen Maschine: "Geräte → Gasterweiterungen installieren...". Es ist jedoch weiterhin möglich, die Gasterweiterung als ISO-Image einzubinden.

Diese Revision wurde am 11. Januar 2018 13:12 von kruettlip erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Server, Netzwerk, Emulation und Virtualisierung