Portal V2 – self-hosted tunnel for localhost with end-to-end TLS (ngrok alternative)
Hello r/selfhosted, I'd like to share Portal v2, a self-hosted tunneling network.
Portal is a self-hosted relay network for tunneling localhost to a public URL. It uses outbound reverse connections, so it works behind NAT or firewalls without port forwarding. Additionally, end-to-end TLS secures traffic between the browser and the local app.
If you're familiar with ngrok, the use case is similar — but you can host your own relay for others to use, or connect to any existing relay.
What`s new in Portal v2?
Portal v2 introduces a new architecture based on SNI passthrough and keyless TLS.
Instead of terminating TLS at the relay, the relay only performs TCP-level SNI routing.
TLS handshakes are signed using keyless TLS, so the relay never holds the private key and cannot decrypt traffic.
This provides end-to-end TLS between the browser and the localhost service, while still allowing public relays to route connections.
Links
- GitHub: https://github.com/gosuda/portal
- Example relay: https://portal.thumbgo.kr
- VS Code extension: https://marketplace.visualstudio.com/items?itemName=gosuda.portal-tunnel
Posted Mar 8, 2026, 1:24 PM UTC