Creating Your Own VPN
If you travel frequently or have multiple offices, you may want to create and use a virtual private network (VPN). A VPN lets you remotely and securely access your files and other shared network resources when out of the office or between offices. It’s like putting a local area network (LAN) onto the Internet, but a VPN uses encryption to secure the communication when traversing via the Internet.
In addition to using a VPN to remotely access your files, some VPN connections can be used when out of the office to secure your Internet usage on untrusted networks, like Wi-Fi hotspots or public Internet ports. This would prevent local eavesdroppers on the public network from capturing your login credentials or hijacking your online accounts that aren’t fully encrypted, like possibly Facebook, Twitter, or your email account. This type of hacking has gotten a whole lot easier recently with the release of new tools, such as the Firefox add-on Firesheep and the Android apps FaceNiff and DroidSheep.
There are many ways you can go about creating and using VPNs. You can create your own by using Windows or other software, build an open source router with an integrated VPN server, or purchase a router with a built-in VPN server out of the box. I’ll briefly discuss each of these options and show you how to get started.
Using Windows or Other Software
If there are only going to be a few remote users or offices using the VPN, you could set up and use the VPN functionality already included with Windows. You can create an incoming VPN connection on one Windows PC and then create connections to it from other computers. Then potentially all the computers connected to the VPN can share files and network resources. All the Internet traffic of VPN clients can also be routed through the VPN, so this solution can also be used to encrypt traffic while on untrusted networks. However, when manually setting up your own VPN, you must also deal with IP address conflicts and probably have to configure your router with port forwarding and a dynamic DNS service.
If your primary reason for creating a VPN is for securely sharing files and you don’t want to spend the time creating your own VPN, consider hosted services. There are even free options, such as Comodo Unite, Gbridge, LogMeIn Hamachi, and TeamViewer. Most of these support file and resource sharing, chat, and remote desktop connections. Once you sign up for a service, you can usually download their software to all your computers and log in to your account to share among your own computers. Plus, you can usually add other users of the same service to your network so you share among other users.
Build an Open-Source Router
To create a more substantial VPN, consider using open source routers that include a VPN server. One of the simplest solutions is to load replacement firmware, such as DD-WRT or Tomato, onto consumer-level wireless routers. You can create site-to-site connections with other routers running the same after-market firmware at different locations to connect multiple offices, or use to connect from VPN clients on computers. You can use these VPN servers to access files or secure your Internet traffic while on public networks.
If you’re planning to have more than a couple of simultaneous VPN users, you might consider building your own router. You can load an open source OS, such as Zeroshell, RouterOS, Untangle, or Endian, onto a PC or even run virtually on an existing machine. The higher processor and memory resources can provide a VPN suitable for many more users than a consumer-level router can handle.
Purchase a Router
Finally, if you prefer not to build your own VPN or use a hosted service, there are always firewall routers you purchase off-the-shelf that include a VPN server. Here are a few wireless routers that are suitable for small businesses: