Live data from Hacker News

Tunnelmole, an ngrok alternative (open source)

softwareengineeringstandard.com

71–80 of 87 posts

Re: Tunnelmole, an ngrok alternative (open source)

#71
post #45
post #8

I maintain a list of similar tools here: https://github.com/anderspitman/awesome-tunneling I'm not sure there's a single class of software that's been implemented more times than ngrok-style tunneling. I keep finding more and more. Honestly it's a really fun exercise. Fairly challenging, but well within the reach of a single developer. I believe I'm currently working on my 5th incarnation.

I still haven’t found an ideal solution, despite a variety of options. Cloudflare tunnels are good, but Cloudflare terminates TLS certificates, and scans the traffic. People host on premise for privacy, which is moot if using Cloudflare. FRP is simple and works, but it takes inbound traffic from open Internet. A vulnerability in it could compromise your environment. The transport encryption is customized (probably us…

Have you tried https://zrok.io/? Its open source so you can self-host with custom domains, has a free SaaS incl. reserved shares which give static, vanity URLs, and includes internet hardening/auth.

Re: Tunnelmole, an ngrok alternative (open source)

#72
post #71
post #45

Earlier quoted context omitted.

I still haven’t found an ideal solution, despite a variety of options. Cloudflare tunnels are good, but Cloudflare terminates TLS certificates, and scans the traffic. People host on premise for privacy, which is moot if using Cloudflare. FRP is simple and works, but it takes inbound traffic from open Internet. A vulnerability in it could compromise your environment. The transport encryption is customized (probably us…

Have you tried https://zrok.io/ ? Its open source so you can self-host with custom domains, has a free SaaS incl. reserved shares which give static, vanity URLs, and includes internet hardening/auth.

I have seen OpenZiti mentioned, and should probably try that and zrok.

I think self hosting internet facing servers is not a good idea for most people. That component should be outsourced to specialists, in a product that includes a range of features (see my comment on Cloudflare Access below).

Re: Tunnelmole, an ngrok alternative (open source)

#73

One of the thing I found missing is a lot of ngrok alternative is a web interface for viewing HTTP requests/responses when tunneling in HTTP/HTTPS mode, so I made a kinda hacky solution to this using cloudflared + mitmproxy: https://gist.github.com/maple3142/e46ab5ce8697476db13b4d9dc0...

Pretty interesting idea. Wonder if this approach works for mitming mobile apps. Wonder what percentage of them verify ssl certs

Re: Tunnelmole, an ngrok alternative (open source)

#74
post #72
post #71

Earlier quoted context omitted.

Have you tried https://zrok.io/ ? Its open source so you can self-host with custom domains, has a free SaaS incl. reserved shares which give static, vanity URLs, and includes internet hardening/auth.

I have seen OpenZiti mentioned, and should probably try that and zrok. I think self hosting internet facing servers is not a good idea for most people. That component should be outsourced to specialists, in a product that includes a range of features (see my comment on Cloudflare Access below).

Sure, I hear that argument. That is why zrok (zrok.io) and OpenZiti (CloudZiti) have SaaS services so that the hosting is outsourced to specialists.

Re: Tunnelmole, an ngrok alternative (open source)

#75
I found this yesterday, as I exceeded the 1GB monthly free traffic of ngrok. I use it only for testing some bookmarklet in development for work, so I won't pay for that, unless my employer does (which doesn't). So tunnelmole works pretty well.

Tried zrok.io but couldn't figure out what to do, wanted the easiest route.

Re: Tunnelmole, an ngrok alternative (open source)

#76
post #69

Earlier quoted context omitted.

Devcontainers in Docker. With Docker, you cannot add a port forward to an existing container; you have to rebuild the container. With devcontainers, this at a minimum requires a few minutes of rebuilding time (an excessive price to pay for changing a port forward).

So you have a devcontainer running on your local machine, and you start up a service inside it and want to access it from outside?

Yes, that's the gist, although to complicate things I actually have the devcontainer running on a remote machine. So to access it I use `ssh host docker exec -it container`, for example. This is a supported workflow for VSCode remote devcontainers, and I would like to see an open-source version of it.

Re: Tunnelmole, an ngrok alternative (open source)

#79
I built a similar service as well called Packetriot: https://packetriot.com

Building these types of tunneling systems are great projects. You learn a lot and can master skills in many different areas.

Packetriot has been operating for five years and the first few years was all spent on performance and stability of the core networking services. As the software and network matured, I spent more time on the operations and maintenance, and automating as much of that as possible.

Recently I've begun building tools to detect phishing and potential malicious behaviors. This is a common problem that operators of these tunnel networks have to deal with. It's an interesting and fun technical area and helps make the Internet a safer place :)

Re: Tunnelmole, an ngrok alternative (open source)

#80
post #26

Earlier quoted context omitted.

> I'm not sure there's a single class of software that's been implemented more times than ngrok-style tunneling. I keep finding more and more. AFAIK ngrok was the first widespread implementation of it, and there was such a sheer lack of it before that everyone started working on their own implementations at once and now we have an abundance. (At least that's my personal theory.)

I think "widespread" in this case means "marketed better". There were open source implementations before ngrok, whose founder even worked with someone who'd written one of those. (ngrok back then was certainly better than a lot of those other options, though.) Webhooks created the need for local tunneling software. Before ngrok, webhooks themselves were just starting to become more common. The need for local tunnelin…

> I think "widespread" in this case means "marketed better".

No, widespread means widespread. As in tons of people started to use it, ngrok started pivoting into enterprise, moved from ngrok.io to ngrok.com, etc. I was there for all of it.

The landscape of software other than ngrok was a total wasteland. Maybe there was localtunnel or SSH, I guess. But both of them kind of sucked and were fragile. ngrok was a static Go binary you could run anywhere to open a tunnel and it was total magic, worked perfectly, and was exactly what the world needed. It was the original. It taught people how this stuff ought to work and once people learned the formula, just like the iPhone, everyone else started copying it and now there are tons of implementations.

Post reply on HN