How-To: Create a NethServer instance in VirtualBox machine

How-To: Create a NethServer in VirtualBox machine
And how to set up network connection between Host PC and NethServer Virtual Box

Version: V1.0 / R3.
For: Nethserver version 6.7, 6.x
Skill: General audience.

Published: 2015-11-15
Review: 2015-11-16
Author: Bogdan Chirica
Contact: NethServer community forum: CTek

Update 29-11-2015
Added link to video tutorial


This tutorial will help you to install NethServer into a virtual box machine (VBox).
Also, it will cover how to configure networking in virtual box that will allow communication between host PC and virtual box machine.

Video: of the whole tutorial Here:

Conventions used in this HOW-TO:

[Name] – It means that on the screen, you should see a button with that label and apply the actions to that button.

Name/Label – It means that a window or a field is labeled that way and you should apply your action onto that field or in that specific window

Option x – Means that you have to chose option X from more options or option fields.

“command x y” - Means that you have to type exactly the command within the quotes (without the quotes! just the command).
This will also be used when exact values should be used Ex: like passwords or usernames.

NOTE: - usually more information on that subject will be provided or information related to the step that you are currently reading. It is useful to take into account the information provided.


  • Host PC with Windows, Linux, MacOSX
  • Virtual box installed on the host machine (for the OS that you use)

If you do not have Virtual box download it for Windows / MacOS from :

For Linux you can install it with:

Redhat/CentOS/Fedora based :
“sudo yum install virtualbox-5.0 virtualbox-nonfree”


Debian/Ubuntu/Linux Mint based :
“sudo apt-get install virtualbox-5.0 virtualbox-nonfree”

  • NethServer ISO File – downloaded on the host machine
    If you do not already have it download it from:

Optional: Internet connection is not mandatory if you plan to work offline (some steps will not apply to your setup if you do not have Internet access)

1. Creating a new VBox machine

Open Virtual Box Manager

Click [New]

In the Name field insert desired name for the new virtual machine
In the Type select field choose option: Linux
In the Version select field choose option: Linux 2.6 / 3.x / 4.x (64-bit)

Click [Next]

In the Memory size window modify the amount of memory to your requirements (we allocate 2048 MB as minimum). This value can be modified later from Settings page of the VBox machine.

Click [Next]

In the Hard disk window choose option: Create a virtual hard disk now.
NOTE: Since this is the first time we create a virtual machine, we cannot select the option: Use an existing virtual hard disk file.
This option is useful if we already have the hard drive file from another VBox machine or backup.

Click [Create]

In the Hard disk file type window leave the default option – VDI (VirtualBox Disk Image).

NOTE: You can choose another option if you are planning to move the hard drive image file to another visualization platform like VmWare or Open Stack.

Click [Next]

In the Storage on physical hard disk window choose option: Fixed size.

Click [Next]

You can select the option Dynamically allocated if you want to save space.

This option will report to the Guest (VBox) OS that it has for example a 20 GB HDD attached to it, but the HDD image file will be less, And will grow only when you add files in that virtual OS.

NOTE: The maximum HDD space that the image can have is the initially declared space. The image can’t grow more than that size.

EX: if you specified 20 GB initially, and your initial occupied space is 3 GB it will grow to maximum 20 GB!

In the File location and size window we have the possibility to specify where our HDD image will be stored on the host computer (it can also be stored on a network drive).
We can modify the name we want the image file to have, if we don’t like the generated name.
Also, we can specify the size of the HDD image file.

NOTE: The amount allocated to the HDD image file depends on the purpose of your VBox machine (we allocate 8 GB; this is more than enough for a standard installation).
Virtual machine can have more than one HDD image file attached.

Click [Create]

Wait for the image file to be generated.

After the process completes you will see your newly created VBox machine in the VBox Manager window.

2. Settings for the VBox machine

Select your VBox machine and then click [Settings]

In the General section you can modify the Name, Type and Version of the virtual OS. You can also add a description for this machine that will allow you to differentiate it from the others, if you have more machines.

