OpenVPN with ocproxy/tunsocks/VPN-to-proxy/socks2tun support, as well as AWS VPC support.
Ported from
To follow this readme, you'll need Nix installed. There should be nothing, however, to preclude you from just building it as a regular OpenVPN fork.
Also you don't need to clone the repository to try it out, if you have Nix installed. Instead you can just
run it directly from github: e.g. nix run github:bendlas/openvpn-tuna#server
Replace .# with github:bendlas/openvpn-tuna# in the examples, in
order to do so.
First get an OVPN file for your endpoint from the AWS Client VPN Self-Service Portal
In a new terminal: Start the go server, that will push the browser response back to the connection script.
nix run .#serverThen you can use whatever client works for you. Tunsocks is tested.
Each client will be a full, but rootless OpenVPN instance, that runs the connection script on a proxy pipe, similar to an OpenConnect script tunnel.
nix run .#tunsocks -- /home/user/code/project/tmp/cvpn-endpoint-<vpn-id>.ovpnthen check your public ip from within VPN
curl --socks5-hostname 127.0.0.1:10080 -v https://icanhazip.com/nix run .#ocproxy -- /home/user/code/project/tmp/cvpn-endpoint-<vpn-id>.ovpnnix run .#vpnns -- /home/user/code/project/tmp/cvpn-endpoint-<vpn-id>.ovpnthen
vpnnsto get into the isolated vpn network namespace.