This tutorial describes how to install Linux Debian 6 from scratch so it's ready to run OpenVPN Access Server. We'll install it in the so-called 'Expert Install' mode without a graphic user interface (desktop) since we don't need a GUI for OpenVPN Access Server. This guide was written for Debian Linux 6.0.3, so if you have a newer version, there may be some minor differences. In particular, the file 'debian-6.0.3-amd64-netinst.iso' was used while writing this guide. Please note that this is suitable for a 64bit system only (can be AMD or Intel) which most modern systems have. If however you have an environment that only runs 32bits, please download the i386 ISO instead and use that - the installation process should be exactly the same.
While this tutorial does handle every step in the installation process in excruciating detail, obtaining an installation media for Debian 6 and booting your computer with it is not covered. Fortunately you can find that information on http://www.debian.org/. In general though, the idea is to download an .iso image and either mount it to a virtual CD drive to a virtual machine for installation, or in case of a dedicated machine, burning the .iso image to a CD-R and booting the computer with that. Once booted, the installation process starts here. Please note each step has a screenshot that you can view by clicking the blue line.
Once the computer boots from the installation media, use the cursor keys to highlight 'Advanced options >' and press enter.
Highlight 'Expert install' and press enter.
'Choose language' is already highlighted. Press enter.
Highlight the language of the installation and press enter. Please note that this has no effect on OpenVPN Access Server (English only).
Highlight the area you are in and press enter. In this guide we assume we're in the United States.
If asked, highlight the locale you wish to use as default. In this guide we assume and recommend en_US.UTF-8.
Use space to add additional locales. Press TAB to highlight 'Continue' and press enter to confirm. In this guide we assume no additional locales.
‘Select a keyboard layout’ is already highlighted. Press enter.
The default selection should be okay. Press enter to confirm.
We have a 'US' keyboard layout so American English is the correct choice. If you have a different keyboard, select the layout here.
'Detect and mount CD-ROM' is already highlighted. Press enter.
In the unlikely case that you need specific settings for PCMCIA devices, enter them here. Press TAB to highlight Continue and press enter to confirm.
If all is well, you'll get a confirmation message that the Debian installation CD was found. Press enter to confirm.
'Load installer components from CD' should already be highlighted. Press enter.
Normally you don't need any of these optional components, so just hit TAB to highlight Continue and press enter.
'Detect network hardware' is already highlighted. Press enter.
'Configure the network' should be highlighted. If not, then no network hardware was found and you have a problem. Otherwise, press enter to continue.
When asked to 'Auto-configure network with DHCP', highlight 'No' and press enter. It's a very bad idea to use DHCP for the OpenVPN Access Server itself.
The reason why DHCP for OpenVPN Access Server itself is a very bad idea is quite simple: you need to access the web based interface on this machine later on from another computer. So having it stay at a fixed IP address is handy. Also, if you need to set up static routes in your network it helps if the machine stays at a fixed IP address. We always assume OpenVPN Access Server is set up with a static IP address which we will provide it with in the next installation steps. These next steps require a bit of explanation. We're about to configure the network interface for the OpenVPN Access Server instance. This will have to be given a valid static IP address so that it can communicate with the network it's connected to. In this guide we are assuming that we have a single subnet 192.168.47.0 with subnet mask 255.255.255.0 and with an internet gateway at 192.168.47.254. If your network situation uses a different range and subnet mask please adjust accordingly. For the sake of simplicity, we are also assuming that this instance has only one network interface. If your situation is different, well, good luck.
In this guide we assume IP address 192.168.47.220 for the OpenVPN Access Server. Enter an IP address and press TAB followed by enter to continue.
In this guide we assume netmask 255.255.255.0. Enter your desired netmask and press TAB followed by enter to continue.
For some reason the installer assumes that the gateway is at 192.168.47.1, but mine is at 192.168.47.254. Enter the gateway IP and continue.
In this guide we assume the gateway is also a DNS server. Enter the IP address of a valid DNS server and continue.
You'll see a nice overview of the settings you've just provided. Highlight 'Yes' and press enter to continue, or 'No' to make further adjustments.
You'll be asked to enter a hostname for this instance. OPENVPNAS seems a good choice, but it can be whatever you want. (please keep it simple)
You'll be asked to enter a domain name for this instance. I choose to enter nothing - this has no bearing on OpenVPN Access Server anyways.
'Set up users and passwords' is already highlighted. Press enter.
When asked to 'Enable shadow passwords' highlight 'Yes' and press enter.
The choice to 'Allow login as root' is up to you, but in this guide we're choosing 'Yes'.
Enter the desired password for the 'Root' user and REMEMBER IT WELL. Press tab to highlight 'Continue' and press enter.
You'll be asked to enter the same password again - do so. Press tab to highlight 'Continue' and press enter.
If you followed the guide you'll be asked to create a normal user account now - we choose not to.
'Configure the clock' is already highlighted. Press enter.
When asked to 'Set the clock using NTP' highlight 'Yes' and press enter. NTP is a protocol to synchronize clocks over a network (internet).
The default NTP server address is usually fine, unless you have your own NTP server that you wish to use.
Depending on what area you selected at the start of the installation process you may be given a choice of timezone. Highlight yours and press enter.
'Detect disks' is already highlighted. Press enter.
'Partition disks' should be highlighted. If not, then no suitable disk was found to install to. Otherwise, just press enter.
This guide assumes the 'Guided - use entire disk' installation method. This is the part where your machine's hard drive gets wiped and partitioned for use.
Please note that we've arrived at the point where the hard drive of the machine you are performing an installation on gets wiped and prepared for use for Linux Debian 6. In our guide, we had only one hard drive available and it was empty to begin with. In your case, this might not be so. Please ensure you have important data backed up in case you mess up, and if things look a little different from this guide at this point, please use your brain.
Highlight the correct drive and press enter. In our case, we have only one hard drive and we're going to use that to install Debian 6 on.
The partitioning scheme 'All files in one partition' is the recommended choice. Highlight it and press enter to continue.
In this guide we assume no further partitioning needs to be done and we will highlight 'Finish partitioning and write changes to disk' and continue.
Once you are sure you wish to continue, highlight 'Yes' and press enter.
The hard drive will now be formatted. Depending on your hardware configuration and the size of your hard drive this may take a little while. Be patient.
'Install the base system' is already highlighted. Press enter.
Select the kernel to install - the default choice is usually fine. Press enter.
Select the drivers to include in the initrd image. The default choice is usually fine. Press enter.
The base system is now being installed, this may take a little while so please be patient.
'Configure the package manager' is already highlighted. Press enter.
When asked to 'Use a network mirror' please highlight 'Yes' and press enter.
The protocol for file downloads from the network mirror can be http or ftp. Usually the default choice of http is fine. Press enter.
Highlight a Debian archive mirror country (usually the one you're in) and press enter to continue.
Select the Debian archive mirror you wish to use and press enter. Usually the default choice is fine.
In the unlikely case you're behind a proxy you can enter the details here so the Debian archive mirror can be reached. Otherwise, TAB and enter to continue.
When asked to 'Use non-free software' please highlight 'No' and press enter. This has no bearing on OpenVPN Access Server.
When asked to 'Use contrib software' please highlight 'No' and press enter.
'Security' and 'Volatile' services are good to use, so leave them both selected and press TAB to highlight 'Continue' and press enter.
'Select and install software' is already highlighted. Press enter.
It may take a while for this step, so please be patient.
When asked to 'Participate in the package usage survey' we are assuming 'No'. Highlight your choice and press enter to continue.
When asked to 'configure man-db', highlight 'No' and press enter.
In the 'Software selection' screen we recommend only 'SSH server' and 'Standard system utilities', nothing else.
If you thought the other steps took long, well, this one takes a lot longer. Please be patient.
'Install the GRUB boot loader on a hard disk' is already highlighted. Press enter.
If you followed this guide and Debian 6 is the only Operating System on your (virtual) machine, then highlight 'Yes' and press enter.
'Finish the installation' is already highlighted. Press enter.
When asked 'Is the system clock set to UTC' please highlight 'Yes' and press enter. This choice is usually correct.
Congratulations, the installation is complete. Remove the installation media and press enter to start your (virtual) machine.
The operating system is now ready for the installation of OpenVPN Access Server. We therefore now refer you to the guide: Install OpenVPN Access Server on Linux Debian 6