phpVirtualBox - это веб-интерфейс для работы с VirtualBox через браузер. Обладает практически всеми функциями стандартного GUI VirtualBox.

Установка и настройка phpVirtualBox

Создайте директорию для phpVirtualBox и установите владельца:

sudo mkdir /var/www/pvb
sudo chown -R www-data:www-data /var/www/pvb

Устанавливите необходимые для работы phpVirtualBox пакеты:

sudo apt-get install php5-common php5-mysql php5-suhosin php5-fpm php-pear

Cкачайте phpVirtualBox:

cd /var/www/pvb && wget http://sourceforge.net/projects/phpvirtualbox/files/phpvirtualbox-4.3-1.zip/download

Распакуйте архив:

unzip phpvirtualbox-4.3-1.zip

Скопируйте образец конфигурационного файла phpVirtualBox:

sudo cp /var/www/pvb/config.php-example /var/www/pvb/config.php

Отредактируйте файл config.php:

sudo nano /var/www/pvb/config.php
var $username = 'user';     # имя пользователя и пароль, от которого 
var $password = 'password'; # запущен VirtualBox

var $location = 'http://192.168.0.1:18083/'; # адрес и порт, на котором запущена веб-служба VirtualBox

var $vrdeports = '5000-5100'; # диапазон портов для подключения по RDP

var $consoleHost = '192.168.0.1';  # адрес сервера, на котором работает VirtualBox

Настройка веб-службы VirtualBox

Отредактируйте файл /etc/default/virtualbox:

sudo nano /etc/default/virtualbox
VBOXWEB_USER=user        # имя пользователя, от которого запущен VirtualBox
VBOXWEB_HOST=192.168.0.1 # адрес, на котором запущена веб-служба VirtualBox
VBOXWEB_PORT=18083 # порт, на котором запущена веб-служба VirtualBox

Запустите веб-службу VirtualBox:

sudo service vboxweb-service start

Установка и минимальная настройка веб-сервера

В инструкции в качестве веб-сервера используется nginx. Также можно использовать любой другой веб-вервер с поддержкой PHP.

Установите nginx:

sudo apt-get install nginx

Создайте конфигурационный файл для nginx:

sudo nano /etc/nginx/conf.d/phpvirt.conf
server {
        listen   192.168.0.1:80;
 
        root /var/www/pvb/;
        index index.php index.html index.htm;
 
        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to index.html
                try_files $uri $uri/ /index.html;
                # Uncomment to enable naxsi on this location
                # include /etc/nginx/naxsi.rules
        }
 
 
        # pass the PHP scripts to FastCGI server listening on 1$
        #
        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_split_path_info ^(.+.php)(.*)$;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }
 
}

Перезагрузите nginx:

sudo service nginx restart

Ведите в браузере http://192.168.0.1/phpvirtualbox. В форме авторизации используйте admin:admin.

Смотрите также

Ссылки