In the Storage section we can modify the settings for storage attached to this machine.

First we setup the virtual CD-Rom drive.
Click on the disk icon labeled Empty, under the IDE controller.
On the right side of the window we can choose how the virtual CD-Rom will behave. We can attach it directly to the Host PC CD-ROM drive, or we can specify it to load an ISO file.

In our case, we will tell the virtual CD-Rom drive to load the NethServer 6.7-x86_64.iso

This will allow our VBox machine to boot from CD.

In the Network section we configure the Network Adapters for the VBox machine. In our case we will have two network adapters.

The first one Adapter 1 will be bridged to the host PC.
This interface will behave like it is connected directly to the same switch as our host PC and will be eth0 in NethServer.

The second adapter Adapter 2 will be used in an internal network only that will exist just between host PC and VBox machine.

Configuration for the first adapter:

In the Attached to: choose option: Bridged Adapter.
Click on *Advanced to unhide the extra settings.

Take note of the value in the MAC address field. This will be eth0 in NethServer.

Configuration for the second adapter:

Click [Enable Network Adapter] option.
In the Attached to: choose option: Internal network (we select this option for now and we will change it later).
Click on Advanced to unhide the extra settings.

Take note of the value in the MAC address field. This will be eth1 in NethServer.
We will need this value in the next steps to identify the adapter as LAN (green)

Click [OK] to finish.

We have finished the setup of the VBox machine.

3. Installing NethServer into the VBox machine

Select your machine and then click [Start].

You will see another window where your VBox machine is booting.

The NethServer boot menu appears. Press [ENTER] or wait for the time out to finish, to start the interactive installation.

After a few moments Anaconda will present you the options to choose the language for the installer.
Navigate through the options with [TAB] key and activate the options with [ENTER] key.

Click [Next]

On next the screen you will be asked to choose the network interface for LAN (green).
Select the interface that has the MAC address we have seen in the Vbox Settings as Network Adapter 2. (usually this is eth1).

Use cursor keys to go UP or Down with the selection cursor and then pres [TAB] to go to the [Next] button.

Click [Next]

In the next screen you will be presented with network configuration for eth1.
We can accept the default values or you can modify them as needed.

NOTE: If you modify the network address or subnet and other values, please take note of that values since they will be needed in the next steps!

Click [Next]

The next screen is the last configuration screen.
You will see the information regarding the root password

Default is: “Nethesis,1234”.

Also you will be notified that all data on the hdd will be lost if you press [Install].
Since we have an empty HDD we can proceed without any problems.

Click [Install]

4. The graphical installation progress

After the last setup screen from anaconda, the installer switches to graphical mode to let you see the operations performed, installation of software packages and the settings applied.
There’s not much that you can do here but just watch in case something goes wrong.
After the installer finishes installing the boot-loader, the system will reboot.

5. First initial configuration

After the machine reboots you will see the message: Running the initial configuration.

At the end of that task you will be presented with the login prompt.
We will login with user “root” and password “Nethesis,1234”.

After you have log in, let’s check the curent VBox network configuration.
and press [ENTER].

For now you will only see eth1 and lo configured.
Check that the eth1 has the correct configuration of IP and Netmask.

Switch back to your desktop and open a terminal / command prompt

Note: If you are on Linux, press [ALT] + [F2] and then type
“mate-terminal” or “xterm”.

If you are on Windows, press [Win] + [R] and then type:
“CMD” .
and press [ENTER]

Now, let’s see if we can reach the NethServer VBox machine from our desktop.
In the new terminal/CMD window type:


press [ENTER]

NOTE: to stop the ping command press [CTRL]+[C].

You will see that the ping command fails. It is not able to reach the NethServer Lan interface.

NOTE: If you have set another IP address for eth1 in the setup stage please replace the in the example, with the address you used.


“ping custom_IP_address_of_NethServer_lan ”

Let’s check the network configuration on our host machine.

