TorNode — a one-click desktop app for running Tor relays/bridges

Built a small tool to lower the barrier to running Tor relays: TorNode (GitHub - 0x3k3h/TorNode: One-click self-hosted Tor relay/bridge/exit node manager (Electron desktop app) · GitHub)

It’s an Electron desktop app (Windows/macOS/Linux) that walks you through setting up a relay, bridge, or exit node without hand-editing torrc:

  • Detects existing Tor installs, with a built-in downloader for the official Tor Expert Bundle on Windows
  • Guided wizard to pick node type: bridge, middle/guard relay, or exit relay
  • Auto-generates torrc without touching any existing config
  • Built-in process management with real-time log streaming
  • Explicit risk-acknowledgment step for exit relay operators, flagging legal considerations (e.g. ISP ToS) before enabling

Install: npm install && npm start, or npm run dist for packaged installers.

Feedback and issues welcome — would love to hear from experienced relay operators on what’s missing or worth hardening. <3

I think that’s really interesting. The ability to pick where I want to support Tor has been on my mind ever since I installed Snowflake. I’m not familiar with how Tor chooses node/snowflake positions (if at all), but it’s nice to know explicitly that my snowflake isn’t being used for malicious purposes.

Maybe choosing could also improve browsing speed; users in densely populated areas like New York can choose to be guard relays to shorten the connection time for others nearby. And since most routers/gateways can have different settings, you could choose which Snowflake configuration could work for your network.

I do wonder, however, if this could have some negative outcomes. For example:

  • What if the majority of Snowflake users chose to be guard relays; would that make it slower/difficult to use a middle relay?
  • Would this affect Tor’s built-in Snowflake protection and authentication systems (if one exists)? I’m still learning what happens behind the scenes, however.
  • Would this allow systems to better track down a user? For example, if a party knows that an IP address will always pick one position, could they target/attack that relay somehow?
  • Would this enable malicious end-relays to read unencrypted (http:) traffic?
    • Maybe you could implement some kind of system that encrypts the traffic from the user’s computer itself, or make it difficult to read, if possible.
    • Maybe what you could also do instead is make it more likely for a user to become their preferred relay position. For example, users would be 75% more likely to be a guard relay, but could still act as a middle relay. This could also fix other potential issues listed above.

I also remember reading at some point that Tor doesn’t want people choosing their own relay position, but I forgot why.

I honestly love the idea of choosing where to put my Snowflake in a Tor connection, but I thought it would be worth bringing up some potential conflicts, just to stomp out potential issues in the future.

"Hey! Thanks for the interest and the great questions.

I think there might be a slight mix-up between how Snowflake works and how traditional Tor relays work. Snowflake proxies are a specific type of temporary bridge used to help people in censored regions connect to the Tor network. Because of how they work, Snowflake proxies don’t actually have ‘positions’ like Guard, Middle, or Exit.

The app I built (TorNode) is for setting up traditional Tor relays and standard bridges. These are the dedicated nodes that form the main backbone of the Tor network, which is where you can choose to act as a Guard, Middle, or Exit relay.

Because they are separate systems, choosing a relay position in TorNode won’t affect Snowflake users, Tor’s built-in protections, or cause the negative outcomes you mentioned regarding Snowflake. They are just two different (and both very helpful!) ways to support the network. Hope that clears things up!"

This is just a curiosity question.

I’m a bit confused about how Snowflake came into this conversation. I assume the term Snowflake means the Snowflake proxy like I am running at home or is it being used as another word for bridge which is the recommended default.

exactly me too

···

On Tue, 15 Sept 2026 at 13:37, BobbyB <noreply@forum.torproject.org> wrote:

Someone replied to your post.

| BobbyB
September 15 |

  • | - |

This is just a curiosity question.

I’m a bit confused about how Snowflake came into this conversation. I assume the term Snowflake means the Snowflake proxy like I am running at home or is it being used as another word for bridge which is the recommended default.


Visit Topic or reply to this email to respond.

To unsubscribe from these emails, click here.

Another curiosity question.

From the point of view of helping others circumvent censorship how is a bridge different (or better?) than running a Snowflake proxy like I do.

I understand running a guard/middle/exit node and their implications.

According to what I’ve understood, a key difference is that a traditional Tor bridge requires you to manually open incoming ports on your router, whereas a Snowflake proxy uses WebRTC to automatically traverse firewalls.

This means Snowflake requires zero open inbound ports and disguises the traffic as a regular video call, making it very easy to run on a home network.

That is one way of operating a Snowflake proxy (restricted) and there is also a method called unrestricted (now called open) where you do open up ports on the router and then need to let them through your OS firewall. Mine is configured like this but you are right that it is not necessary. There is also the browser extension but it only allows 1 connection at a time.

This is my first time to run tor relay. I tried running the app by using Tor from my Tor Browser. The screenshot below is the latest logs output. Is this means successful connected?

Yes

···

On Sat, 10 Oct, 2026, 6:17 am Echemon, <noreply@forum.torproject.org> wrote:

Someone replied to your post.

| Scott169
October 10 |

  • | - |

This is my first time to run tor relay. I tried running the app by using Tor from my Tor Browser. The screenshot below is the latest logs output. Is this means successful connected?


Visit Topic or reply to this email to respond.

To unsubscribe from these emails, click here.

Oh it needs several hours to get connections and flow. No wonder there is no activity just after started running. Seems quite different with Snowflake and Conduit.

Yes but it’s simpler to set up, this allows countless people to help TOR project

···

On Mon, 12 Oct, 2026, 11:09 am Echemon, <noreply@forum.torproject.org> wrote:

Someone replied to your post.

| Scott169
October 12 |

  • | - |

Oh it needs several hours to get connections and flow. No wonder there is no activity just after started running. Seems quite different with Snowflake and Conduit.


Visit Topic or reply to this email to respond.

To unsubscribe from these emails, click here.