explaingit

anderspitman/awesome-tunneling

20,829Audience · developerComplexity · 1/5MaintainedLicenseSetup · easy

TLDR

A curated list comparing tunneling tools that expose local web servers to the internet with automatic HTTPS, whether open-source or commercial.

Mindmap

mindmap
  root((repo))
    What it does
      Expose local servers
      Route traffic securely
      Bypass NAT restrictions
    Tool types
      Open-source options
      Commercial services
      Self-hosted solutions
    Key features
      Automatic HTTPS
      UDP support
      WebSocket proxying
    Use cases
      Share dev work
      Production deployments
      Remote access
    Recommendations
      Cloudflare Tunnel
      frp or Pangolin
      SirTunnel starter

Things people build with this

USE CASE 1

Share a local development server with teammates or clients without deploying to production.

USE CASE 2

Run a web service from home or behind a corporate firewall and make it accessible via a public domain.

USE CASE 3

Set up automatic HTTPS for a self-hosted application without managing certificates manually.

USE CASE 4

Choose between open-source and managed tunneling solutions based on your infrastructure needs.

Tech stack

GoRustNode.jsPython

Getting it running

Difficulty · easy Time to first run · 5min
This is an awesome list (curated collection), typically MIT licensed, allowing free use and modification with attribution.

In plain English

Awesome Tunneling is a curated list of software and services for exposing a computer behind a home router or restricted network to the public internet. The README frames the use case clearly: you have a web server running on your laptop, you want it reachable at a real domain name with proper HTTPS, but your network is behind NAT (Network Address Translation, what your home router does to hide internal machines from the outside) or a corporate firewall, so you cannot just open a port. A tunneling tool punches a connection out from your machine to a public server, and traffic from the internet flows back through that connection. The list catalogues alternatives to the well-known commercial options ngrok, Cloudflare Tunnel, Tailscale, and ZeroTier, with an emphasis on self-hosting and open-source projects. For most readers the maintainer currently recommends Cloudflare Tunnel as the closest match to the ideal, and for self-hosters singles out Pangolin or frp as production-ready, with SirTunnel as a simple starting point for developers. The body of the list is grouped into open-source projects with permissive licences and other categories, each entry annotated with the language it is written in (Go, Rust, Python, PHP, Node, JS), the protocol it uses (SSH, WebSockets, WireGuard, QUIC, KCP), and any notable feature such as Let's Encrypt integration, P2P mode, or multiplexing. Someone would use this list when setting up a home lab, sharing a development server with a teammate, or designing a remote-access architecture, and they want a side-by-side overview of the available tunneling options without trialling every one. The full README is longer than what was provided.

Copy-paste prompts

Prompt 1
I want to expose my local Node.js app running on localhost:3000 to the internet with a public URL. Which tunneling tool from this list should I use?
Prompt 2
Compare Cloudflare Tunnel vs frp for self-hosting a web service. What are the trade-offs?
Prompt 3
Show me how to set up automatic HTTPS for a local web server using one of the open-source tunneling tools listed here.
Prompt 4
I need UDP support for my tunneling solution. Which tools in this list support it?
Prompt 5
What's the simplest tunneling tool I can use to quickly share my localhost with someone else?
Open on GitHub → Explain another repo

Generated 2026-05-21 · Model: sonnet-4-6 · Verify against the repo before relying on details.