“ifconfig” or “ipconfig”

depending of your OS platform.

You should see the network configuration details. Notice that there is no adapter that will permit connection between the two machines (Host PC and Vbox).

We will fix this in the next step.

5.1 Configure the Host and Vbox machines to be in the same internal network

Go to your Vbox machine window and click on the File menu, select the Preferences option.

A new window will appear named “VirtualBox – Preferences”.

On the left menu select the Network section.

On the right side of the window select the: Host-only Networks tab.
It should be empty since no internal network is defined for now.

To add a new network, click on the icon with a green plus sign located on the right side of the window.

After clicking you will see a new network appears in the list “vboxnet0”.
This internal virtual network exists only between the host PC and the Vbox machine.

TIP: You can later use this vboxnet0 to connect other Vbox machines you will create, to the NethServer Vbox machine and it will act as a virtual LAN.

After the vboxnet0 has been created, we need to set it up.

To alter the settings of the vboxnet0, click on the icon with a light-blue screwdriver, also located on the right side of the screen.

A new window will appear named “Host-only Network Details”.

The first tab is the Adapter tab. In here we alter the settings for the virtual adapter that will be assigned to the Host PC.
In the IPv4 Address field modify the value of the ip address to match the same class/network as the value of the NethServer Lan IP address.
We will assign the IP: for our Host PC.

NOTE: Also if you made changes to the Network Mask in the setup stage, alter that value to match your values.
Leave the IPv6 fields not filled since we will not use IPv6.

Click on the DHCP Server tab.
Verify that the DHCP is turned off. If it is not, then un-check the Enable Server option.

Click [OK] to apply the settings.

You will see a progress window that will confirm that the settings are applied.

Next, we need to alter the NethServer Vbox machine Network settings.

Click on the Devices menu and then select Network option.
In the sub-menu select the Network Settings option.

The Settings window for our Vbox machine appears.

We have the first adapter Adapter 1 presented to us.
We just check that the correct settings are applied and in effect.
We need to have eth0 connected directly to the network card of our Host PC.

The Attached to: selection should be “Bridged Adapter”.
The Name should be “eth0
We confirm that the settings are still the same as before for Adapter 1

Click the Adapter 2 tab.
We will need to modify the settings for the second adapter.
In the Attached to: select Host-only Adapter.
You will see that the Name: field has automatically selected vboxnet0. Since it is the only network available in the system.

Click [OK] and wait for the settings to be applied.

After the settings are applied we check that everything is as we want.

Go to NethServer VBox


and press [ENTER] to test that we can reach the Host PC.

You should see reply’s from that ping.

64 bytes from icmp_seq=1 ttl=64 time=0.899 ms
64 bytes from icmp_seq=2 ttl=64 time=0.199 ms
64 bytes from icmp_seq=3 ttl=64 time=0.186 ms

Next go to the terminal / command prompt on your desktop and check that we have the virtual adapter added to the Host PC system.


and press [ENTER]

NOTE: Type:


press [ENTER] if you are in windows.

You should see another adapter added.
The new adapter should be named: vboxnet0
The settings for IP and Netmask should match the ones that we have set up in the Virtual Box Preferences window.

Let’s test now that the Host PC can reach the NethServer Vbox machine.


and press [ENTER] to test that we can reach the VBox machine.

You should see reply's from that ping. 64 bytes from icmp_seq=1 ttl=64 time=0.209 ms 64 bytes from icmp_seq=2 ttl=64 time=0.189 ms 64 bytes from icmp_seq=3 ttl=64 time=0.286 ms …

We now have connectivity both ways between Host PC :left_right_arrow: VBox Machine.

6. Accessing the Nethserver VBox machine from the Host PC browser

After we have successfully set up the connection between the two machines we can access the Nethserver web-admin interface.
For this open a browser from your desktop and type:


You should see a warning about the certificate of the webserver. Ignore that warning and continue.

