3 ms·
It's likely just `tailscale serve https / <upstream>`. https://github.com/tailscale/tailscale/blob/main/ipn/serve.go https://github.com/tailscale/tailscale/blo
by _cenw 3y ago
It's likely just `tailscale serve https / <upstream>`.
https://github.com/tailscale/tailscale/blob/main/ipn/serve.go https://github.com/tailscale/tailscale/blob/main/ipn/serve.g...
And they also support direct embedding:
https://tailscale.dev/blog/embedded-funnel https://tailscale.dev/blog/embedded-funnel
I think this is built on the wireguard-go + gvisor mashup, that allows you to do this with just Wireguard:
https://github.com/WireGuard/wireguard-go/tree/master/tun/netstack https://github.com/WireGuard/wireguard-go/tree/master/tun/ne...
One of my favorite applications of this is this little tool that turns Wireguard VPNs into SOCKS5 proxies (which you can selectively enable in your browser)
https://github.com/octeep/wireproxy https://github.com/octeep/wireproxy
- debarshri 3y agoThis is really cool. Networking in general is full of quirks and what people think is full of "magic". Full disclosure, I am founder of Adaptive [1]. We use a similar technique to the one with VPN exposed as SOCK5 proxy but for accessing internal infrastructure resources. [1] https://adaptive.live/ https://adaptive.live/
- _cenw 3y agoI think we had the same idea, but I didn't get to finish building mine. OIDC tokens being available in most CI systems these days is a nice building block. https://github.com/acuteaura/tinybastion/ https://github.com/acuteaura/tinybastion/
- debarshri 3y agoMore than happy to chat, if you drop a email at debarshi [dot] adaptive [dot] live.