Hi,

I would like to use Wireguard over TCP. I’m trying to reach my server from a restrictive network and UDP is being blocked. TCP is not blocked in certain ports though, and I would like to open a VPN server that listen on those over TCP.

I’m using the wireguard Linuxserver docker image. Any suggestions?

Thanks.

  • zork
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    2 years ago

    As long as you’re certain your wireguard server works from other networks… You could use nginx as a proxy to have your server accept incoming traffic from UDP port 53 (DNS)… But, be careful!

    I would strongly suggest you whitelist the restrictive network for use on UDP port 53. Is the WAN IP static on the restrictive network? Do you know the size of the WAN subnet? I’d try a quick test over UDP port 53 using nginx, then close it up. If it works, create your firewall rule to whitelist only the restrictive network and Bob’s your aunt.

    PS: If the restrictive network uses DPI (deep packet inspection) to verify they are real DNS queries on UDP 53, you can try putting DNSmuggle behind nginx. Do not have anything listen on localhost:53 as that may interfere with your local DNS at the server side. I don’t know how well this will perform, but I’m assuming not amazing. DNSmuggle supports encrypted DNS, which should prevent the network(s) from hijacking your requests.