Tips for Running an Exit Node




1. Inform your potential ISP(s)





3. Get recognizable Reverse DNS for this IP

4. Set up a Tor Exit Notice

5. Get ARIN registration (if possible)




6. Consider a Reduced Exit Policy



7. Rate limit and optionally QoS your node

8. Consider creating an LLC to run your node







That's it! Happy operating!


June 21, 2009


Thanks so much for this post. I was running an exit node a few days ago and ended up using ~20GB in 24 hours! I had to shut it down because my ISP (Comcast, bastards) was checking my ports and seemed to be cutting me off, as the traffic on my circuits dropped WAY off.

Yeah, it's likely you weren't discovered by port scanning and more likely by the total bandwidth use. However, if you're sure that is port scanning, you can put your Tor server on an unused high-numbered port (check /etc/services for blank ranges) and then customize your firewall rules to DROP as opposed to REJECT packets to your unused port ranges on your machine. DROP rules greatly increase the time it takes to port scan your machine, because scanner's packets need to be retransmitted many times to differentiate between normal packet loss and DROP rules. Also, choosing an infrequently used port will often completely escape scanners' notice, because they typically scan frequently used ports to save time. You probably also want to disable your DirPort in this case too, as that is plain text http, often contains strings that say "Tor" and easily seen by filters at *your* ISP.

There are also rumors that some of Iran is blocking port 443, so putting your Tor server on strange ports is actually helpful for that too.

Note this likely only makes sense for middle and bridge nodes. Exit nodes will be so noisy you'll eventually get some sort of abuse complaint if you don't follow Mike's steps (and possibly sometimes even if you do, it sounds like).


June 24, 2009


The rationale here is understandable, but #1 & 2 appear to have the undesirable side effect of making exit point surveillance by Government Organizations easier, assuming that the ISP in question is colluding with them (frequently the case, and in many nations, mandated by law or regulation). Is my conclusion in error? This might be less of a problem if a TOR user could whitelist or blacklist specific exit point countries (this rests on a presumption that authorities in Venezuela, for example, would likely be relatively uninterested in issues that are locally "sensitive" in Iran, for another example, and vice versa). Is there any tool in TOR that allows this? I do understand that the trade-off for wide use of such a capability would be a potential net reduction of bandwidth in an already constrained network.


June 24, 2009

In reply to by Anonymous (not verified)


Exits are already listed in the Tor directory that clients use, which is public. The Tor project also provides a DNSRBL with Tor exit nodes to prevent incorrect blocking of Tor nodes that do not actually exit:

So the additional threat of government monitoring is not really a valid argument.
However, it might be the case that your ISP doesn't figure it out until you till them, but that will only last until your first abuse complaint if you are running an exit.


June 24, 2009


Another useful tactic might be to register your reverse DNS domain name with a top level country code that is not the same as the jurisdiction for your IP address. It might be the case that the "copyright cartels" (lol) and others will give up if they see a .se domain name, or similar :)

Interesting suggestion - Love the idea!

I fear it won't actually make a lot of difference... for the most part, I think, they're just running scare tactics. As a result, even if the DMCA notices are irrelevant, will never be pursued, and will generally get ignored, they're still increasing their coverage at no extra cost. However, I suppose at some point they've got to make a decision about whether they're going to attempt to make a lawsuit stick, and a .se (or similar) reverse DNS may mean you get filtered-out early in that process.


June 24, 2009


We've run an exit node in the past. Currently not running, will be again soon, I hope...

We had an excessively simple strategy for reducing entanglements: being based in the US, we only allowed exit to IP space delegated to Europe, Asia, etc.

Reducing the chances that any local TLA would want to come knocking is a good thing.

Excessively simple perhaps, but arguably effective, for parties at both ends of the pipe. Now if there was a mechanism for clients in a given location to select an exit node that only exited to IP space in some defined elsewhere, a user in that location could have a little bit more comfort (never guaranties!) in his or her privacy.from the snooping noses of das Heimatland Sicherheit and ilk.

>We had an excessively simple strategy for reducing entanglements: being based in the >US, we only allowed exit to IP space delegated to Europe, Asia, etc.

Re the subject and previous comments. Apparently this is possible, see TOR FAQ 3.15. However, it is not recommended, for several reasons. In that same FAQ item, there is a reference to using Blossom for this purpose. Has anyone here tried this? Is it possible to just run the Blossom client service that allows this option with an existing TOR client, or are the two clients mutually exclusive? Also, my intent was not to hijack this thread; it might be best if someone could fork this into a separate topic.

Our non-US exit strategy was the outgrowth of an idea that seems to have been largely ignored by Tor developers.