NOTE: It is ok to ignore that warning since it is generated by the certificate presented not having the correct hostname set up in it and does not correspond with the hostname of the server that is presenting the certificate.
If you will use the Nethserver as a production server it is mandatory that you set up the certificate according to your settings!

Login to the Nethserver with the user “root” and password “Nethsesis,1234

The initial configuration will be presented and you will have to enter the settings to be able to continue (New password, hostname, date/time, SSH, Usage statistics).

After the initial settings have been applied you will be presented with a screen that has the network connections presented.

Select the Edit option for the eth0 interface (it is in grey for now).

In the next screen you will be presented with the options for that interface.

In the Role field chose option Internet (red).
Select DHCP as option to get IP.
Confirm that the eth0 MAC address is the correct one.

Click [SUBMIT] and wait for the settings to be applied.

You should now see the eth0 adapter in red.

NOTE: This settings depend on your network environment!

If your physical LAN to which the Host PC is connected, gets the IP’s via DHCP, then the Vbox machine eth0 adapter, will also obtain the IP from your DHCP server.

Otherwise, if your physical LAN uses manually specified IP address for your machines, you will have to keep the Static option checked, and enter the values that you want.
Those values should be in the same range as the ones for your Host PC but NOT identical!

7. Check that all the network settings are OK and internet is available

Click the [Dashboard] option on the left menu.
You should now see the NethServer Dasboard and everything should be ok.
In the Interfaces widget you should see the correct settings.

Go to your NethServer VBox window. The shell should still be opened.

Let’s check that the NethServer is able to reach the internet.



press [ENTER]

NOTE: You can use Yahoo or some other internet address that you know it’s up).
You should see replies from the server:

64 bytes from (IP_ADDRES) icmp_seq=1 ttl=56 time=10.209 ms 64 bytes from (IP_ADDRES) icmp_seq=2 ttl=56 time=6.129 ms 64 bytes from (IP_ADDRES) icmp_seq=3 ttl=56 time=6.120 ms …

With this we now have connectivity to internet from our NethServer Virtual Box machine.

8. We have finished our installation
Go to the NethServer web interface and select the [Shutdown] from the left menu and select Reboot option.


This will Reboot the server and we will do a final check to see that the settings remain the same and do not change over reboots.

Wait for the system to reboot and then check the NethServer’s Dashboard.
Everything should be ok, as expected.

Congratulations! You now have a fully working NethServer installation.
We are finished with our installation and you should now go on and configure your NethServer or configure it for Development.

For Development please read our Dev Station How-To (available soon).

9. References

For further and more in depth reading follow this links:

Nethserver documentation:
Virtual Box documentation:
Virtual Box downloads:


One word: congratulations.

1 Like

Super howto. Very detailed!.
You mention a Dev Station Howto. It would be HUGE if such a detailed howto would become available so anyone could create an RPM package from a default application install. Then a community repository of modules could become available very soon.

1 Like

@Ctek thank for the howto, well detailed…nice

I missed the point why you take the way to install NS on two NIC with an internal network and a bridged network. This is needed when you want to test a gateway configuration and you learned me that the internal network can be pinged from the real computer (I didn’t know before, I used another VM for that), but if you want to be simple you could take the choice to install NS only on one bridged NIC and use it to be a real host on your network (give an IP in your range, the gateway of your network…)

I can follow the ‘full’ installation. One of NS strong points is the Gateway/UTM. By installing both red and green interface the Gateway/UTM installation is also documented. For documentation sake this is a good initiative.

Hi Stephane,
As Rob has said, my goal was to present the “full setup” In Gateway/Router mode.
This way the user can test all the options of a real NS installation and not only server mode.

Plus, now it will be simple to add more VBox clients that are connected to vboxnet0 and this way you create your own virtual lan with machines behind NS that will provide them with access to internet. (you can now do what you do with VmWare virtual switches :slight_smile: ).

I hope this will help some new user.
it will also be linked with the Dev how-to because it was one of the requirements to be able to play with NS in a virtual environment

