Tor is supposed to work in this way. Former versions of Tor built a complete new circuit every time. However some researcher found out that a so-called service location attack is possible. So the Tor Project changed the design in a way that defends this kind of attack. The defense is that the first relay in a circuit stays the same for some period of time. ...
It used to be manually assigned by the authority operators, but a couple of years ago I wrote a set of scripts to vote on Named automatically.
We have documented their behavior in dir-spec:
Newer Naming authorities run a script that registers routers
in their mapping files once the routers have been online at
least two weeks, no other router has that ...
There's a good break-down of most of these at https://github.com/torproject/torspec/blob/master/dir-spec.txt
It doesn't cover your full list, but the ones it does cover are very clearly explained:
A router is called an ‘Authority’ if the authority generating the
network-status document believes it is an authority
A router ...
[ Tor user <-> Guard node <-> Middle node <-> Exit node <-> Server ]
Sending data to server:
The Tor client always encrypt the data for the exit node
And then encrypts it again (another layer) for the middle node
And then again (yet another layer) for the guard node
This way one layer need to be peeled of at each hop in the ...
The main problem seems the port you are using. According to your command you're using port 9150 which is used by Tor Browser Bundle. If the bundle is closed, this port is not open.
In the default configuration Tor uses port 9050 as SocksPort:
curl --socks5-hostname 127.0.0.1:9050 https://www.torproject.org/
curl -x socks5h://127.0.0.1:9050/ https://...
When running an exit node, it is highly recommended to make it as clear as possible that it is an exit node. This helps the operator deal with DMCA notifications and abuse reports and the like.
Further more, it is impossible for any relay, exit or non-exit, to hide the fact that they are a relay. The list of all relays and their flags is publicly available....
As of today, the highest performing Tor node is pushing about 30 MB/s so if you are looking for tips, I'd suggest trying to match what the fastest Tor nodes are doing.
Firstly, choose a good platform. Linux works well, as does FreeBSD. Avoid Windows; while it is possible to get good performance out of Windows it requires a very different programming style ...
From the Tor directory specification (emphasis added):
Named – Directory authority administrators may decide to support name
binding. If they do, then they must maintain a file of
nickname-to-identity-key mappings, and try to keep this file consistent
with other directory authorities. If they don't, they act as clients, and
I would think a bridge could be considered a private relay. You can even setup the bridge so it is not broadcast to the bridge authority. In that setup you would be the only person able to give out access to the bridge, so if you wanted you could keep it private to just yourself.
General info on bridges:
Caveat: not a complete answer, but still a start:
There probably is a limit, given Tor's current design. For instance, right now it's assumed that every relay can and does talk directly to every other relay. Once you have many tens of thousands of relays that just won't work anymore.
For now, Tor has kept ahead of the curve. However, this requires ...
To quote Roger Dingledine from many talks given about Tor:
"To our knowledge there isn't a country/place where Tor has been declared illegal."
(Not exactly his words throughout the years.)
To my knowledge, which is more limited than the input the TorProject gets, this is still the case.
A similar method to what Jens Kubieziel♦ already mentioned is not completely restarting the server, but using Tor's ControlPort to change the bandwidth limits at certain times of the day.
This can be achieved by the following cronjobs:
0 6 * * * echo -en "authenticate\r\nsetconf relaybandwidthrate=100000 relaybandwidthburst=200000\r\nquit\r\n" | nc ...
Every relay is important for the diversity of the network. The anonymity is the direct result of diversity of the network. Diversity of number of relays, diversity of number users, diversity of nature of network usage, diversity of number of directory authorities, etc. Without the diversity you may as well forget about anonymity. One can make a mathematical ...
There's basically always a shortage of bandwidth in the Tor network, so every amount of Bandwidth you can donate helps.
Additionally, your relay usually serves more than one circuit at a time, so any one connection that's going through your relay will receive only a share of your bandwidth anyway.
The amount of circuits goes up the more bandwidth you ...
The Tor Project now recommends at least 250 kilobytes/second each way to keep the level of service at least somewhat sane for users. Providing less bandwidth than that is actually a net drain on resources inside the network, because information about all relays has to be transmitted to all clients, which adds up to surprising amounts of bandwidth. Also, it's ...
Manually configuring a Tor Relay on OS X
(Yosemite, Tor 0.2.5.11)
This guide walks you through the process of configuring your very own
tor relay explaining each step along the way. It's targeted for people interested in running a relay outside of the Tor Browser Bundle. Hopefully you'll find these steps concise and easy to follow - this is the manual ...
Each authority votes on what they think the proper flags are for your relay.
Currently it seems 5 think angrykitteh should have the Guard flag, and 4 think it shouldn't yet. Depeding on which authorities manage to vote for which consensus, the flag might end up being set in the consensus or not.
I suppose in a while the remaining 4 authorities will also ...
A directory mirror that has an max accounting set is simply not best practice.
So a directory mirror has to be reliable and always on to be useful.
Another reason is that if you set an AccountingMax it is much more important to use the limited amount of traffic for incoming client connections than using it for syncing between dirauths and your relay.
So it ...
hiprivet provided a solution by changing the source code of Tor. The question, if it is possible to extent the circuit length, was asked before and this answer is still valid.
So take a minute before you implement this solution and consider the following issues:
The main risk of a Tor circuit are the end points. First there is the entry into the Tor ...
Raspberry Pi is good for this.
Add the repository, install Tor and configure.
You can clone the memory-card and put it in a new one for easy setup of multiple Raspberry Pi's.
For updates just make a cron job that updates packages every X day. Then the Pi will pull the latest updates without the user having to do anything.
This is a common question that everyone stumbles upon while understanding TOR Design. When the data is sent back to the user, each relay encrypts the data using the session key which was exchanged with the user and then only when it reaches the user, it decrypts it using the session keys and retrieves the original data.
Using your example,
Linostar's answer is on the right track, but missed the Tor version you specified. You should update to at least the 0.2.5.x series for Tor to try and detect out of memory situations and handle them smartly. I'd suggest upgrading to either 0.2.5.x or even 0.2.6.x if you don't mind an alpha to se what happens.
The default systemd/upstart script should handle a shutdown properly.
The only thing that special about a relay shutdown is that there is a grace period of 30 secs to avoid tearing down short-lived connections.
From tor's the manpage:
When we get a SIGINT and we’re a server, we begin shutting down: we close listeners and ...
With Atlas, you are seeing consensus information from the Tor network, as retrieved via Onionoo. It is based on reports to and measurements by Tor network authority servers. It is a periodic report, and does not necessarily reflect the instantaneous state of your relay (recent changes you've made will take a while to show). This is the kind of information ...