Algo VPN automates the VPN installation process such that you won’t have to establish an SSH connection with a server and run complicated command lines. Here’s the outline of creating your own VPN: Create a free account at Amazon Web Services. If you like, you can also link your current Amazon account.
- Algo VPN automates the VPN installation process such that you won’t have to establish an SSH connection with a server and run complicated command lines. Here’s the outline of creating your own VPN: Create a free account at Amazon Web Services. If you like, you can also link your current Amazon account.
- Jan 04, 2021 A VPN for Linux is the only way to ensure maximum security on your Linux distros. Get one from our list of best linux VPNs for 2021 and stay secure online. Exclusive Offer: Avail 70% OFF on PureVPN's 2-Year Plan!
Linux, around in the market since 1991, is a family of free and open-source software operating systems built around the Linux kernel. It is often bundled in the form of a “Linux distribution,” such as Fedora, Debian, or Ubuntu.
Initially developed for computers based on the Intel x86, Linux has evolved and adapted to more platforms than any other operating system. The Linux kernel also runs other known operating systems, such as the Chrome OS. Also, numerous smartphones and tablets run Android and other Linux derivatives.
Linux is the most vivid example of how successful and efficient open source software collaborations can be. By definition, Linux’s underlying source code can be modified and distributed by any person under the terms of its respective licenses.
Popular Linux distributions:
- Arch Linux
- Gentoo Linux
- Linux Mint
In general, people that look for Linux distributions are searching for enhanced privacy and more options for configuration. It is a popular alternative, but maybe not as widespread as other operating systems such as Windows.
However, in our current cybersecurity landscape, no solution is 100% bullet-proof, and everything we can do to enhance our safety should be welcomed. That is why using VPNs, or Virtual Private Networks is widely recommended for all operating systems, even the Linux kernel.
VPNs are handy online tools that have the capability of encrypting the user’s content and IP address, sending the information to remote servers managed by the VPN company instead of those that the customer’s Internet Service Provider administrates.
With one of the best free or even paid VPN for Linux, you can protect your Internet privacy and maintain your generated content away from hackers, malware developers, censorship and surveillance, online advertisers, crypto miners, and more.
Also, you can implement a secure VPN connection provided by one of the best free brands to help you bypass geo-blocking restrictions that prevent you from watching for favorite foreign pages and streaming services.
If you have decided to take the next step towards privacy, safety, anonymity, and accessibility, take into account that the option you choose needs to implement robust encryption and have a strict no logging policy. Also, having native apps for Linux is preferable, and other features such as DNS leak protection, a kill switch, a broad server network, and torrenting support are desirable.
Best free VPN for Linux
1. Windscribe VPN
Windscribe is one of the best free VPN for Linux because it has three paying modes and a free version, with 10 GB of free bandwidth per month. It isn’t as fast as other top VPNs in the industry but is perfect for the Linux kernel with its robust, military-grade AES 256-bit encryption.
It has a Chrome extension free for users, and although the customer support isn’t the best (it has bots,) it has excellent device compatibility, strong privacy, and encryption, no leaks, no measures, and it bypasses Netflix proxy error with the Windflix feature.
- The Windflix feature
- AES 256-bit encryption
- Multiple protocol availability
- The free version has 10 GB of free monthly bandwidth
Free plan limitations:
- It isn’t very fast
- It uses bots in the support service
- Based in Canada, not the best location for full privacy
- It has 480 servers, but not all are active
- The free plan comes with 10 GB of bandwidth
- The free plan only connects to servers from 10 countries. The Pro version has servers in 53 nations.
ProtonVPN is a fantastic VPN for people who prioritize security over a broad server network. It was developed by a group of specialists in online safety and privacy to satisfy a particular type of market, but it has evolved to become one of the best free VPN for Linux users.
This VPN is among the very few VPN service providers that offer no data caps while not charging a dime. It is incredibly secure, and speeds are satisfactory as well. It has a dedicated Linux app in the form of a command-line tool.
- Free and with unlimited bandwidth
- Extremely secure
- Speeds are not the best, but they won’t let users down either
Free plan limitations:
- It keeps users’ IP address, but won’t use it in any case
- The server network is tiny
- Only three countries offered in the free version
- No simultaneous connections: the other three paid plans have two, five, and ten, respectively
- No P2P support. The three paid plans allow torrenting activity
- No Plus servers, Secure Core, Tor Servers, Secure Streaming, or ProtonMail Visionary included
3. SurfEasy VPN
SurfEasy is a good VPN option for Linux users. It has a free plan and a free Chrome proxy. Although the costless version has a somewhat restrictive 500 MB data cap per month, it allows users to test the services and ponder whether they want to acquire a better, paid version.
The free and paid plans both use military-grade AES 256-bit encryption and the OpenVPN protocol. It is easy to use, and although it logs some connection details, it allows torrenting and has more than 1,000 servers in 28 countries in the premium plan.
- It offers a free plan and also a costless Chrome proxy
- AES 256-bit encryption
- OpenVPN protocol
- It allows torrenting
Free plan limitations:
- Only 500 MB of data available per month in the free plan
- It keeps some details about users’ connection
- Not very fast
- No kill switch
- No live chat feature
- The data cap (500 MB per month) is very restrictive
- Full torrenting is only allowed in the Ultra plan
Best paid VPN options
Managed by the Golden Frog company, VyprVPN is a perfectly usable VPN app for Linux. It provides access to geo-restricted content online thanks to its +700 servers in 50 nations around the world. It is also speedy and offers stable performance.
VyprVPN has no DNS leak problems, strong encryption, it works with Netflix, it has a three-day free trial, and it is compatible with most devices and platforms. As for drawbacks, we could find that it keeps some logs about users’ activity, torrenting is discouraged, and the customer staff isn’t accommodating.
- Servers in 50 countries
- Speed and stable servers
- No DNS leak problems
- Robust encryption
- A three-day free trial
30-Days Money-Back Guarantee
2. CyberGhost VPN
One of the most versatile VPN providers in the industry, CyberGhost offers almost 3,000 servers that cover 59 nations. With seven simultaneous connections, a relatively quiet location in Romania, and a kill switch, it is perfect for Linux. Also, users of Debian-based systems such as Ubuntu, Mint, and Chakra (a fork of Arch) can connect by following CyberGhost’s online tutorials and configuring the connecting settings through OpenVPN and PPTP.
Some people have put dubious reviews about CyberGhost, and there are security breach allegations, but those cases represent the minority. It is a handy app to have around for your Linux experience.
- A kill switch
- A gigantic server network
- Located in Romania
- It allows up to seven simultaneous connections
45-Days Money-Back Guarantee
In conclusion, Linux is one of the most secure options as far as operating systems go. However, you can still use one of the best free VPN for Linux and benefit from its content unblocking capabilities and censorship bypassing features, not to mention enhanced online privacy.hourglass_empty
VPN stands for Virtual Private Network. One such open source VPN software is OpenVPN and it can work as a Linux VPN server. At a basic level, a VPN secures connections by creating a point to point secured connection. Using a good VPN for Linux is one of the best ways to remain secure over the Internet or an open network. In this tutorial, we’ll show you how to set up your very own Linux VPN server using OpenVPN. Turn your VPS into an amazing security measure!
Why Use a Linux VPN Server
VPN comes with certain benefits. Few of these are highlighted below:
- Security – VPN provides better and stronger protection since all data is encrypted. This provides additional security as compared to Firewalls.
- Remote Access – to ensure high security, many organizations, government and defense offices allow remote access only through their VPN
- ISP encryption – ISP stands for Internet service provider. If you use a public Wi-Fi connection, the ISP can read all your unencrypted data. By using a VPN, you can keep your data secure and encrypted by not allowing even the ISP to read it.
- Anonymity – a VPN lets users maintain anonymity while browsing over the Internet. The IPs are not traceable.
- IP Change – VPN allows users to change their IPs and browse safely. This in certain cases is used in regions that have location-based restrictions
- Unblock websites – certain websites are blocked in a few geographical regions. A VPN maintains anonymity and hence is commonly used to bypass Internet censorship to unblock websites
- Throttling – certain ISPs throttle user bandwidth based on the content. Such throttling can be avoided by using a VPN
At a higher level, a VPN makes your transactions secure by using encryption.
Having showed you the benefits of a VPN, here we will demonstrate how to set up and install OpenVPN software on Linux. We’ll cover the setup of a Linux VPN server using OpenVPN and how to connect it to Windows, Android and other devices. And if you want to learn more about the OpenVPN protocol, I suggest you reading this OpenVPN review.
- You should have root access or sudo privileges
- Should not have OpenVPN pre-installed
- The firewall should allow TCP traffic over port 943 and UDP traffic over port 1194. We recommend using UFW. Check out our UFW tutorial to learn everything you need to know
Set Up a Linux VPN Server with OpenVPN Access Server
First, let’s update the system. For CentOS use:
For Ubuntu and Debian update the indexes using:
To install OpenVPN you will require a net-tools package. Install this if you do not have it preinstalled. The net-tools package contains ifcfg which is needed for OpenVPN server installation.
You can install this for CentOS using:
For Ubuntu and Debian, you can use the below command:
You can download an OpenVPN client for your distribution from the OpenVPN website. You can get the link from here and use it along with the curl command. A sample curl command for Ubuntu is as shown below:
For CentOS the curl command will be:
Here you can add the URL to your distribution. To validate that the correct installation is downloaded, print the SHA256 checksum. You can use the below command:
This will print the checksum as shown below:
You can compare this downloaded binary’s checksum with the one provided on the website. If the checksum matches install the previously downloaded binary.
To install in CentOS use:
Similarly, in Ubuntu and Debian you can use the below command in the command line:
This will take some time to install. Once the installation is complete you will be shown the Admin UI and the Client UI details. By default, an openvpn user will be created during this installation. You can set the password for this user using:
This will set your new password. Remember the password since it will be used to log in. Use the admin URL to login and finish the installation process. In our case, the admin URL is – https://220.127.116.11:943/admin. Normally the URL is simply your VPS address, the :943 port with /admin at the end, as in the example.
You will be able to see a screen as shown below:
The username – as mentioned before – is openvpn and the password is the one you just set for this user. Once you login you will be able to see a Terms and Conditions page. Read it and press the Agree button to proceed. The next page will provide you with configuration details and indicate that the server is status.
The default settings are good enough and can allow MacOS, Linux, Windows, Android, and iOS to connect to the Linux VPN server. In case you want to change any settings, make sure to click Apply and Update Running Server to enable the changes.
This completes the default installation. Next, we will set up the OpenVPN tunnel.
Set up a Linux VPS Server with OpenVPN for Tunnelling
Enable IP forwarding in your kernel by using the below command:
This enables traffic forwarding over IPv4. To apply these changes, use the below command:
OpenVPN does not support simultaneous tunnels over IPv6 and IPv4, so you can disable IPv6 using:
To disable IPv6 manually, add the below parameters to be set on boot. These parameters should be added to the 99-sysctl.conf file located at /etc/sysctl.d/. Simply use the cd command to access the folder, and use your preferred text editor to edit the file. Remember to save the changes made!
Next, you can activate the new settings by using:
Next, in the file hosts located at /etc/ comment the IPv6 resolution line as shown below:
With this, we have disabled IPv6. Next login again to the Admin server URL and go to the VPN settings.
In the Routing section, the option Should VPN clients have access to private subnets (non-public networks on the server side)? should be set as No:
The option Should client Internet traffic be routed through the VPN? should be set to Yes.
To avoid any DNS leak, alter the DNS resolver settings. Select the Have clients to use the same DNS servers as the Access Server host
Save these settings and don’t forget to click Update Running Server. You can restart the OpenVPN server by using the Status tab from the Admin console. From here, you can stop the server and then start it again.
This completes our set up for OpenVPN server. Next, we can check the client installations.
How to Connect Your Linux VPN Server to Other Devices with OpenVPN
Now that your server is up and running, we can connect some devices to it! We’ll cover the most popular operating system options:
How to Install and Connect the OpenVPN Client for Windows
Open the OpenVPN client URL, you will be able shown links to client downloads for different operating systems.
Choose the Windows version and run the installation.
Once the installation is complete, you will be prompted for the OpenVPN username and password. The server IP will be auto-populated.
You can use the OpenVPN icon from your Windows taskbar to disconnect, reconnect and view connection status.
How to Install and Connect the OpenVPN Client for MacOS
Connect to the OpenVPN Client UI and click the link to download the OpenVPN software for MacOS. Once this package is downloaded, a window will open with the installer package icon.
Follow the standard procedure of MacOS application installation.
Double click on this installer icon and click Open to run the installation.
Once the installation is complete, you will be able to see the OpenVPN icon on your macOS taskbar. You can right click on this icon to see the different options. From here you can connect to OpenVPN.
Once you click the Connect to option, you will see a popup prompting for the OpenVPN username and password. Here you should enter the credentials and click on Connect to establish the Linux VPN server connection.
How to Install and Connect the OpenVPN Client for Linux
The client installation for Linux is slightly different. Download and install the OpenVPN client software on CentOS using the below command:
Similarly, you can install the OpenVPN client software on Debian or Ubuntu using the below command:
Open the OpenVPN client UI and download the appropriate profile for your OS. Alternatively, you can use wget or curl command and provide the URL to download the software.
Copy the downloaded profile to location /etc/openvpn and rename it to client.conf. You can start the OpenVPN Tunnel service where you will be prompted for the username and password. You can start the operation by using:
You can use ipconfig or ip addr to view the network connections. Once the VPN interface is available, you will see a tun0 interface added to the existing list shown in the output.
How to Install and Connect the OpenVPN Client for Android
Free Vpn Server Software Open Source
First, go to the Google Play store and search for OpenVPN Connect. Install the OpenVPN Connect app.
Once opened, it will display three options – Private Tunnel, Access Server, and OVPN Profile.
Select Access Server and fill in all the details manually:
- Title – set your preferred name for the connection
- Access Server Hostname – the IP of your Linux VPN server
- Port – the port 934 of your Linux VPN server
- Username – the username set on your server – openvpn by default
- Password – the password you set in the console while setting up the Linux VPN Server in the terminal environment
Or alternatively, you can import the .ovpn file for the profile. You can get the connection profile from the client UI.
How to Install and Connect the OpenVPN Client for iOS
Similar to Android devices you can install OpenVPN software from the App Store.
Complete the installation and open the newly installed app. It will ask you to fill in the profile information, or upload the profile file same as the Android version.
Once they are added, you can start using OpenVPN on your iPhone or iPad.
Linux VPN Server Compression Settings
In case you are connected to the VPN and are not able to browse the Internet, you can check the OpenVPN logs at /var/log/openvpnas.log in your VPS. In case you find entries similar to the one shown below, you’re most likely experiencing compression issues:
To resolve this, you can disable compression. This can be done from the Admin UI. Open the Admin UI and click Advanced VPN.
Go to Default Compression Settings. Here turn off the option Support compression on client VPN connections.
Apply the changes, and click on the Update Running Server option. The issue should be solved.
Linux Vpn Server Setup
Add Users to a Linux VPN Server Running OpenVPN
The free OpenVPN client supports two users. To create more users, you would need to select any of the paid plans. You can add additional users from the admin UI. Navigate to the User Management tab, and click the User Permissions link.
Enter the new username as shown below:
For this new user configure additional settings by clicking the More Settings link. Here you can provide the password and other details.
Save these settings and click on Update Running Server option.
Set Up Auto-login Profiles for a Linux VPN Server with OpenVPN
With OpenVPN, you can also configure auto-login profiles. This will cause all your non-local traffic to be routed via a VPN automatically. In case you want to manually enable or disable the VPN you can use User or Server locked profiles.
To set the auto-login, open the Admin UI, then select the User Permissions link. Here you can select the checkbox for Allow Auto-login.
How to Test a Linux VPN Server running OpenVPN
To test if OpenVPN works as expected, connect the VPN client and check your IP address. You can use the DNS leak test website from the browser. It should show you the OpenVPN server’s IPv4 address.
Next, you can choose Extended test. The test should output the IPs for the DNS resolver you chose for your client device.
You can also confirm the traffic is not using IPv6. To check this, you can use the IPv6 test website. This should again display the server IP and will show a message stating that no IPv6 address was detected.
Best Free Vpn For Linux
In this tutorial, you learned how to set up a Linux VPN server running OpenVPN and how to connect it using various clients like Windows, Linux, Android, iPhone or iPad, and MacOS.
Now that you know all the basic ins and outs, you can browse the internet safely with your brand new Linux VPN server. To learn more you can read through the official manual of OpenVPN, that can be found in the admin UI. This completes your first ever server-client OpenVPN configuration. Go ahead and enjoy secure browsing using OpenVPN.