PS: If anyone has followed this How-to please give us your feedback

I have an issue on a debian host with virtualbox5, In fact when I set the vboxnet1 to an IP of my network, the IP is reachable but it goes to the host and not to the VM…I need to dig a bit

here the ifconfig on my host which runs virtualbox…fun

# ssh root@192.168.xx50
The authenticity of host '192.168.xx.50 (192.168.xx.50)' can't be established.
RSA key fingerprint is 5f:7b:d0:2f:88:cf:c0:76:9b:6a:0e:c7:c1:b7:2f:2b.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.xx.50' (RSA) to the list of known hosts.
root@192.168.xx.50's password: 
Linux htpc-server 3.2.0-4-amd64 #1 SMP Debian 3.2.71-1 x86_64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Nov 16 16:01:02 2015 from leo.lan
root@htpc-server:~# ifconfig
eth0      Link encap:Ethernet  HWaddr 94:de:80:bf:d6:56  
          inet adr:192.168.xx.100  Bcast:192.168.xx.255  Masque:
          adr inet6: fe80::96de:80ff:febf:d656/64 Scope:Lien
          RX packets:2687901 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3342484 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000 
          RX bytes:744051082 (709.5 MiB)  TX bytes:1629300672 (1.5 GiB)
          Interruption:74 Adresse de base:0xc000 

lo        Link encap:Boucle locale  
          inet adr:  Masque:
          adr inet6: ::1/128 Scope:Hôte
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:3331679 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3331679 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:0 
          RX bytes:41995499667 (39.1 GiB)  TX bytes:41995499667 (39.1 GiB)

vboxnet0  Link encap:Ethernet  HWaddr 0a:00:27:00:00:00  
          inet adr:  Bcast:  Masque:
          adr inet6: fe80::800:27ff:fe00:0/64 Scope:Lien
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:724 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000 
          RX bytes:0 (0.0 B)  TX bytes:83131 (81.1 KiB)

vboxnet1  Link encap:Ethernet  HWaddr 0a:00:27:00:00:01  
          inet adr:192.168.xx.50  Bcast:192.168.xx.255  Masque:
          adr inet6: fe80::800:27ff:fe00:1/64 Scope:Lien
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1122 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000 
          RX bytes:0 (0.0 B)  TX bytes:106412 (103.9 KiB)


Hi Stephane.
Maybe i did not understand exactly what you want to acheive. But from what i understood this should apply

The vboxnetX is an internal only network (that means that it is only between the virtual box machines and the host PC)

When you set an IP to vboxnetX from the preferences of Virtual Box, you are setting that IP for the Host PC to be able to reach the virtual network.

If you want the vboxnetX to reach the outside (physical lan) you must bridge it somehow.


My 2c, I have had zero issues with quite a number of vms using dynamically allocated space, even on vms that have a lot of io, and it saves a lot of hd.

1 Like

Hi Fasttech, thanx for your input.
You are right but i wanted to keep it simple for new users.
But now you just give me an idea to present an alternative step instead of fixed size to use dynamic.
This also means that i’ll have to explain to te users about the differences and the way it functions.

Ps most of the time i did not have any issue with dynamic option but some distros had some problems back in the day.

Thanx for your feedback. Rally apreciate all input.


1 Like

This is one of the vms on one of the hosts at a client, that’s a pretty telling difference in allocation and actual use.

1 Like

The real trap when using Dynamic allocation is that, if you have a lot of machines and you keep adding more files to the storage where the hdd images are stored you can end up in the scenario where there is no more space and the machines freeze because they can’t expand the HDD image because there is no more.

For example I keep a rule like this:

Storage space needed = (Number of VM’s x ~60GB dynamic HDD) + (Number of VM’s x 8 GB free space minimum )

So for 14 VM’s i need space (14 x 60) + (14 x 8) = ~950GB

You will have to think and plan carefully.
But i think this is not the case with local vboxes :smile:



Well, there’s no question you’re responsible for knowing what space you have available.

