For communication tunnels, the strongest matches are rapiz1/rathole (Rathole is a secure tunneling and reverse proxy tool), firezone/firezone (Firezone is a self-hostable zero-trust networking platform that establishes) and rathole-org/rathole (Rathole is a secure tunneling tool featuring NAT traversal). go-gost/gost and ginuerzh/gost round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Hand-picked communication tunnels and NAT traversal tools, ranked by GitHub stars and activity. Compare and pick the right one.
Rathole is a high-performance reverse proxy and NAT traversal tool written in Rust. It functions as a secure tunneling server and client architecture designed to expose local services to the internet by forwarding traffic from a public IP to a private device behind a firewall. The system establishes encrypted tunnels between a public server and a private host to ensure private communication. It utilizes token-based authentication to validate identities between the server and client for each individual service. The project provides TCP and UDP port forwarding and manages private tunnels to fa
Rathole is a secure tunneling and reverse proxy tool written in Rust that provides encrypted NAT traversal, token-based authentication, and TCP and UDP port forwarding between a self-hosted server and private clients.
Firezone is a zero trust network access platform that uses WireGuard to provide identity-based connectivity to internal network resources. It functions as a virtual private network that synchronizes authentication and user groups via OpenID Connect providers. The system implements a group-based access control engine to enforce least privilege by restricting network resources to specific user groups. It utilizes holepunching and relay protocols for NAT traversal to establish encrypted tunnels through firewalls without requiring inbound ports. The platform includes a control plane for managing
Firezone is a self-hostable zero-trust networking platform that establishes encrypted tunnels using WireGuard and NAT traversal, matching the required secure tunneling and port forwarding capabilities.
Rathole is a reverse proxy tunneling tool designed to expose local services behind firewalls and network address translation to the public internet. It functions as a secure tunneling infrastructure that enables remote access to private network resources without requiring manual router port forwarding configurations. The system utilizes a client-server architecture where a public-facing gateway coordinates with a private-network agent. It distinguishes itself by multiplexing multiple logical service connections through a single persistent TCP stream, which reduces the overhead of maintaining
Rathole is a secure tunneling tool featuring NAT traversal, a self-hostable server, and encrypted client-server communication to expose private services behind firewalls.
Gost is a Go-based network tunnel and multi-protocol proxy server. It functions as a gateway for routing TCP and UDP traffic, creating secure network tunnels between remote endpoints, and acting as a DNS proxy server to resolve domain name queries. The project is distinguished by its ability to implement multi-hop proxy chaining, which links multiple network nodes in a sequence to route traffic through specific paths. It also provides transparent proxying by integrating with virtual network interfaces to intercept system-level traffic without requiring manual client configuration. The system
Gost is a versatile secure tunneling and multi-protocol proxy server supporting NAT traversal, end-to-end encryption, TCP/UDP routing, self-hosting, and client authentication.
gost is a multi-protocol proxy tunnel and secure tunneling server designed to route network traffic through encrypted connections. It functions as a traffic obfuscation gateway and a transparent proxy server capable of intercepting TCP and UDP traffic at the IP level. The project also includes a virtual network interface manager for creating TUN and TAP devices to intercept operating system packets. The system distinguishes itself through a chain-based request routing model, allowing traffic to pass through an ordered sequence of proxy nodes. It provides extensive transport-layer encapsulatio
Gost is a self-hostable multi-protocol tunneling server and proxy that provides end-to-end encryption, TCP and UDP support, and robust NAT traversal capabilities through chain-based routing.
n2n is a peer-to-peer VPN that creates an encrypted mesh network by establishing layer 2 overlay networks. It uses UDP tunneling to connect remote computers into a shared virtual local area network, allowing devices to communicate as if they were on the same physical Ethernet switch. The system utilizes a centralized signaling registry and federated coordination nodes to facilitate peer discovery and node registration. It implements NAT traversal through UDP hole punching and UPnP port mapping, while using supernode relay routing to ensure connectivity when symmetric NATs prevent direct peer-
n2n is an open-source peer-to-peer VPN and tunneling tool that creates encrypted layer-2 overlay networks with NAT traversal and authentication support, fitting most of the secure networking requirements.
This project is a high-performance reverse proxy designed to expose local services to the internet. It provides a comprehensive suite of tools for managing network traffic, including support for TCP and UDP stream multiplexing, connection pooling, and load balancing across proxy instances. The system facilitates secure communication through TLS encryption, data compression, and multiple authentication methods such as OpenID Connect, shared tokens, and basic password protection. The software offers granular control over HTTP traffic, enabling users to route requests based on subdomains or URL
This project is a high-performance reverse proxy and network tunneling tool that exposes private services behind NAT and firewalls, supporting encryption, authentication, and both TCP and UDP traffic.
EasyTier is a decentralized peer-to-peer virtual private network and mesh networking tool. It functions as a layer 3 network overlay that establishes secure tunnels between devices without requiring a centralized server or coordinator. It also serves as a WireGuard-compatible VPN, capable of acting as a server for standard WireGuard clients. The project distinguishes itself through multipath latency-based routing and the use of KCP or QUIC proxies to mitigate packet loss and stabilize connections in high-loss environments. It provides a virtual networking manager featuring a web management co
EasyTier is a decentralized peer-to-peer virtual private network that establishes secure encrypted tunnels across NAT boundaries, though it is structured as a mesh overlay rather than a classic client-to-server port-forwarding proxy.
Bore is a TCP tunneling tool and localhost exposure utility used to route local TCP ports to public IP addresses. It functions as a TCP port forwarder that makes services running on a local machine accessible over the internet via a remote listener. The project includes a secure tunnel server implementation that manages incoming connections and routes traffic to connected local clients. It utilizes shared secret handshakes to authorize tunnel creation and restrict access to authorized users. The system provides capabilities for firewall bypass networking and remote tunnel hosting. It manages
Bore is a self-hostable TCP tunneling tool with authentication and firewall bypass capabilities, though it focuses purely on TCP rather than supporting UDP traffic out of the box.
Pangolin is a zero-trust remote access platform designed to provide secure, identity-aware connectivity to private network resources. It functions as a cloud-native network controller that orchestrates encrypted tunnels, traffic routing, and access policies across distributed environments. By leveraging WireGuard for secure data transport, the platform enables authenticated access to internal web applications, terminal sessions, and remote desktops without exposing services to the public internet. The platform distinguishes itself through a declarative infrastructure model that synchronizes n
Pangolin is a self-hostable zero-trust remote access platform that orchestrates encrypted WireGuard tunnels for private services, matching the secure tunneling category well despite its focus on identity-aware cloud-native connectivity rather than raw port forwarding.
Shadowsocks is a secure network tunneling tool designed for censorship circumvention and private internet connectivity. It functions as a proxy system that routes traffic through encrypted tunnels, allowing users to bypass regional network restrictions and protect data from interception across public infrastructures. The project utilizes a lightweight, custom proxy protocol that incorporates stream-based cipher encryption to obfuscate payload content and prevent deep packet inspection. By employing an asynchronous, event-driven networking model, the system manages concurrent connections effic
Shadowsocks is a secure tunneling and proxy tool designed for censorship circumvention and private connectivity, fitting the core category well although it focuses primarily on stream-based proxying rather than general port forwarding.
Hiddify is a cross-platform proxy client designed to manage secure network connections and traffic routing across desktop and mobile operating systems. It functions as a unified proxy manager, providing a centralized interface to configure and control various network proxy protocols for encrypted and private internet access. The application distinguishes itself by integrating local loopback interception, which configures the operating system network stack to route traffic through a local port for granular filtering. It also serves as a self-hosted infrastructure tool, enabling users to automa
Hiddify is a cross-platform proxy client and management tool that handles secure network traffic and routing, though it focuses more on proxy and VPN protocols than serving as a self-hosted server for arbitrary TCP/UDP tunneling.
OpenVPN is a cross-platform networking solution that establishes secure virtual private network connections by wrapping data traffic within encrypted tunnels. It functions as a server-side application that authenticates remote endpoints and routes encrypted traffic to provide access to private network resources across untrusted public networks. The software utilizes standard cryptographic protocols to perform mutual authentication and key exchange over a dedicated control channel. It verifies the identity of remote systems through certificate-based authentication, ensuring that only trusted e
OpenVPN is a well-established Virtual Private Network solution that creates encrypted tunnels for secure remote access, though it is traditionally designed for full network access rather than targeted service exposure like modern lightweight port-forwarding tools.
V2ray-core is a modular network proxy engine designed to manage inbound and outbound traffic through a unified, rule-based processing pipeline. It functions as a background service that operates multiple concurrent network protocols within a single process, allowing for flexible traffic management and the independent handling of diverse communication streams. The project distinguishes itself through a highly decoupled architecture that treats network protocols as swappable modules, enabling the encapsulation of various transport layers into a consistent stream-based model. It features a centr
V2Ray-core is a modular network proxy engine that handles secure tunneling and traffic encapsulation across multiple protocols, though it focuses more on censorship circumvention and proxying than out-of-the-box simple port forwarding.
Cloudflare's tunneling daemon provides secure outbound-only connections to expose private services and bypass firewalls, though it relies on Cloudflare's managed edge infrastructure rather than a fully self-hostable server component.
Chisel is a network tunneling tool that facilitates secure communication by encapsulating TCP and UDP traffic within HTTP requests. It functions as a connection multiplexer, consolidating multiple logical network streams into a single persistent connection to improve throughput and reduce overhead. By leveraging standard web protocols, the system enables firewall traversal and provides a mechanism for remote port forwarding and proxying. The project distinguishes itself through its focus on resilient connectivity and granular access control. It maintains persistent network sessions across uns
Chisel is a secure network tunneling tool written in Go that encapsulates TCP and UDP traffic over HTTP to enable firewall traversal, though it requires setting up your own server component to handle the connections rather than offering a fully turnkey multi-tenant SaaS.
wireguard-go is a Go implementation of the WireGuard protocol that operates as a userspace tunneling engine. It functions as a cross-platform network interface designed to establish encrypted tunnels between peers without requiring modifications to the system kernel. By implementing the protocol in userspace, this project provides a consistent network stack that enables secure peer-to-peer communication across different operating systems. It allows for the creation and management of encrypted network interfaces and tunnels to route private traffic over public networks.
This userspace implementation of the WireGuard protocol provides encrypted peer-to-peer tunnels and network traffic routing, offering the core functionality of a secure tunneling tool while focusing on a specific protocol stack.
Reverse tunnel TCP and UDP
This tool lets you tunnel both TCP and UDP traffic through firewalls and NAT, though it is a simpler and more minimal utility compared to a fully-featured self-hosted relay suite with built-in access control.
🌵 A charming TCP tunnel over WebSocket and Browser.
Cactus-tunnel is a self-hostable TCP tunneling tool built on WebSockets that bypasses firewalls and exposes local ports, matching the core intent despite lacking native UDP support and built-in access controls.
Fast and secure tunnels over HTTP/2
This tool establishes secure tunnels over HTTP/2 with support for TCP, basic authentication, and self-hosting, fitting the core tunneling category well while being somewhat narrower in protocol scope.
Allow internal services, running on localhost, to be accessed over the internet..
This tool exposes local private services over the internet via self-hosted WebSocket tunnels, fitting the core tunneling category well while lacking some advanced multi-protocol routing features.
A Docker-based self hosted alternative to Ngrok
This repository provides a self-hosted alternative to commercial tunneling services using Docker, though it lacks some advanced traffic features like native UDP support or multi-platform native clients.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| rapiz1/rathole | 13.8K | Rust | Apache-2.0 | |
| firezone/firezone | 8.7K | Elixir | Apache-2.0 | |
| rathole-org/rathole | 12.8K | Rust | apache-2.0 | |
| go-gost/gost | 7K | Go | MIT | |
| ginuerzh/gost | 18K | Go | MIT | |
| ntop/n2n | 7K | C | GPL-3.0 | |
| fatedier/frp | 107.4K | Go | Apache-2.0 | |
| easytier/easytier | 12K | Rust | LGPL-3.0 | |
| ekzhang/bore | 11.2K | Rust | MIT | |
| fosrl/pangolin | 21.3K | TypeScript | NOASSERTION |