{"repo":"mmatczuk/go-http-tunnel","free":true,"listed":false,"github":"https://github.com/mmatczuk/go-http-tunnel","clone":"git clone https://github.com/mmatczuk/go-http-tunnel.git","description":"Fast and secure tunnels over HTTP/2","language":"Go","stars":3330,"topics":["go","golang","http","http2","tcp","tls","tls-tunnel","tunnel","proxy","local-machine"],"license":"AGPL-3.0","category":"networking-infra","readme_excerpt":"Go HTTP tunnel Go HTTP tunnel is a reverse tunnel based on HTTP/2. It enables you to share your localhost when you don't have a public IP. Features: HTTP proxy with basic authentication TCP proxy SNI vhost proxy Client auto reconnect Client management and eviction Easy to use CLI Common use cases: Hosting a game server from home Developing webhook integrations Managing IoT devices Project Status IF YOU WOULD LIKE TO SEE THIS PROJECT MODERNIZED PLEASE UPVOTE THE ISSUE. Installation Build the latest version. Alternatively download the latest release. Running There are two executables: tunneld - the tunnel server, to be run on publicly available host like AWS or GCE tunnel - the tunnel client, to be run on your local machine or in your private network To get help on the command parameters run tunneld -h or tunnel -h . Tunnel requires TLS certificates for both client and server. Run client: Install tunnel binary Make .tunnel directory in your project directory Copy client.key , client.crt to .tunnel Create configuration file tunnel.yml in .tunnel Start all tunnels Run server: Install tunneld binary Make .tunneld directory Copy server.key , server.crt to .tunneld Start tunnel server This will run HTTP server on port 80 and HTTPS (HTTP/2) server on port 443 . If you want to use HTTPS it's recommended to get a properly signed certificate to avoid security warnings. Run Server as a Service on Ubuntu using Systemd: After completing the steps above successfully, create a new file for y","default_branch":null,"files":null,"tree":[],"storefront":"/r/mmatczuk","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/mmatczuk/go-http-tunnel/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}