What’s really fun, is the real power of a vm… snapshots. :slight_smile:

That particular vm currently has 21 Gb of snapshots. O_o lol!

I’ve already added the Alternative step to configure the storage for Vbox.

Thanx again for the feedback :smile:



Stunning! :open_mouth:

I’ve been following this installation on a Windows 10 host. Everything is the same, except the names of the network adapters during setup. I’m using instead of, because my cable modem uses that address. Everything works until I get to the part where I am running Nethserver web-admin interface in a browser and change the role of eth0 to Internet (red). From that point on, I can no longer access the web interface or even ping the virtual server from the host. Any ideas?

That’s normal behaviour! As soon you activate an interface as external/red the firewall rules kick in. If you need to access the server from another IP address (either on you LAN or external) you need to create some holes in the firewall (=open ports) Especially the admin page is not available from the outside, for good reasons!.

This was a battle to get NethServer Running. I believe I made success and want to share my findings with those who have had the same problem. First Bogdan’s document is helpful although I could not get NethServer to work in a complete sense. Until now that is.

From NethServer I cannot ping .20,.25,.65,.254

From local machine I cannot ping .25

But I can ping .20,.65,.254 (of course)

From NethServer I cannot ping .25 (it’s self)
Why is that?

With the above situation I would be unable to access the web interface.

To resolve this situation I have suggested:

  1. Remove the Host Only Adapter

  2. Re add the Adapter

  3. Open the Web App

  4. Don’t use DHCP and try Static

But is there another way to do this with out removing the adapter? I keep going in circles doing this other times.

Better way?

  1. Change the “Host Only Adapter” to “Internal Network”
  2. Shutdown the NethServer
  3. Change the “Internal Network” back to “Host Only Adapter”
  4. Restart NethServer
  5. Log into the Web App
  6. Change the DHCP and try the Static. Use the same Host-Only settings found on the Local Machine “Host-Only Adapter” (IP & Netmask). Change the Gateway to that of the Local Machine “Default Gateway” discovered with the ipconfig command.


IMPORTANT NOTES (Concerning this configuration)

On the Local Computer where Virtual box is hosted is a DHCP internet machine. In other words the settings can change.

The Local IP Address: 192.168.1.???
Default Gateway: 192.168.1.???

Mine has not changed for quite some time. Maybe if I reset the Router they may change. If so, the last three digits of the Default Gateway will have to be reinputed into the NethServer settings.

Ping Tests

Local Machine: (worked) (worked) (worked) (worked)

NethServer: (worked) (worked) (worked) (worked)


My intention is use this NethServer as a test unit only. I need to figure the best way to use as VM first with VirtualBox (Home) and then with VMware (Work).
I had to be sure that I could:

  1. Get access to the Web App.
  2. Get access to the internet via the Web App.
  3. Users will be able to access the services offered & vice versa.

I am now that much more confident with NethServer!


Hi Ted,
Thank you for your feedback and info.
From what I’ve seen, you are switching the settings of the type for adapter as a mean to “reset” them.

This made me wander what are your normal network environment settings ?
Are you using a router to allocate DHCP with reserved IP settings for your LAN machines ?
Or are you using a direct connection between your modem/router and your PC (this can explain why the ip changes)?

As you noticed I’ve mentioned in the post to make the users aware

NOTE: This settings depend on your network environment!

If your physical LAN to which the Host PC is connected, gets the IP’s via DHCP, then the Vbox machine eth0 adapter, will also obtain the IP from your DHCP server.

Otherwise, if your physical LAN uses manually specified IP address for your machines, you will have to keep the Static option checked, and enter the values that you want.
Those values should be in the same range as the ones for your Host PC but NOT identical!

But it can also be a issue with virtual box.
What OS and Vbox are you using ?

I’m intrigued by the impossibility to ping those specific ip’s you mentioned and NS itself.

PS: VMware or Proxmox cand be better suited as platforms.

Best regards

1 Like