This guide will be using the ★CryptoStorm VPN service as it is what I use. The basic procedure will be the same for any VPN service that uses the OpenVPN protocol. The major differences will be where you obtain your files from and that CryptoStorm requires a specific version of the OpenVPN android app. Links will be provided for everything involving CryptoStorm however, you will need to locate your files specific to the provider and verify which version of the OpenVPN Android client they support. There are far too many providers for me to collect all of these for everyone. It is, after all, your security and you must take the initiative.
We need to obtain a few things to get your VPN running on Android.
First, you will need the OpenVPN client which you can download from ★Google Play. Alternatively, if you do not have gapps installed, you can download it from ★FDroid or grab the source directly from ★the dev website. With both the play store & FDroid, you will receive update notifications. As reminder, if you are using a different VPN provider, you may need a different OpenVPN client. You can download ★OpenVPN Connect which should work for your provider unless they specify otherwise.
Second, you will need to obtain your ★configuration files (If you are setting up your connection for a different provider you will need to grab your config files directly from them. CryptoStorm provides CryptoFree which you can use at no charge, with reduced bandwidth, if you do not have a current provider). Download & unzip the conf's folder. You can either do this on your computer & move the folder to your phone manually or download them directly to your phone. For the latter you may need an ★app to extract the zipped files. Take note of where your config files are saved on your phone as you will need to navigate back to them later.
Open your VPN client on your phone. Your app will appear slightly different than the one pictured here as you have not imported any of your config files yet.
Now we need to import the configuration files that we downloaded from github (or your providers file location). To do this, we will click on the file with the arrow as pictured below.
This will open your phone's file navigation menu.
Once you reach the location in which you saved your configuration files, select the configuration file you wish to import. The app will only import one at a time therefore you will need to repeat this step until you have imported all the configuration files you want to be able to use. If it isn't in the app, you can't use it. For this example I will be using the Paris node.
The OpenVPN app will reopen to the "Convert Config File" menu. Simply press on the disk icon at the bottom to save the file to the app & it will return to the original screen where you will see the file name you selected for import.
Select the pencil shaped icon next to your file name to access the configurable options for that file. On the first screen, you will enter your CryptoStorm token in the "Username" field & whatever you want in the "password" field. CryptoStorm uses a token based system that does not require a password however, OpenVPN requires something to be filled in. For CryptoFree configs you will do this for both fields.
If you wish to specify your own DNS servers, select "IP AND DNS" at the top of this screen. Check "Override DNS Settings by Server" & specify your custom DNS settings.
To prevent your device from falling back to unencrypted traffic should your VPN connection drop, navigate to the "ADVANCED" tab. Then check "Persistent tun."
To select specific apps that you wish to use without a VPN, navigate to the "ALLOWED APPS" tab. The toggle button at the top allows you to choose between "select to exclude from vpn" or "select to use with VPN." I advise to leave it at the default & only exclude what you absolutely must. Personally, I route all traffic through the VPN & do not use this feature. However, I wanted to make sure that you are aware that it is available & how to access the menu. All of the above settings will need to be entered for each configuration file you import so just repeat the process until you have set up each.
Now you can hit your "back" button and return to your main screen. If you want your VPN to automatically connect with each phone reboot, navigate to the "SETTINGS" tab. Check the box next to connect on boot. While on this screen, ensure that "Reconnect on network change" is checked as well to allow it to automatically reconnect when you migrate from mobile data to WiFi or move between other networks.
Next, you will need to select which VPN you want to connect to by default on each boot. Tap on "VPN used on boot..." & a context menu will appear allowing you to select your desired VPN.
You will be returned to the settings tab and you should see your selection appear.
Now the hard part is over. To start your VPN, navigate to your "Profiles" tab & simply tap on the VPN you wish to connect to. A log will pop up and once you see "HH:MM Initialization Sequence Completed" you are connected to the VPN.