anúncios

domingo, 12 de julho de 2015

Gerenciando VirtualBox pelo navegador

Caso você tenha várias máquinas virtuais (VMs) no VirtualBox e pretende gerenciar o VirtualBox pelo navegador de qualquer máquina, então você está no lugar certo.
Será utilizado o projeto phpVirtualBox que foi desenvolvido com o objetivo de ser possível gerenciar VMs do VirtualBox pelo navegador.
No entanto são necessários a instalação do Apache e PHP no servidor que tiver instalado o VirtualBox.


Então, vamos nessa ? Segue os passos atentamente.
Procedimentos de instalação e configuração
Apache + PHP
No Debian
#apt-get install apache2 libapache2-mod-php5
Oracle VirtualBox
#echo "deb http://download.virtualbox.org/virtualbox/debian $(lsb_release -c | \rev | cut -d: -f1 | rev) contrib" >> /etc/apt/sources.list

#wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | apt-key add - #apt-get install virtualbox-4.3

Instalação do phpVirtualBox
#wget http://sourceforge.net/projects/phpvirtualbox/files/latest/download/phpvirtualbox-4.3-3.zip
#unzip phpvirtualbox-4.3-3.zip -d /var/wwww
Irá criar o diretório /var/www/phpvirtualbox-4.3-3, após extrair o arquivo phpvirtualbox-4.3-3.zip
Acessar /var/www e renomear o diretório.
#mv phpvirtualbox-4.3-3/ phpvirtualbox

Criação do usuário utilizador do VirtualBox
Precisamos adicionar um usuário para o serviço do VirtualBox e integração com phpVirtualBox.
#useradd -d /home/vbox -m -g vboxusers -s /bin/bash vbox
#passwd vbox
OBS: O nome de usuário vbox foi apenas uma sugestão, podendo ser qualquer outro usuário, desde que pertença ao grupo vboxusers.

Mapeando o usuário utilizador com o IP do servidor de virtualização
Criar o arquivo /etc/default/virtualbox
#vim /etc/default/virtualbox
Coloca nesse arquivo
VBOXWEB_USER=usuario_utilizador_vbox
VBOXWEB_HOST=IP_SERVIDOR_VIRTUALIZAÇÃO

Criar um VirtualHost para phpvirtualbox
#cd /etc/apache2/sites-available
#cp default phpvirtualbox
#vim phpvirtualbox
Altere as linhas
DocumentRoot /var/www/phpvirtualbox
< Directory /var/www/phpvirtualbox >

Habilita o VirtualHost
#a2ensite phpvirtualbox

No diretório onde foi extraído o phpVirtualBox /var/www/phpvirtualbox
#cd /var/www/phpvirtualbox
#mv config.php-example config.php
#vim config.php
Alterar as linhas 12, 13 e 176 var $varusername = 'usuario_vbox';
var $password = 'senha_usuario_vbox';
var $language = 'pt_br';
var $enableAdvancedConfig = true;

Por fim, ativar o serviço na inicialização do sistema
#update-rc.d vboxweb-service defaults

Faça o teste de outra máquina e tente acessar o servidor: http://IP/phpvirtualbox
Se acessar, então está OK, agora pode gerenciar as VMs pela interface web no navegador.

Caso as VMs estiver em outro local, deve mover para o diretório de usuário utilizador do VirtualBox, alterando as devidas permissões.
#hown -R vbox:vboxusers /home/vbox/VirtualBox\ VMs/[DirVM]/

Possíveis erros e soluções
1. Se caso ocorrer o erro "Invalid username or password".
O username / password default para logar no phpVirtualBox é admin/admin. Esse username/password é exclusivo do phpVirtualBox, porém você pode alterar o password por questão de segurança.

2. Caso após o acesso do login ocorrer o erro "Could not connect to host (http://127.0.0.1:18083/)". É porque faltou startar o serviço vboxwebsrv do VirtualBox.
#vboxwebsrv >nul &
#/etc/init.d/apache2 start
#/etc/init.d/vboxweb-service start
#/etc/init.d/vboxdrv start
Interessante colocar no script na inicialização.

3. Se caso ocorrer o erro "Method 'ns1:xxxxxxxxxxx' not implemented: method name or namespace not recognized". É porque a versão do phpVirtualBox é incompatível com a versão do VirtualBox. Verifique se esta na mesma versão.

Referência
http://sourceforge.net/p/phpvirtualbox/wiki/Home/
Feito!

Nenhum comentário:

Postar um comentário