VPNs (Virtual Private Networks) are beautiful things that allow you to get past firewalls, protect your data when you’re using WiFi networks of a suspicious nature (Free Airport Wifi?), and even get access to country-specific websites and services. You can get VPN service from VPN providers — or you can have your very own private IP by renting a VPS (Virtual Private Server), and creating your own VPN through it.
I’m using a VPS from a Singapore-based hosting company, called Vodien, but you can use any VPS provider. This does have the benefit of always being shown as being in the host country, which is great when you’re travelling to other countries, and those countries are not allowed access to whatever services you’re trying to connect to (Hulu, NetFlix, etc?).
1. Purchase Or Set Up Your Server
This can be a dedicated server, a VPS, or your own Linux box sitting in your home. You can run both a VPN service AND do whatever you need to do on it as well. A VPN service requires very little resouces, so you can typically choose the smallest possible VPS plan to start. We’ll be using OpenVPN though, so make sure your OS is one of the following:
- Debian (Install OpenVPN Ubuntu Packages for Debian)
You’ll also require PuTTY, a free SSH client. Download and run PuTTY, put in the IP address of your server (your host should provide this to you), and set the port as 22. Put in the username and password that your host should have provided you as well, when you see the login prompt. Typically this will be a username of “root”, and whatever password you will be given. By default, you won’t see the characters appear as you type in your password. This is normal, so just hit enter when you’re done, and you should be logged in.
2. Install OpenVPN On Your Server
OpenVPN Access Server is simple to setup, and provides up to 2 free clients. Additional licenses will come in a pack of 10, and cost about $9 per client per year.
Next, get the right link to download your OpenVPN package, and enter this command into the command line of PuTTY:
For example, I’m using CentOS, so it’ll be:
After that, you’ll need to install the package, so enter the following command if you’re on Ubuntu or Debian:
dpkg -i PACKAGE-HERE
If you’re on CentOS, RHEL, or Fedora, you will need to run this command:
rpm -i RPM-PACKAGE-HERE
For example, it’ll be:
dpkg -i openvpn-as-2.0.10-CentOS6.x86_64.deb
rpm -i openvpn-as-2.0.10-CentOS6.x86_64.rpm
3. Configure OpenVPN
For security and obvious reasons, you should change the password of the default admin account, named “openvpn”. To do so, type:
After which, you can access your OpenVPN admin panel from your browser at: https://youripaddress:943/admin and configure it.
To start using your VPN, go to https://youripaddress in your browser, and login with your username and password. You’ll be walked through how to connec to your VPN, and you can download pre-configured Windows Client Installers as well.
For more information about setting up OpenVPN, you can refer to the OpenVPN docs here.