Select Page

How to Build a VPN in Four Easy Steps Without Spending One Penny

Let’s say you find yourself and your company in the middle of a global pandemic and everyone in your company needs to work from home for the foreseeable future. Video meetings are helpful, but your people also need access to information on your company server(s). To make this work, you might also deploy another important tool called a VPN.

A VPN – VIrtual Private Network – uses encryption to connect geographically dispersed locations to each other over the public internet. It’s the same technology road warriors have used for years to connect back into the office.

For organizations struggling with working from home and paying bills during a global pandemic, here is a way to connect everyone via VPN without spending one penny, using an open source technology called OpenVPN. OpenVPN is stable, it’s been around for many years, it has a thriving community, and commercial products use it as a base. Thousands of Red Hat employees depend on OpenVPN every day to connect to the company network to support the world’s largest organizations.

But there ain’t no free lunch. I’ll give you the steps as clearly as I can, I’ll even include video demos, but the sweat-equity is your part. You need to do the work. If words like “IP Address” are a foreign language to you, then you might want to recruit some skilled help.

This solution will be fine for a few dozen people. There are ways to scale to thousands of people, and I’ll discuss that later, but large companies probably already have their own VPN technology.

Here is an overview of the steps, with links to details. Each step includes a video demo at the bottom.

  1. Build the base system for your OpenVPN server.
  2. Install OpenVPN and configure authentication.
  3. Set up the server configuration file and start up OpenVPN.
  4. Set up Windows clients.
    Troubleshooting, possible next steps, and a favor

We all stand on the shoulders of giants. I am indebted to the open source community for building an amazing set of tools that live at the heart of the infrastructure that keeps the world running. Even in the middle of a global pandemic when nobody can travel.

Open source is all about collaboration and sharing, and this project leans heavily on the OpenVPN and WinSCP teams. I also need to thank my colleagues at Red Hat for sharing configuration information for a large-scale OpenVPN implementation. That’s what open source is all about.

Although my colleagues at Red Hat shared configuration information and advice, this project is mine, and does not represent Red Hat. And even though I put considerable effort into making these instructions and video demos as clear as possible, all the rough spots are mine, and none of this comes with any warranty.

If you find this valuable, please leave me feedback in the comments, and consider buying and recommending one or more of my books.

Forward to step 1.