99% of the information in this guide is taken from here: https://golb.hplar.ch/2019/01/expose-server-vpn.html I've added some stuff and changed some things to suit my needs.
A much easier method would be to follow: Routing Plex traffic through an SSH Tunnel
Both solutions work, however I've had better success with Wireguard.
Make sure your VPS is KVM. I've used both BuyVM and ServerCheap and have had good results.