Raspberry Pi is an excellent device for setting up a VPN server. It has enough processing power to run a simple VPN server software and you can utilize the Ethernet port found on the device (or use WiFi which is included in Raspberry Pi 3 Model B or purchase additional hardware).
With VPN you can send and receive data in public networks, all the while really being connected to a private network. An example situation is when you are downtown and using a public Wifi network. Other users on the network can eavesdrop on your traffic, but if you are using a VPN, your traffic will be encrypted through a private network and it looks like you are connected to the network from your home connection (or wherever else your VPN server is located).
PiVPN is a really simple and easy package for installing a VPN server on your Raspberery Pi. Really, there is only two steps necessary:
- Install Raspbian for the device (Jessie tai Jessie Lite, either one is okay)
- Run this command in terminal: "curl -L https://install.pivpn.io | bash"
The above command downloads a script from PiVPN website and runs it. After that, you will get a short setup program in your screen for setting up the configuration for the VPN.
PiVPN uses OpenVPN protocol and there are multiple client programs available for it. Source code and Windows client program can be found at OpenVPN.net. For Android, there is OpenVPN for Android and for iOS OpenVPN Connect.