What is a VPN, how does it work and why you need it?

Reading Time: 4 minutes

What is a VPN?

Simply put, a VPN creates a virtual encrypted tunnel between you and a remote server operated by a VPN service. Think of it as a private tunneled highway to your destination from where ever you are on internet and going out from the end of that highway.

What options you have for getting a VPN service?

1) Subscribing to a VPN service provider, there are tons out there.  All you need is to choose one that could meet your objective.

2)Building a VPN service by using cloud service provider.  I would leave this out for the time being as it will be a more advanced level.

3) Building your own VPN service from your home.  You could build your own VPN service by using opensource software like openvpn. After connecting to your VPN service, all your internet traffic is routed through this tunnel, so your data is secure from prying eyes.

When your data reaches the VPN server, it exits onto the public internet. If the site you uses HTTP connection, you’re still secure. But even if it was intercepted, it’s difficult to decode the data.

Why you needed a VPN?

To understand the value of a VPN, it helps to think of some specific scenarios in which a VPN might be used. Consider the public WiFi network, perhaps at a coffee shop or airport. Normally, you might connect without a second thought. But do you know who might be watching the traffic on that network? Can you even be sure the WiFi network is legit, or might it operated by a thief who’s after your personal data? Think about the passwords, banking data, credit card numbers, and just plain private information that you transmit every time you go online. Never use a public WiFi network and perform internet banking. I’m just being paranoid sometimes.

If you connect to that same public WiFi network using a VPN you can rest assured that no one on that network will be able to intercept your data—not other users snooping around for would-be victims, nor even the operators of the network itself.  This last point is particularly important, and everyone should keep in mind that it’s very difficult to tell whether or not a WiFi network is what it appears to be. Just because it’s called Starbucks_WiFi doesn’t mean it’s really owned by a well-known coffee purveyor.

Another example showing the value of VPNs is using these services to access blocked websites.  With a VPN, those people can have their web traffic securely tunneled to a different country with more progressive policies, and access sites that would otherwise be blocked. And again, because VPNs encrypt your traffic, it helps protect the identity of people who connect to the open internet in this way.

Another usage of a private VPN service is for accessing your home network as though you are at home.  Even when you are across the other side of the world. Traditionally, I used to perform port forwarding within a SSH session. However, it is very tedious to perform port forwarding for every single service. With VPN connection to your home, you will be able to access every single service withing your home network as though you are at home.

Please do let me know in the comment below if you would like me to write a more detailed article.

Building your own cloud service

Reading Time: 4 minutes

Most of us have at least used one of the big names like Google, apple, Alibaba, xiaomi cloud services where you store photos, documents and other files to the cloud. It is so convenient to use that we sometimes willing to allow the service provider to use those data to provide more personalized services. However, usually there are limitations like storage capacity which would require an upgrade in order to have more capacity.

Commercially off-the-shelf NAS

Today, you have so many options to use other cloud services like buying a commercially of the shelf product like a NAS (Network Attached Storage) aka private cloud service. There are many providers like Synology, D-link, TP-link, and many more. These NAS will come with an enclosure that supports 1/2/4 hard disk bays. And will usually have software that’s makes it much easier to configure.

Building your own cloud. What do you need?

Following are components used for my setup:

Odroid hc1 setup price

ItemsComponentUnit price (USD)
1Odroid HC1 – Single board computer from hardkernel.com49
2ODROID-HC1 Case Clear 2.5
3 5V/4A Power Supply EU Plug5.5
4Microsd card – Sandisk 32GB microsd U38
5CAT6 internet cable – faster data transmission (up to 1Gbps)3
6Kingston 480GB A400 SATA 3 2.5″ SSD67
Total135

Another option is to build your own by using hardware enclosure from SBC (Single Board Computer) providers. Like hardkernel.com However, this is the most difficult option where you will also have to build the cloud service  stack from ground up. Meaning you have to select your preferred operating system, build it. As for the disk, you will have option to buy a HDD or SSD. I’ve chosen to buy SSD, partly an impulsive purchase during 11.11. Then install the preferred cloud software, in my case I’ve selected nextcloud. At the time of writing, I’m using version 13 of nextcloud. There are some consideration to selecting your cloud software, my criteria is as following:

  1. Easy installation process
  2. Security considerations taken by the software provider
  3. Support for multi client environment, Android, Linux, Windows
  4. Easy and secure sharing
  5. Ability to provide temporary data upload service for large files
  6. For privacy

Next challenges is to be able to configure a setup that can go through corporate firewalls, i.e. using standard port like 443/SSL. You will need a few building block for this:

  1. A domain name, minimum requirement is to be able to update your dynamic IP address when you get a new public IP from your service provider.
  2. Router to configure a port forwarding from a incoming port to internal IP and port.

Please do let me know areas where you are interested, in order for me to write a more details how-to. You could provide feedbacks via commenting from below.