пятница, 7 февраля 2020 г.

How to setup VirtualBox network for host and guest systems

This were found at ServerFault:


  1. Setup the virtualbox to use 2 adapters:
    • The first adapter is set to NAT (that will give you the internet connection).
    • The second adapter is set to host only.
  2. Start the virtual machine and assign a static IP for the second adapter in Ubuntu (for instance 192.168.56.56). The host Windows will have 192.168.56.1 as IP for the internal network (VirtualBox Host-Only Network is the name in network connections in Windows). What this will give you is being able to access the apache server on ubuntu, from windows, by going to 192.168.56.56. Also, Ubuntu will have internet access, since the first adapter (set to NAT) will take care of that.
  3. Now, to make the connection available both ways (accessing the windows host from the ubuntu guest) there's still one more step to be performed. Windows will automatically add the virtualbox host-only network to the list of public networks and that cannot be changed. This entails that the firewall will prevent proper access.
  4. To overcome this and not make any security breaches in your setup:
    • go to the windows firewall section, in control panel,
    • click on advanced settings. In the page that pops up,
    • click on inbound rules (left column), then on new rule (right column). Chose custom rule, set the rule to allow all programs, and any protocol. For the scope, add in the first box (local IP addresses) 192.168.56.1, and in the second box (remote IP) 192.168.56.56. Click next, select allow the connection, next, check all profiles, next, give it a name and save.
That's it, now you have 2 way communication, with apache/any other service available as well as internet. The final step is to setup a share. Do not use the shared folders feature in virtualbox, it's quite buggy especially with windows 7 (and 64 bit). Instead use samba shares - fast and efficient.


In my case - I use Linux system as a host an as a guest systems. 
For Ubuntu 18.04 LTS server we need to use "netplan" utility as describe here.
Make edit file and add new section for new interface:
/etc/netplan/50-cloud-init.yaml
And after editing we need to save configuration and reload network config:

sudo netplan apply
enp0s8:    
      dhcp4: no
      dhcp6: no
      addresses: [192.168.56.110/24, ]
      gateway4:  192.168.56.1
      nameservers:
              addresses: [8.8.8.8, 8.8.4.4]

среда, 5 февраля 2020 г.

How to install Virtualbox extension pack on Linux host by CLI


  1. Install Virtualbox
  2. Download extension pack (for the installed version of Virtualbox)
  3. Make VM (in my case - Ubuntu LTS server)
  4. From VM menu:
    - Devices -> Insert Guest Addition CD Image
  5. If it does error, do this in Guest System:
    sudo apt install build-essential dkms
  6. Do this:
    mount /dev/cdrom /mnt
    cd /mnt
    sudo ./VBoxLinuxAdditions.run
    reboot
  7. cd
  8. umount /mnt
  9. Devices -> Optical Drive -> Remove disk from optical drive
  10. Remove Extension Pack from Host system:
    rm ~/.config/VirtualBox/VboxGuestAdditions_XX.iso
  11. Remove Guest Additions:
    cd /opt//
    sudo ./uninstall.sh