The Tiny Internet Project, Part III

Add a Second Network Interface

The goal of your tiny internet is to make a self-contained system that doesn't rely on the public internet, but you'll need to cheat a little with this first VM and, later, with the mirror server. These VMs need a second NIC so they can access both your private and public networks simultaneously.

Once this VM is customized and updated, you can delete the second NIC by reversing the steps you're about to take.

In the main Proxmox web interface, click on the Hardware tab for your VM. Click Add and select Network Device from the menu. In the modal window, select "Bridge mode" and bridge the second network interface, in my example "vmbr1". Click OK, and for good measure, restart the VM.

Figure 8. Bridge Mode

When you type ifconfig at the prompt after you log in, you'll still see only eth0 and lo, so you need to activate the newly added NIC. In the console window (or shell), edit the network configuration file:


$ sudo vi /etc/network/interfaces

Create a static IP entry for the second NIC:


auto eth1
iface eth1 inet static
    address 192.168.1.200   # .200 is an available address on
                            # my network
    netmask 255.255.255.0
    gateway 192.168.1.1
    dns-nameservers 8.8.8.8 8.8.4.4

In this example, I choose .200 because it's a free address on my LAN. Assign one of your own that doesn't conflict with other machines on your network. The dns-nameservers are Google's.

Save the file and reboot the VM. When you log in and run ifconfig now, you should see that the eth0 and eth1 interfaces are active (Figure 9).

Figure 9. eth0 and eth1 are both active.

This VM now has access to your private network and the public internet so you can do updates and downloads. Run this update so you have the latest version of your software and kernel:


$ sudo apt-get update && sudo apt-get upgrade -y
 ↪&& sudo apt-get autoremove -y

Install Webmin

You're now ready to install Webmin, a browser-based tool for administering your Linux server. It's worth installing on the template VM so it's available on every server you build from here on out.

First, install a few packages Webmin needs to work properly:


$ sudo apt-get install libnet-ssleay-perl libauthen-pam-perl
 ↪libio-pty-perl apt-show-versions libapt-pkg-perl

When those packages are installed, copy the URL of the latest Debian installer from the Webmin downloads page (see the Resources section), and fetch it to your home directory on this VM:


$ cd ~
$ wget http://prdownloads.sourceforge.net/webadmin/
↪webmin_1.791_all.deb

Now, install it:


$ sudo dpkg -i webmin_1.791_all.deb

The installer will take a little while, so be patient. When it's done, it'll direct you to log in at https://ubuntu:10000, but since you don't have DNS set up yet, you'll have to use https://10.128.1.200:10000 for now. Use your administration PC and log in with your user name and password.

Figure 10. Logging in to Webmin

______________________

John S. Tonello is Director of IT for NYSERNet, Inc., in Syracuse, New York. He's been a Linux user and enthusiast since he installed his first Slackware system from diskette 20 years ago.