What is the best VPN service one can use?

LeeLoo
4 min readApr 11, 2021

It’s assumed the reader has basic knowledge of what VPN (Virtual Private Network) is. If not please read this Wikipedia article.

There are plenty of VPN service providers. Maybe thousands or even more. Which one of them to use? I would answer none of them. Setup your own VPN server instead! One may say: Hey I’m not aware about this tech stuff and this way is not for me. I wouldn’t like to spend much time reading tech manuals and diving into this *hit.

Let’s don’t be hasty and at first look at why one would want to use his own VPN server.

  1. Personal Information. While signing up to any service it’s necessary to provide this kind of information that is stored by service provider on their servers. And sometimes for some reason can leak. Either by provider’s intention or unintentionally due to cyber crimes attack. Regardless the reason it’s definitely not the thing one looks for.
  2. Traffic logs. VPN service logs client’s traffic. Obviously they want to protect themselves from someone’s illegal activity. Some of them claim they don’t. But can we check this? Yes, we are not going to do something illegal, aren’t we? But listen why someone has access to my traffic? Personally I don’t like this.
  3. Price. One of the most popular VPN — ProtonVPN offers these conditions. Even if you buy maximum plan you have only 10 connections available.
ProtonVPN subscription plans

Your own VPN server gives you unlimited connections available on maximum speed with logs accessible by only you for significantly less money ~$3.5/mo. The only advantage of using 3rd party VPN service as they have many servers in different countries that allows change location easily.

Well, how to setup your own VPN server? Buy VPS with Ubuntu 20.04 LTS within Vultr or any other provider and use Vpn4.One service to setup it. With this service it’s easy as childsplay. Just enter IP-address and root’s password of the VPS to the form. The process is covered in details on the web site. If you want to be more anonymous buy VPS with crypto e.g. here https://njal.la.

For more security after setup is complete you can add ssh public key to the server and disable password authentication.

Linux, MacOS. Open terminal and execute following commands.

ssh-keygen -t rsa
ssh-copy-id root@<your-vps-ip-address>
ssh root@<your-vps-ip-address>
passwd -l

Windows. At first install git bash by downloading and executing the file https://github.com/git-for-windows/git/releases/latest. Then open git-bash.exe and execute the same commands as for Linux/MacOS.

Since this moment the passwordless authentication is enabled and only you can login to the server via ssh issuing following command in terminal.

ssh root@<your-vps-ip-address>

If you want to generate additional VPN keys you need to execute Setup again with First time setup box unchecked. Note that password access should be enabled. To enable password access execute these commands in terminal.

ssh root@<your-vps-ip-address>
passwd -u

Bonus. What else you can do with your own VPN server. You can exchange files between devices on same VPN network easily. Regardless of method device connected to the Internet whether LTE or WiFi or whatever. Install Dukto. On Arch or Manjaro Linux issue.

yay -S dukto

On Ubuntu.

sudo apt install dukto

For Windows download it here http://sourceforge.net/projects/dukto/files/DuktoR5-Setup.exe/download. For Android and iOS it’s available in Google Play and App Store respectively. Run Dukto on both devices connected to the VPN. On picture below the window of Dukto app for files exchanging. At first select the device to send to. Then select desired option.

Dukto app for files exchanging. First select the device to send to. Then select desired option.

There are also another options for setting up your own VPN server, but they require to be tech aware in certain extent.

  1. Here are details on how configure OpenVPN server on Ubuntu 20.04 LTS. But it’s fair complex https://www.digitalocean.com/community/tutorials/how-to-set-up-and-configure-an-openvpn-server-on-ubuntu-20-04;
  2. Here is fair simple variant of installing VPN on your server https://www.pivpn.io/;
  3. Here is the automation scripts for OpenVPN installation. Nyr/openvpn-install https://github.com/Nyr/openvpn-install;
  4. This is docker scripts for OpenVPN server setup kylemanna/docker-openvpn https://github.com/kylemanna/docker-openvpn;
  5. And this one is another docker powered setup scripts with bunch of VPNs support trailofbits/algo https://github.com/trailofbits/algo.

Thanks for reading.

--

--