I live in a country where wireguard, openvpn and other vpn protocols have been blocked. Tailscale and Cloudflare Tunnels don’t wok either. I do have a public ip and my router supports DMZ and port forwarding. For security concerns I’m not willing to forward ports. Is there any other method to use my VPS to forward traffic to my home server?
I think your best bet is try to use OpenVPN via TCP over port 80 or 443. You could also try setting up an SSH VPN tunnel.
A ssh tunnel probably is your best option
Using OpenVPN will force you to open ports and do NAT on your local network.
I would suggest to install Tailscale… And you will never use anything else.
Lot me know how it goes!
SSH is an obvious thing to try, but I suppose it may get cut off by the same DPI.
Possibly, ShadowSocks or obfs4proxy might be of some help? E.g. you can wrap Wireguard traffic in ShadowSocks (AFAIK it supports UDP).
SSH still works but I need to learn to set up a persistent , resilient tunnel. Just found this guide in using Wireguard over shadowsocks: https://errande.com/2021/07/obfuscate-wireguard/
Might I suggest Fast Reverse Proxy ( https://github.com/fatedier/frp )
It’s a great solution if you don’t have a public IP or can’t/don’t want to open any ports.
I found it super easy to setup and configure. I put caddy in front of the server side for mine to ssl offload there. But you could also route everything down the tunnel it makes and use a local reverse proxy to handle SSL offloading