使用phpvirtualbox管理无头VirtualBox安装(Ubuntu 16.04 LTS)

Phpvirtualbox是一个基于Web的VirtualBox前端,使用PHP编写,允许您访问和控制远程VirtualBox实例。它试图重塑

phpvirtualbox是一个基于Web的VirtualBox前端,用PHP编写,它允许您访问和控制远程VirtualBox实例。 尽可能地尽可能地使VirtualBox GUI类似,使其尽可能简单。 如果您在无头服务器中运行VirtualBox(如教程中的VBoxHeadless - 在无头Ubuntu 16.04 LTS服务器上运行VirtualBox 5.1运行虚拟机),则可以很好地替代VirtualBox GUI。 本教程介绍如何在Ubuntu 16.04服务器上安装phpVirtualBox来管理本地安装的无头VirtualBox。

1初步说明

我假设在本地Ubuntu 16.04服务器上已经安装了一个无头VirtualBox,例如教程中所述的VBoxHeadless - 在无头Ubuntu 16.04 LTS服务器上运行VirtualBox 5.1的虚拟机

我使用root权限运行本教程中的所有步骤,因此请确保以root用户身份登录:

sudo su

2安装phpVirtualBox

首先,创建一个名为vbox的系统用户,并将其添加到vboxus组中:

useradd -m vbox -G vboxusers

创建vbox用户的密码:

passwd vbox

创建文件/ etc / default / virtualbox并将其中的VBOXWEB_USER = vbox放在其中(以便使用称为vboxwebsrv的VirtualBox SOAP API作为用户vbox运行):

nano /etc/default/virtualbox

VBOXWEB_USER=vbox

接下来创建vboxwebsrv的系统启动链接并启动它:

systemctl enable vboxweb-service
systemctl start vboxweb-service

我们需要一个支持PHP的Web服务器来提供phpVirtualBox - 我在这里使用Apache2。 安装Apache和PHP如下:

apt-get -y install apache2 libapache2-mod-php7.0 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libapr1 php7.0-common php7.0-mysql php7.0-soap php-pear wget

重新启动Apache:

systemctl restart apache2.service

我想从Apache的默认虚拟主机中使用文件root / var / www / html (我将其安装在/ var / www / html / phpvirtualbox )中提供phpVirtualBox - 如果您有不同的文档根目录,则必须调整以下步骤:

cd /var/www/html

wget http://downloads.sourceforge.net/project/phpvirtualbox/phpvirtualbox-5.0-5.zip

解压缩phpVirtualBox并将phpvirtualbox-5.0-5重命名为phpvirtualbox以方便使用:

unzip phpvirtualbox-5.0-5.zip
mv phpvirtualbox-5.0-5 phpvirtualbox

接下来去/ var / www / phpvirtualbox /目录...

cd /var/www/html/phpvirtualbox/

...并通过从config.php-example复制文件config.php

cp config.php-example config.php

打开config.php并填写您先前为vbox系统用户创建的密码:

nano config.php

[...]
/* Username / Password for system user that runs VirtualBox */
var $username = 'vbox';
var $password = 'secret';
[...]

已经有了 - 您现在可以打开浏览器并访问phpVirtualBox,如下所示:

http://www.example.com/phpvirtualbox/

或通过IP:

http://192.168.1.100/phpvirtualbox/