کنترل oracle virtualbox از طریق وب

VirtualBox یک نرم افزار مجازی ساز است که به وسیله ی اون می تونید ماشین مجازی ایجاد کنید و انواع سیستم عامل ها را روی آن نصب و استفاده کنید. این محصول یکی از محصولات اوراکل میباشد .

این نرم افزار را می تونید از طریق رابط دستکتاپی و خط فرمان کنترل کنید،ولی توی این مطلب میخوام آموزش کنترل ویرچال باکس را  از طریق مرورگر وب بدم که بیشتر زمانی کاربرد داره که مثلا شما ویرچال باکس را روی یک سرور راه دور نصب کردید و حالا می خواین از طریق یه سیستم دیگه، و با استفاده از مرورگر وب اون رو کنترل کنید.

برای این کار ابزاری به نام phpVirtualBox وجود داره که نحوه استفاده از اون رو شرح خواهم داد.

س از  نصب ویرچال باکس باید Extension اون رو هم نصب کنید که قابلیت پشتبانی از USB 2,VirtualBox RDP و PXE boot رو فراهم می کنه.برای اینکار به اینجا برید و اکستشن رو دانلود کنید.البته با IP غیر ایرانی باید دانلود کنید.به هر حال روش دانلود به اینصورت است :

#wget http://download.virtualbox.org/virtualbox/4.2.16/Oracle_VM_VirtualBox_Extension_Pack-4.2.16-86992.vbox-extpack

و برای نصبش می تونید روی آن دابل کلیک کنید یا این دستور رو بزنید :

#VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.2.16-86992.vbox-extpack

اینجا ویرچال باکس و اکستنشن اون رو نصب کردیم، حالا اگر روی سیستمتون فقط کاربر root دارید یه کاربر با گروه بسازید (اگر کاربر دارید نیازی به اینکار نیست)  :

# groupadd hos7ein
# useradd -d /home/hos7ein  -m -g hos7ein -s /bin/bash  hos7ein

و تعیین پسورد برای این کاربر :

#passwd  hos7ein

حالا کاربرتون رو به گروه vboxusers نیز اضافه کنید :

#usermod -G vboxusers  hos7ein

حالا این فایل رو بسازید :

#nano  /etc/default/virtualbox

و این خط رو بهش اضافه کنید :

VBOXWEB_USER=hos7ein

توجه داشته باشید شما به جای نام کاربری hos7ein که توی این دستور ها استفاده کردم،نام کاربری که ساختید رو بنویسید.

سپس سرویس vboxweb-service را فعال و restart کنید :

#systemctl enable vboxweb-service.service

#systemctl restart vboxweb-service.service

حالا نیاز به وب سرور با پشتبانی php داریم که اسکریپت phpVirtualBox رو اجرا کنه.برای اینکار Apache  و PHP و ابزارهای مربوطه رو نصب می کنیم :

# yum install httpd php php-mysql php-pear apr apr-util-sqlite apr-util-ldap apr-util wget

سپس سرویس آپاچی رو فعال می کنیم :

#systemctl enable httpd.service

و آپاچی رو start می کنیم :

#systemctl start httpd.service

آپاچی به صورت پیش فرض به مسیر var/www/html/ اشاره می کنه و من قصد دارم تا اسکریپت phpVirtualBox رو توی این مسیر قرار بدم :

/var/www/html/phpvirtualbox

هر چند شما می تونید مسیر دیگه ای رو  که در نظر دارید استفاده کنید.به هر حال وارد مسیر گفته شده میشیم :

#cd /var/www/html

و اسکریپت phpVirtualBox رو دانلود می کنیم :

#wget  http://kaz.dl.sourceforge.net/project/phpvirtualbox/phpvirtualbox-4.2-7.zip

Unzip و تغییر نام می دهیم :

#unzip  phpvirtualbox-4.2-7.zip

#mv   phpvirtualbox-4.2-7    phpvirtualbox

وارد پوشه میشیم :

#cd  /var/www/html/phpvirtualbox

از فایل config.php-example یک نسخه کپی کنید یا اون رو به config.php تغییر نام بدهید :

#cp  config.php-example  config.php

فایل config.php را باز کنید :

#nano  config.php

و تقریبا خط های ۱۲ و ۱۳  را با نام کاربری که ساختید و پسورد آن جایگزین کنید :

[…]

/* Username / Password for system user that runs VirtualBox */

var $username = ‘hos7ein’;

var $password = ‘fedorafans.com’;

[…]

خب تقریبا همه چی تمامه و حالا کافی هست تا مرورگر خودتون رو باز کنید و آدرس پایین رو بنویسید :

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

نکته اینکه به جای www.example.com و کلا آدرس گفته شده باید آدرس یا نام سیستمی رو بنویسید که VirtualBox و اسکریپت phpVirtualBox روی آن نصب است.

پس از وارد کردن آدرس این صفحه را مشاهده خواهید کرد که نام کاربری admin و پسورد admin را وارد کنید :