zaneschepke/wgtunnel

[FEATURE] Include some support for wireguard wrapped by `obfuscation-tunnel`

Opened this issue · 0 comments

I see you added amnesia-wg recently. I use another project for hiding wireguard that uses different strategies:

  • wireguard specific method for obfuscating the first 16bytes using a 1byte key and the next 16bytes of payload.
  • use a fixed-length key XOR'd with the entire wireguard payload before it's sent
  • wrapping in other transport layers (DNS, ICMP, websockets, etc)

Currently I run this obfuscation tunnel app in tmux. On android it listens on localhost, connects to the tunnel app on my server, and on both the server and on android, wireguard is only communicating with the obfuscation tunnel on localhost.

flowchart TD
    wgtunnel <--localhost:51820-->
    tunnel_termux <--server.example.com:12345-->
    net{{internet}} <-->
    tunnel_server <--localhost:51820-->
    wireguard_server 
Loading
# on android in termux
$ ./tunnel -l udp:localhost:51820 -r udp:server.example.com:12345 -o header -k 7

in wgtunnel, termux is excluded from the tunnel.

It would be really nice if the simple udp data obfuscation strategies could be done without the need to run a commandline tool in termux.