Ngrok Alternatives

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • awesome-tunneling

    List of ngrok/Cloudflare Tunnel alternatives and other tunneling software and services. Focus on self-hosting.

  • cloudflared

    Cloudflare Tunnel client (formerly Argo Tunnel)

    > Client source code is available but not FOSS.

    They recently changed that: https://github.com/cloudflare/cloudflared/blob/master/LICENS...

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • tolocal

    self-hosted reverse proxy from public dns domain to localhost

    i'll need to open a pull request for [tolocal](https://github.com/nelsonenzo/tolocal) :). It's clunky because it requires node and terraform and AWS, but all your stuff is self hosted and can be e2e encrypted, costs almost nothing, can be used with real domain names, etc. I would like to make it all JS at some point (the actual terraform is minimal), but it's hard to see why when Cloudflare Tunnel is a thing now.

  • docs

    Discontinued Documentations (by madacol)

    I made a little write up on how to do it https://github.com/madacol/docs/blob/master/Ssh%20server%20a...

  • ngrok-c

    ngrok client for c language,Due to the use of GO ngrok language development, porting to embedded devices some inconvenience, such as openwrt, so use C language rewrite a client. Very mini, the need to support polarssl library.

  • rathole

    A lightweight and high-performance reverse proxy for NAT traversal, written in Rust. An alternative to frp and ngrok.

    Nice, I didn't realize there was a C port of the ngrok client. Since this seems intended for embedded devices/routers, you might also be interested in rathole:

    https://github.com/rapiz1/rathole

  • TunSafe

    Source code of the TunSafe client

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • namedrop-protocol-spec

    Specification for the NameDrop DNS delegation protocol

    There's the DomainConnect protocol[0] which has been around for a few years. I didn't find it particularly well matched for open source projects, so I've also done some work on my own protocol[1]. The current draft is implemented by TakingNames.io (as a provider) and boringproxy as a client. You can read more about it and watch a demo here[2].

    That said, I no longer thing DNS is the right layer of abstraction. I think we need an open tunneling protocol[3].

    [0]: https://www.domainconnect.org/

    [1]: https://github.com/takingnames/namedrop-protocol-spec

    [2]: https://takingnames.io/blog/introducing-takingnames-io

    [3]: https://forum.indiebits.io/t/toward-an-open-tunneling-protoc...

  • onionpipe

    Onion addresses for anything.

    I made a little utility for tunneling with the Tor daemon. Check out https://github.com/cmars/onionpipe.

    onionpipe forwards ports on the local host to remote Onion addresses as Tor hidden services and vice-versa.

  • jtunnel-server

    Long time lurker here , here is one i have written in java with netty inspired by ngrok and localtunnel which allows for inspection of requests and provides replay . Its Still in development with a lot of rough edges .

    https://github.com/manoj-inukolunu/jtunnel-server

    https://github.com/manoj-inukolunu/jtunnel-netty-client

  • jtunnel-netty-client

    Create Tunnels and expose local servers to the internet

    Long time lurker here , here is one i have written in java with netty inspired by ngrok and localtunnel which allows for inspection of requests and provides replay . Its Still in development with a lot of rough edges .

    https://github.com/manoj-inukolunu/jtunnel-server

    https://github.com/manoj-inukolunu/jtunnel-netty-client

  • Code-Server

    VS Code in the browser

    I've been running stuff like code server [1] for some workshop I held recently and I was building simple .NET projects there without any issues.

    I wouldn't pay $40/year because the value of having a random instance up with domain/ssl and nginx running all the time has been handy many times so far - worth way more than what I pay for the machine. At this point ngrok would be a downgrade for my use case, but if it was something like 20$/year when I was looking into it I probably wouldn't have bothered setting it up.

    [1] https://github.com/coder/code-server

  • sish

    HTTP(S)/WS(S)/TCP Tunnels to localhost using only SSH.

    Setup https://github.com/antoniomika/sish and get away from manually setting anything up. Uses SSH, supports HTTP(S)/TCP/Websockets/TLS via SNI and let’s users choose their own tunnel names. Can run it on a free instance from google or oracle.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts