Live data from Hacker News

Tunnelmole, an ngrok alternative (open source)

softwareengineeringstandard.com

41–50 of 87 posts

Re: Tunnelmole, an ngrok alternative (open source)

#41
post #36

Or hire a static ip and expose whatever ports you feel like. Its amazing how far we've fallen from the internet of the 90s when you could get this done on most ISPs with all of a phone call.

Dynamic DNS is a good alternative. A free one I like is https://www.duckdns.org/

Re: Tunnelmole, an ngrok alternative (open source)

#42
post #36

Or hire a static ip and expose whatever ports you feel like. Its amazing how far we've fallen from the internet of the 90s when you could get this done on most ISPs with all of a phone call.

I once had a PCI dialup modem back in the early day of the internet. No router involved, so the IP I got was exposed to the internet. To share a web server was simple, basically start it then " rel="nofollow">http://.

I also ended up with several worms infecting the Windows version I was running, part of why I switched to Linux and haven't looked back since.

Re: Tunnelmole, an ngrok alternative (open source)

#43
post #37

Earlier quoted context omitted.

is the `host` part here a server that you run yourself?

yes

The main purpose of services like Tunnelmole and ngrok is to basically provide this functionality and save you from having to run your own server. Its easy for people like us, I've used SSH for more than 20 years. Alot of devs however don't have good Linux/infra/ssh exposure. Others might have that exposure, but don't have the spare time or energy to run their own server.

Re: Tunnelmole, an ngrok alternative (open source)

#44

Is there any stand-alone open source version of the VS Code port forwarder? That’s what I really want. Not so much public access, just local access to ports on the remote machine that I can easily manage. SSH port forwards don’t work inside docker dev environments (and docker containers have to be rebuilt to export new ports natively), so some extra software is needed.

Using tailscale can solve this problem, and that's what I've opted to do since I was using tailscale already.

Re: Tunnelmole, an ngrok alternative (open source)

#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 using TLS). It’s not a VPN quality software, going through audits. It may need a reverse proxy in front of it.

The ones that make outbound connections seem better. Ngrok pricing is not good, particularly when using custom domains. Tailscale funnel seems to be for short lived lightweight connections, has bandwidth and speed limitations due use of relay servers, kills my CPU, and requires a tailnet.

SSH reverse tunnels require some scripting with autossh or similar to ensure persistent connections.

Re: Tunnelmole, an ngrok alternative (open source)

#46

Another free + open source alt (for Mac) https://github.com/build-trust/ockam/blob/develop/examples/a...

This one is pretty weird. All the docs about everything talk about privacy and security and Ockam Orchestrator. This last part seems to be a completely proprietary and undocumented cloud service. Why would anyone trust this?

Re: Tunnelmole, an ngrok alternative (open source)

#47

Is there any stand-alone open source version of the VS Code port forwarder? That’s what I really want. Not so much public access, just local access to ports on the remote machine that I can easily manage. SSH port forwards don’t work inside docker dev environments (and docker containers have to be rebuilt to export new ports natively), so some extra software is needed.

Using tailscale can solve this problem, and that's what I've opted to do since I was using tailscale already.

A (potentially minor) problem with this use case for Tailscale is that we do actually want the forwarded services listening on localhost and not on a different IP address, because browsers treat these as secure contexts without having to fuss with https. I briefly checked the Tailscale userspace docs just now and it seems to expose a SOCKS proxy, meaning that we'd need an extra piece to listen on the desired localhost port and forward via Tailscale.

[edit] Removed an incorrect assumption. Tailscale does not require CAP_NET_ADMIN in userspace mode.

Re: Tunnelmole, an ngrok alternative (open source)

#48
Been obsessing the past fews days on ssh tunnels. Ran a local service for over a week using ssh -R which was pretty cool. Also tried out autossh. Was using Caddy on a 2$ VPS, mostly just worked. I love the idea of being able pay so little for a gateway onto an old laptop with a huge hard drive running all kinds of awesome stuff and instantly share a new container I run with a friend for a few hours and then take it down when we’re done.

I haven’t look at the code for the link above, but I think I am going to build a self hosted solution in Go and WireGuard with a simple GUI.

edit: one other cool thing to note was not only was this service behind a firewall, it was also behind my mullvad desktop client on Linux. Will probably run WireGuard connection to the VPS in a container to avoid conflicts with commercial VPN.

Re: Tunnelmole, an ngrok alternative (open source)

#49
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…

> Tailscale funnel seems to be for short lived lightweight connections, has bandwidth and speed limitations due use of relay servers, kills my CPU, and requires a tailnet.

I'm a fan of their approach[0] though. No termination of TLS, SNI proxying(I presume) to backend machines, etc.

[0]: https://tailscale.com/kb/1223/funnel

Re: Tunnelmole, an ngrok alternative (open source)

#50

Another free + open source alt (for Mac) https://github.com/build-trust/ockam/blob/develop/examples/a...

This one is pretty weird. All the docs about everything talk about privacy and security and Ockam Orchestrator. This last part seems to be a completely proprietary and undocumented cloud service. Why would anyone trust this?

disclosure: I work at Ockam.

The Portals for Mac app is an example of the type of thing you could build using the open source stack of protocols. The README (linked by parent) links out to all of the relevant parts of the protocol documentation to explain how these work together. The NAT Traversal (https://github.com/build-trust/ockam/blob/develop/examples/a...) part of the README is probably the best explanation of why the free relay you get via Ockam Orchestrator is a useful part of this demo.

As for why would anyone trust this: The protocols are designed so you absolutely don't have to trust the relay. Trust is pushed out to the edges that you control and so you're not susceptible to a MITM attack if something like a relay is compromised. The protocol design for all of this is open and documented, and was independently audited by (IMO) some of the best in the business, Trail of Bits: https://docs.ockam.io/reference/protocols.

Post reply on HN