IPv4 space is largely (not completely reliably) delegated to entities called Regional Internet Registries (RIR's) in large swaths. The RIR is then responsible for passing out space to the entities in its region. There are entanglements, such as multinationals, or legacy delegations, but in large part, you can wave your hands a bit and know that any IP address between and is handled by the European RIR, RIPE, IP addresses between and are handled by Asia Pacific's APNIC, etc. You can fairly readily break down large chunks of space by RIR based on the first octet, sorting unknown or mixed use stuff into a different category.

This means that it would be fairly easy to generate "buckets" that roughly categorize IP space. Tor nodes could be separated into each of these buckets, and you could have a rough idea that you'd likely be crossing political boundaries anytime you went from one bucket to another, simply because most countries do not exist in multiple geographic regions.

So you categorize Tor nodes into buckets while indexing them: this is a 256-entry database plus a half page of code.

Now, you can do things with that data. Rather than just "randomly" picking Tor nodes for a circuit, you could prefer a first hop outside your own bucket, a second hop in neither of those buckets, and a completely random third hop. So when your US-based PC goes to Amsterdam for the first hop, Taiwan for the second, and ends up exiting in Canada, you've done a lot to make it more difficult for any one country to track back to you.

Perhaps we don't have to worry about this in the US, but looks like the Iranians do.

Getting back to the previous comment, however ----

For those of you who would like to allow exit to non-local space, I suggest looking at

Determine your own RIR (ARIN, APNIC, etc) and then generate a list of prefixes that are served by *other* RIR's. Allow exit to those prefixes. For example, a host in America can probably more safely offer exit to 41.*, 51.*, 58-62.*, etc.

It would be great to be able to choose the country of the exit node to overpass the IP filtering of some websites.

I am running a TOR Bridge here in Darwin Australia for the Nedanet i am under constant heavy network hacking attacks originating in china you name it and there trying it !! I think a good tip for anyone running Tor is to make sure you have a better than average firewall setup ... i also run a DMZ from the router to a locked down linux box ... i have noticed also no network scanning or attacks from iran .... makes me wonder if China helps Iran with their IT security ?

If you are dealing with a box that is running other services besides Tor, simply assign it a second IP and firewall in a manner that puts on the the Tor service on that IP and disallow anything else.

Worked for me.

I've followed mikeperry's advice and sent my ISP a heads-up, suggested URLs and all. And, somewhat to my surprise, instead of some e-mail boilerplate in 48-hours or so, I got a phone call from "Steve" in within three hours. Suffice to say, 1) I shall call him tomorrow and ask him to respond exclusively via e-mail from now on, as I'm severely deaf, and 2) determine what level of service I can can be to Tor which is within the ambit of CableOne's AUP, savvy?

To wit: "This is to inform you that given the situation in Iran (and of course, China!) I shall be running Tor exit node kencf0618 mostly but not entirely from midnight to 5 a.m. I'm still tweaking my settings with your AUP in mind, as it is not my intention to degrade anyone's service.
Submission Date: 6/29/2009 2:43:39 PM"

I rather suspect that inasmuch as I had for a day or so checked off everything on Vidalia's exit node configuration, "Steve" shall play the Moral Panic card. My usage was 1.5G in in March, 3.0 in in April, and 2.4 in May, but 8.0 in June due to Tor, so I figured that I might've raised a red flag somewhere.

Any and all advice would be appreciated. Basically, I want a stable state of whatever it is I can get away with re Tor within my ISP's AUP. Think Venn diagram.

Thanks, folks!

hi there,
is it possible to have a special build only allowing my exit node for clients originating in china, iran etc.? unfortunately i don´t know very much about this software but am unwilling to hassle with problems from my isp. right now i´m running only in bridge mode.
i think there might be a lot more people out there like me that would install a special iran package without having to think about it anymore


This wouldn't work. The exits don't know where the client resides. If this was possible, it would quickly turn the users into a special set which may be easier to track down. Fragmenting the Tor network into a series of partitions makes everyone less anonymous.

See "Anonymity Loves Company" at

Despite the local CableOne tech telling me in the morning that Tor wasn't a problem and that bandwidth wasn't an issue (especially between midnight and noon), that afternoon I came home after work to a nasty DMCA take-down notice and a frozen ISP account. I could receive mail, but that was it, and so perforce had to deal with the sanction by phone... Apparently someone had sent a bit torrent through my machine. Some game... I'm no gamer.

Well! I steered everyone and their dog to the EFF's legal boilerplate, but it was only today that I finally reached someone who knew what they were talking about, Tech No. 2, and he informed me that Tor on a residential account was in itself a no-no. And by then I no longer had the nous to contest the matter. I had acted in good faith & received bad information, and that was that. Time to move on. (He was very interested in the identity of Tech No. 1!)

