summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pages/docs/platform/services/tor.md43
1 files changed, 31 insertions, 12 deletions
diff --git a/pages/docs/platform/services/tor.md b/pages/docs/platform/services/tor.md
index b0be6be..580824e 100644
--- a/pages/docs/platform/services/tor.md
+++ b/pages/docs/platform/services/tor.md
@@ -1,14 +1,39 @@
@title = 'tor'
-@summary = 'Tor exit node or hidden service'
+@summary = 'Tor services: relay, exit node and hidden service'
Topology
------------------------
-Nodes with `tor` service will run a Tor exit or hidden service, depending on what other service it is paired with:
+Nodes with `tor` service will run a Tor relay with some pre-defined settings, which can be changed with some configuration (see *Configuration* below). You can enable an exit or a hidden service with additional configuration.
-* `tor` + `openvpn`: when combined with `openvpn` nodes, `tor` will create a Tor exit node to provide extra cover traffic for the VPN. This can be especially useful if there are VPN gateways without much traffic.
-* `tor` + `webapp`: when combined with a `webapp` node, the `tor` service will make the webapp and the API available via .onion hidden service.
-* `tor` stand alone: a regular Tor exit node.
+Configuration
+------------------------------
+
+By default, if a node has service 'tor' configured, it will run a tor relay (not an exit). The relay will be configured with bandwidth limitations, contacts, a nickname and a family. The defaults for these (shown below), can be overridden as desired.
+
+* `tor.bandwidth_rate`: the max bandwidth allocated to Tor, in KB per second, when used as an exit node (default: 6550 KB/sec).
+* `tor.type`: what type of tor node to make, at this moment only 'exit' is supported. If not specified, acts as a relay.
+* `tor.contacts`: the contact information for the relay (default: the list of provider contacts)
+* `tor.nickname`: the nickname of the relay (default: a combination of the node name and a hash of the family)
+* `tor.family`: a list of the other nicknames that are part of the same provider
+* `tor.hidden_service`: to enable a hidden service, set 'active' to be true (see below for an example), do *not* configure "services": ["tor"] for the node!
+
+Examples:
+
+To add a relay to a node:
+
+ {
+ "services": ["tor"]
+ }
+
+To enable a hidden service, without a relay, do *not* specify the tor service (it is not considered secure to have a node configured as a relay and a hidden service at the same time, see: https://trac.torproject.org/8742), instead configure the node to have the following:
+
+ {
+ "tor": {
+ "hidden_service": {
+ "active": true
+ }
+ }
If activated, you can list the hidden service .onion addresses this way:
@@ -16,13 +41,7 @@ If activated, you can list the hidden service .onion addresses this way:
Then just add '.onion' to the end of the printed addresses.
-Configuration
-------------------------------
-
-* `tor.bandwidth_rate`: the max bandwidth allocated to Tor, in KB per second, when used as an exit node.
-* `tor.type`: what type of tor node to make, at this moment only 'exit' is supported. If not specified, acts as a relay.
-
-For example:
+To enable a Tor exit node:
{
"tor": {