summaryrefslogtreecommitdiff
path: root/docs/en/services/tor.html
blob: 1f6ce112cdaeac4bdf7e61b4f9a3c49835db4b9a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<!DOCTYPE html>
<html lang='en'>
<head>
<title>
tor - LEAP Platform Documentation
</title>
<meta content='width=device-width, initial-scale=1.0' name='viewport'>
<meta charset='UTF-8'>
<base href="" />
<style>
  body {
    background: #444;
    display: flex;
    flex-direction: row;
    padding: 10px;
    margin: 0px;
  }
  #sidebar {
    flex: 0 0 250px;
    background: white;
    margin-right: 10px;
    padding: 20px;
  }
  #sidebar ul {
    list-style-type: none;
    padding-left: 0px;
    margin: 0;
  }
  #sidebar li { padding: 4px }
  #sidebar li a { text-decoration: none }
  #sidebar li.active { background: #444 }
  #sidebar li.active a { color: white }
  #sidebar li.level1 { padding-left: 20px }
  #sidebar li.level2 { padding-left: 40px }
  #main {
    flex: 1 1 auto;
    background: white;
    padding: 20px;
  }
  #title-box {
    padding-bottom: 20px;
    border-bottom: 5px solid #eee;
  }
  #title-box h1 {
    margin-top: 0px;
  }
  pre {
    padding: 10px;
    background: #eef;
  }
  code {
    background: #eef;
  }
  table {border-collapse: collapse}
  table td {
    border: 1px solid #ccc;
    padding: 4px;
    vertical-align: top;
  }
</style>
</head>
<body>
<div id='sidebar'>
<ul>
<li class=''>
<a href='../../index.html'>Home</a>
</li>
<li class=' level0'>
<a class='' href='../guide.html'>Guide</a>
</li>
<li class=' level0'>
<a class='' href='../tutorials.html'>Tutorials</a>
</li>
<li class='semi-active level0'>
<a class='' href='../services.html'>Services</a>
</li>
<li class=' level1'>
<a class='' href='couchdb.html'>couchdb</a>
</li>
<li class=' level1'>
<a class='' href='openvpn.html'>openvpn</a>
</li>
<li class=' level1'>
<a class='' href='monitor.html'>monitor</a>
</li>
<li class=' level1'>
<a class='' href='mx.html'>mx</a>
</li>
<li class=' level1'>
<a class='' href='soledad.html'>soledad</a>
</li>
<li class='active level1'>
<a class='' href='tor.html'>tor</a>
</li>
<li class=' level1'>
<a class='' href='webapp.html'>webapp</a>
</li>
<li class=' level0'>
<a class='' href='../upgrading.html'>Upgrading</a>
</li>
<li class=' level0'>
<a class='' href='../troubleshooting.html'>Troubleshooting</a>
</li>
<li class=' level0'>
<a class='' href='../details.html'>Details</a>
</li>
</ul>
</div>
<div id='main'>
<div id='title-box'>
<h1>tor</h1>

<div id='summary'>Tor services: relay, exit node and hidden service</div>
</div>
<div id='content-box'>
<div id="TOC"><ol>
  <li>
    <a href="tor/index.html#topology">Topology</a>
  </li>
  <li>
    <a href="tor/index.html#configuration">Configuration</a>
  </li>
</ol></div>

<h2><a name="topology"></a>Topology</h2>

<p>Nodes with <code>tor</code> service will run a Tor relay with some pre-defined settings, which can be changed with some configuration (see <em>Configuration</em> below). You can enable an exit or a hidden service with additional configuration.</p>

<h2><a name="configuration"></a>Configuration</h2>

<p>By default, if a node has service &lsquo;tor&rsquo; 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.</p>

<ul>
<li><code>tor.bandwidth_rate</code>: the max bandwidth allocated to Tor, in KB per second, when used as an exit node (default: 6550 KB/sec).</li>
<li><code>tor.type</code>: what type of tor node to make, at this moment only &lsquo;exit&rsquo; is supported. If not specified, acts as a relay.</li>
<li><code>tor.contacts</code>: the contact information for the relay (default: the list of provider contacts)</li>
<li><code>tor.nickname</code>: the nickname of the relay (default: a combination of the node name and a hash of the family)</li>
<li><code>tor.family</code>: a list of the other nicknames that are part of the same provider</li>
<li><code>tor.hidden_service</code>: to enable a hidden service, set &lsquo;active&rsquo; to be true (see below for an example), do <em>not</em> configure &ldquo;services&rdquo;: [&ldquo;tor&rdquo;] for the node!</li>
</ul>


<p>Examples:</p>

<p>To add a relay to a node:</p>

<pre><code>{ 
 "services": ["tor"]
}
</code></pre>

<p>To enable a hidden service, without a relay, do <em>not</em> 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: <a href="https://trac.torproject.org/8742">https://trac.torproject.org/8742</a>), instead configure the node to have the following:</p>

<pre><code>{
  "tor": {
    "hidden_service": {
    "active": true
  }
}
</code></pre>

<p>If activated, you can list the hidden service .onion addresses this way:</p>

<p>   leap ls &ndash;print tor.hidden_service.address tor</p>

<p>Then just add &lsquo;.onion&rsquo; to the end of the printed addresses.</p>

<p>To enable a Tor exit node:</p>

<pre><code>{
  "tor": {
    "bandwidth_rate": 6550,
    "type": "exit"
  }
}
</code></pre>

</div>
</div>
</body>
</html>