I have used VPNs for years, though I am not suggesting that is the only solution. I think @jukebox is correct.
I recently changed providers to one more in tune with Linux, and I looked for several things. I am sorry if I am repeating criteria; many make the same suggestions in articles and blogs.
- A free VPN was out for me. There is truth to the adage that “If a service is free, you (your data) are the customer.”
- No logging of user activity, e.g. IP traffic and DNS requests. To some degree, one must trust the VPN service’s claims, but searching will usually indicate what is really true or suspect. I suggest doing a lot of that and do not believe reviews; read the privacy policies. I found some of the more popular VPNs may log some things after all.
- Linux support with a kill switch. This requirement actually narrowed the candidates greatly. My prior service relied on OpenVPN in the Linux Network Manager. A few times I found myself with the VPN connection down but with me merrily doing my thing completely unaware.
- Speed and access. To a greater degree than logging, one is dependent on reviews unless one has a way to actually try the VPN. (I think trials are good, though I did not really avail myself to that.) My prior VPN’s IPs seemed to be blocked more than my current one, including the Debian wiki!
- Number of servers and locations.
- DNS. I use the provider’s DNS, rather than Google’s or an ISP’s.
I may be wrong on this, but I always use the TCP protocol when I connect. Being connection-oriented, it seems a bit safer than UDP, albeit slower.
A lot depends on how one uses the VPN. I use it for e-mail, browsing, and the like. I do not stream very much, though I may watch the news on some foreign sites. I do not play games or watch movies.