You learn by doing. Knowing then what I know now, I probably would have stuck with a humble relay or bridge node and stayed under the radar. Parse your TOS's and AUP's well!

A local CableONE executive has admitted that their AUP is deliberately vague, but inasmuch as he hasn't told me what of Tor if anything I can run, I am currently running a bridge relay on occasion. My reading of their AUP is that so long as I'm not degrading anyone's service or doing anything illegal, I'm good. If I'm wrong, there's always Qwest!

I truely believe what you did say here because I read most of the things you write.
But sometimes it just doesn't work for me.


I may yet have to try that strategy. I thought I had found a viable alternative by using the "excludeexitnodes" directive in torrc, but experimentation indicates that even after paring the excluded jurisdictions down to just one, the directive is still ignored more often than honored in the interests of building what tor considers to be a viable network. That is not a complaint, just a results report from one experiment. More to follow.

Did you set ExitNodes {country code} and StrictExitNodes 1? Also, was there an exit node that allowed exit to the ports you wanted at the time?

I may have taken the documentation of "StrictExitNodes" in the manual too literally, as it mentions its use only in conjunction with "ExitNodes", not "ExcludeExitNodes" (and yes, I do have that one coded correctly :-) Thank you, that is worth a try. Be right back...


July 29, 2009

In reply to by itsmeagainamargaret (not verified)


Unfortunately my first impression was correct. Using "StrictExitNodes 1" with "ExcludeExitNodes {XX}" produces a log message "[Warning] StrictExitNodes set, but no ExitNodes listed." Of course there is an obvious, if ludicrous alternative - use "StrictExitNodes 1" with "ExitNodes", passing the entire list of country codes except those to be excluded. I've already coded the list (good thing that wasn't tedious :-) It occurs to me to wonder if ExitNodes/torrc will accept an 800 char parameter string (246 each ISO 3166-1 alpha-2 codes x 4 chars ).  I further wonder just how rigorously that part of teh code has been tested for bounds checking and buffer overflows :-0  I will learn at least some of those answers, I believe...  


July 29, 2009

In reply to by obsess much? (not verified)


No joy. With 238 country codes specified on ExitNodes, the log message is "[Notice] Have tried resolving or connecting to address '[scrubbed]' at 3 different places. Giving up." Restoring the redacted country codes and/or changing "StrictExitNodes 1" to "StrictExitNodes 0" produces the same message. Evidently it is choking on too long a parameter string, or the process is timing out while it attempts to process it (probably the latter). I needed to try it though - thanks for the help. I'm back to "ExcludeExitNodes {XX}" - at least Tor takes that one "under advisement" :-)

I used to run an exit node on a server hosted by intergenia (server4you), germany.

I first got notified of a complaint they received reagrding botnet activity, so I restricted the outgoing ports to HTTP and a few similar only, as well as told them the usual (its running a TOR exit node, links to the FAQ and legal disclaimer, etc...)

It went well for a couple of month, when they contacted me again, after receiving another complaint from a corporation that complained about "spying out information by electronic means" which is a crime since a couple of years ago.
the HTTP request in question was something like GET /internal/search?*.* HTTP/1.1
on port 80

The ISP informed me that "regardles of who or what caused that traffic originally, I'd be legally responsible for traffic originating from my IP, and if they'd get any more complains they'd take the entire server of line at my cost, and terminate the contract."

I am no lawyer, though this sounds pretty much like bullshit to me.
Nevertheless the TOR is no longer running as an exit node.
Does anyone know a hosting provider in germany that will accept open proxies and the like in their IP range?

I think the solution to the problem is simple. Use prepaid debit cards, pay monthly, and don't use your real name! They won't be able to come after you then. Nobody would have enough information to go after you at least. At least nobody with enough interest to. It wouldn't be a criminal matter. Setup the thing via a wifi connection at a coffee shop too because trying to go through Tor to sign-up for the ISP/host with get your account suspended from the get-go. Everybody thinks a foreign IP and/or changing IP means fraud.

Another option is to contact the CCC in Germany and see if the ISP's legal thoughts are correct. In most countries, Tor is like a common carrier, where you are not responsible for the traffic it carries. ISPs generally bend this into "your fault, not ours" and people accept it.

Great tips. Tor is a traffic routing network. I personally have never experienced problems using the Tor Network. Generally, most computers that join Tor are good ones and have the intent to help others. Security is very important especially when it comes to your computer.

Nice one..
I completely agree but I also think experimentation indicates that even after paring the excluded jurisdictions down to just one, the directive is still ignored more often than honored in the interests of building what tor considers to be a viable network.
online games

I have a question for you ExitNode experts. There are only a few people who run ExitNodes for the whole of the UK. So, as a tor user, if I always exit through one of those, say, 10 nodes does that mean that I always appear to have one of 10 ip addresses to programs that would check for my ip address ?

If the above is true then I would be surprised how easy it would be to ban those specific IPs as 'not really being trusted to only have people from the UK'. Or is there some IP trickery built into tor that keeps the IPs more random ...

The ExitNode sends the final request, so the ExitNode's IP is what is seen. If they are all blocked you're out of luck.

Good article!!!!!!! Also the port 8088 is sometimes used for HTTP!!!!!

However, and i wrote this to the TorProject, there is the threat of ACTA on coming!!!! remember!?!!! «If it'll pass, you won't have anymore a safe harbor nor anything to protect tor nodes whenever they're used to download copyrighted things!!!!! It isn't something like the DMCA!!!!! It's a world-wide law (or almost!!) so it'll apply in the USA, Europe (Sweden and Germany included!!), Australia, Japan, and so on!!!!!!
What's also funny, is that criticizing the pro-copyright (or anti-piracy) laws will be "illegal" too!!!!!!!!!!!!! It's the freedom of speech, as seen from lobbyists!!!!!
Yeah!!! Say goodbye to the TorProject, if ACTA will go through!!!!!»


Tor won't go away. The Tor Project, inc as a non-profit may have to cease to exist in the USA, but Tor won't go away. Just like I2P, FreeNet, etc won't go away either.

Is it normal for an exit node to only use 1/3rd of the bandwidth available? What would prevent tor from using all the available bandwidth?

Give it time, clients will find it and use it.

For we Windows uses that are not high tech as opposed to lazy --- How do we tell if the IP provider might be a problem? I have been running two bridges for a year and every so often the just stop showing any traffic. I have found the only way to get them going again is to uninstall the program and reinstall it. Yes I know I have been told I shouldn't have to do that but for now it that or just quit.

Suffice to say, the EFF runs a relay, and so do I; CableOne has a three-strikes policy, and furthermore at the second and third strikes you have to deal, not with help desk morons by phone, but with lawyers by snail mail. I wish I had had some of the fresher salient information in this thread a year ago, but as it is, a tip of the hat to those running exit nodes...! (kencf0618)


It's not the IP provider. And you meant to say ISP. It's something with your computer that is screwy it would appear most likely. Even if it isn't and it does haves something to do elsewhere it isn't the ISP. That's about the only thing you can be sure of.

you should check your provider list. some of them forbid the use of their servers for tor and other anonymization systems.

That thing about the separate IPs is helpful. It would also mean that you wouldn't experience slow-down.

I just had to shut down my exit node due to DMCA complaints for bittorrent traffic. My exit node received 7 DMCA complaints within two months. After the first two, I restricted my exit policy just slightly more open than what's listed in this article, but still pretty limited. That delayed the next couple complaints, but they kept coming. The provider was very understanding, but were getting pressure from their upstream provider. I know it's a necessary evil, but the bittorrent traffic really hurts the tor network.

The key thing about the ports listed here is that there are only ~60 of them, which represent the 60 most commonly used ports. This drastically reduces the odds that a bittorrent user will select your node.

Since bittorrent clients can be run on any port, and most of them pick random ports, every port you add to your exit policy increases the probability of a bittorrent client using your exit node to connect to a monitored peer that is listening on that port. This means that enabling ranges of ports is especially bad, unfortunately. Each new port adds 1/65535 to your risk of getting DMCA takedowns.

can someone help me in how use ExcludeExitNode and ExitNode in my toorc file..??StrictExitNode????

I too am in the same situation. There is very little documentation on the subject. From what I can see, one simply adds ExcludeExitNodes, ... to thier torrc config file. No matter what I do I just cant get this to work. Tor continues to use the Excluded Exit nodes.

Here's what I do,
Add ExcludeExitNode XXX.XXX.XXX.XXX to my torrc file.
Restart Tor
Check my external IP

Nothing say 1 in every 5 goes, TOR will use the IP I specified in ExcludeExitNode. WTF? Any help on this would be greatly appreciated.

I've been running a relay and a bridge relay continually since my last comment (in July 2010) without any trouble whatsoever. Not a peep from anyone. Given that my ISP doesn't want to deal with the DMCA legal paper overhead, and just cuts you off at the knees if they get a take-down notice, I'm sticking with what works. I'm not front line, exit node troop, I'm a stable segment in the logistical tail. (kencf0618)

Your post says "In the USA, there have been no equipment seizures due to Tor exits",

but this is contrary to what the EFF says: