Browse code

Change hidden -> onion. (See #24285)

Renamed files, made new files with old names for redirects, updated
links to use new URLs.

kat authored on 19/11/2017 22:01:11
Showing 1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,258 @@
1
+## translation metadata
2
+# Revision: $Revision$
3
+# Translation-Priority: 3-low
4
+
5
+#include "head.wmi" TITLE="Tor Project: Onion Service Configuration Instructions" CHARSET="UTF-8"
6
+<div id="content" class="clearfix">
7
+  <div id="breadcrumbs">
8
+    <a href="<page index>">Home &raquo; </a>
9
+    <a href="<page docs/documentation>">Documentation &raquo; </a>
10
+    <a href="<page docs/tor-onion-service>">Tor Onion Service</a>
11
+  </div>
12
+  <div id="maincol">
13
+    <h1>Configuring Onion Services for <a href="<page index>">Tor</a></h1>
14
+    <hr>
15
+
16
+    <p>Tor allows clients and relays to offer onion services. That is,
17
+    you can offer a web server, SSH server, etc., without revealing your
18
+    IP address to its users. In fact, because you don't use any public address,
19
+    you can run an onion service from behind your firewall.
20
+    </p>
21
+
22
+    <p>If you have Tor installed, you can see onion services in action
23
+    by visiting this <a href="http://duskgytldkxiuqc6.onion/">sample
24
+    site</a>.
25
+    </p>
26
+
27
+    <p>
28
+    This page describes the steps for setting up your own onion service
29
+    website. For the technical details of how the onion service protocol
30
+    works, see our <a href="<page docs/onion-services>">onion service
31
+    protocol</a> page.
32
+    </p>
33
+
34
+    <hr>
35
+    <a id="zero"></a>
36
+    <h2><a class="anchor" href="#zero">Step Zero: Get Tor working</a></h2>
37
+    <br>
38
+
39
+    <p>Before you start, you need to make sure:</p>
40
+    <ol>
41
+    <li>Tor is up and running,</li>
42
+    <li>You actually set it up correctly.</li>
43
+    </ol>
44
+
45
+    <p>Windows users should follow the <a
46
+    href="<page docs/tor-doc-windows>">Windows
47
+    howto</a>, OS X users should follow the <a
48
+    href="<page docs/tor-doc-osx>">OS
49
+    X howto</a>, and Linux/BSD/Unix users should follow the <a
50
+    href="<page docs/tor-doc-unix>">Unix howto</a>.
51
+    </p>
52
+
53
+    <hr>
54
+    <a id="one"></a>
55
+    <h2><a class="anchor" href="#one">Step One: Install a web server locally</a></h2>
56
+    <br>
57
+
58
+    <p>
59
+    First, you need to set up a web server locally. Setting up a web
60
+    server can be complex. We're not going to cover how to set up a web
61
+    server here. If you get stuck or want to do more, find a friend who
62
+    can help you. We recommend you install a new separate web server for
63
+    your onion service, since even if you already have one installed,
64
+    you may be using it (or want to use it later) for a normal website.
65
+    </p>
66
+
67
+    <p>
68
+    You need to configure your web server so it doesn't give away any
69
+    information about you, your computer, or your location. Be sure to
70
+    bind the web server only to localhost (if people could get to it
71
+    directly, they could confirm that your computer is the one offering
72
+    the onion service). Be sure that its error messages don't list
73
+    your hostname or other hints. Consider putting the web server in a
74
+    sandbox or VM to limit the damage from code vulnerabilities.
75
+    </p>
76
+
77
+    <p>
78
+    Once your web server is set up, make
79
+    sure it works: open your browser and go to <a
80
+    href="http://localhost:8080/">http://localhost:8080/</a>, where
81
+    8080 is the webserver port you chose during setup (you can choose any
82
+    port, 8080 is just an example). Then try putting a file in the main
83
+    html directory, and make sure it shows up when you access the site.
84
+    </p>
85
+
86
+    <hr>
87
+    <a id="two"></a>
88
+    <h2><a class="anchor" href="#two">Step Two: Configure your onion service</a></h2>
89
+    <br>
90
+
91
+    <p>Next, you need to configure your onion service to point to your
92
+    local web server.
93
+    </p>
94
+
95
+    <p>First, open your torrc file in your favorite text editor. (See
96
+    <a href="<page docs/faq>#torrc">the torrc FAQ entry</a> to learn
97
+    what this means.) Go to the middle section and look for the line</p>
98
+
99
+    <pre>
100
+    \############### This section is just for location-hidden services ###
101
+    </pre>
102
+
103
+    <p>
104
+    This section of the file consists of groups of lines, each representing
105
+    one onion service. Right now they are all commented out (the lines
106
+    start with #), so onion services are disabled. Each group of lines
107
+    consists of one <var>HiddenServiceDir</var> line, and one or more
108
+    <var>HiddenServicePort</var> lines:</p>
109
+    <ul>
110
+	<li><var>HiddenServiceDir</var> is a directory where Tor will store
111
+	information about that onion service.  In particular, Tor will create a
112
+	file here named <var>hostname</var> which will tell you the onion URL.  You
113
+	don't need to add any files to this directory. Make sure this is not the
114
+	same directory as the hidserv directory you created when setting up thttpd,
115
+	as your HiddenServiceDir contains secret information!</li>
116
+	<li><var>HiddenServicePort</var> lets you specify a virtual port (that is,
117
+	what port people accessing the onion service will think they're using) and
118
+	an IP address and port for redirecting connections to this virtual
119
+	port.</li> </ul>
120
+
121
+    <p>Add the following lines to your torrc:
122
+    </p>
123
+
124
+    <pre>
125
+    HiddenServiceDir /Library/Tor/var/lib/tor/hidden_service/
126
+    HiddenServicePort 80 127.0.0.1:8080
127
+    </pre>
128
+
129
+	<p>You're going to want to change the <var>HiddenServiceDir</var> line, so
130
+	it points to an actual directory that is readable/writeable by the user
131
+	that will be running Tor. The above line should work if you're using the OS
132
+	X Tor package. On Unix, try "/home/username/hidden_service/" and fill in
133
+	your own username in place of "username". On Windows you might pick:</p>
134
+	<pre> HiddenServiceDir C:\Users\username\Documents\tor\hidden_service
135
+	HiddenServicePort 80 127.0.0.1:8080 </pre>
136
+
137
+    <p>Note that since 0.2.6, both <var>SocksPort</var> and <var>HiddenServicePort</var> support Unix sockets. 
138
+    This means that you can point the <var>HiddenServicePort</var> to a Unix socket:</p>
139
+    <pre>
140
+    HiddenServiceDir /Library/Tor/var/lib/tor/hidden_service/
141
+    HiddenServicePort 80 unix:/path/to/socket
142
+    </pre>
143
+
144
+    <p>Now save the torrc and restart your tor.</p>
145
+
146
+	<p>If Tor starts up again, great. Otherwise, something is wrong. First look
147
+	at your logfiles for hints. It will print some warnings or error messages.
148
+	That should give you an idea what went wrong. Typically there are typos in
149
+	the torrc or wrong directory permissions (See <a href="<page
150
+	docs/faq>#Logs">the logging FAQ entry</a> if you don't know how to enable
151
+	or find your log file.) </p>
152
+
153
+	<p>When Tor starts, it will automatically create the
154
+	<var>HiddenServiceDir</var> that you specified (if necessary), and it will
155
+	create two files there.</p>
156
+
157
+    <dl>
158
+    <dt><var>private_key</var></dt>
159
+    <dd>First, Tor will generate a new public/private keypair for your onion
160
+    service. It is written into a file called "private_key". Don't share this key
161
+    with others -- if you do they will be able to impersonate your onion
162
+    service.</dd>
163
+    <dt><var>hostname</var></dt>
164
+    <dd>The other file Tor will create is called "hostname". This contains
165
+    a short summary of your public key -- it will look something like
166
+    <tt>duskgytldkxiuqc6.onion</tt>. This is the public name for your service,
167
+    and you can tell it to people, publish it on websites, put it on business
168
+    cards, etc.</dd>
169
+    </dl>
170
+
171
+    <p>If Tor runs as a different user than you, for example on
172
+    OS X, Debian, or Red Hat, then you may need to become root to be able
173
+    to view these files.</p>
174
+
175
+    <p>Now that you've restarted Tor, it is busy picking introduction points
176
+    in the Tor network, and generating an <em>onion service
177
+    descriptor</em>. This is a signed list of introduction points along with
178
+    the service's full public key. It anonymously publishes this descriptor
179
+    to the directory servers, and other people anonymously fetch it from the
180
+    directory servers when they're trying to access your service.
181
+    </p>
182
+
183
+    <p>Try it now: paste the contents of the hostname file into your web
184
+    browser. If it works, you'll get the html page you set up in step one.
185
+    If it doesn't work, look in your logs for some hints, and keep playing
186
+    with it until it works.
187
+    </p>
188
+
189
+    <hr>
190
+    <a id="three"></a>
191
+    <h2><a class="anchor" href="#three">Step Three: More advanced tips</a></h2>
192
+    <br>
193
+
194
+    <p>If you plan to keep your service available for a long time, you might
195
+    want to make a backup copy of the <var>private_key</var> file somewhere.
196
+    </p>
197
+
198
+    <p>If you want to forward multiple virtual ports for a single onion
199
+    service, just add more <var>HiddenServicePort</var> lines.
200
+    If you want to run multiple onion services from the same Tor
201
+    client, just add another <var>HiddenServiceDir</var> line. All the following
202
+    <var>HiddenServicePort</var> lines refer to this <var>HiddenServiceDir</var> line, until
203
+    you add another <var>HiddenServiceDir</var> line:
204
+    </p>
205
+
206
+    <pre>
207
+    HiddenServiceDir /usr/local/etc/tor/hidden_service/
208
+    HiddenServicePort 80 127.0.0.1:8080
209
+
210
+    HiddenServiceDir /usr/local/etc/tor/other_hidden_service/
211
+    HiddenServicePort 6667 127.0.0.1:6667
212
+    HiddenServicePort 22 127.0.0.1:22
213
+    </pre>
214
+
215
+    <p>Onion services operators need to practice proper operational security
216
+    and system administration to maintain security. For some security
217
+    suggestions please make sure you read over Riseup's <a
218
+	href="https://help.riseup.net/en/security/network-security/tor/onionservices-best-practices">"Tor
219
+	Hidden (Onion) Services Best Practices" document</a>. Also, here are some
220
+	more anonymity issues you should keep in mind:
221
+
222
+    </p>
223
+    <ul>
224
+    <li>As mentioned above, be careful of letting your web server reveal
225
+    identifying information about you, your computer, or your location.
226
+    For example, readers can probably determine whether it's thttpd or
227
+    Apache, and learn something about your operating system.</li>
228
+    <li>If your computer isn't online all the time, your onion service
229
+    won't be either. This leaks information to an observant adversary.</li>
230
+    <li>It is generally a better idea to host onion services on a Tor client
231
+    rather than a Tor relay, since relay uptime and other properties are
232
+    publicly visible.</li>
233
+    <li>The longer an onion service is online, the higher the risk that its
234
+    location is discovered. The most prominent attacks are building a
235
+    profile of the onion service's availability and matching induced
236
+    traffic patterns.</li>
237
+    </ul>
238
+
239
+    <p>Another common issue is whether to use HTTPS on your relay or
240
+    not. Have a look at this <a
241
+    href="https://blog.torproject.org/blog/facebook-hidden-services-and-https-certs">post</a> on the Tor Blog to learn more about these issues.
242
+    </p>
243
+
244
+    <p>Finally, feel free to use the <a
245
+    href="https://lists.torproject.org/pipermail/tor-onions/">[tor-onions]
246
+    mailing list</a> to discuss the secure administration and operation of
247
+    Tor onion services.</p>
248
+
249
+  </div>
250
+  <!-- END MAINCOL -->
251
+  <div id = "sidecol">
252
+#include "side.wmi"
253
+#include "info.wmi"
254
+  </div>
255
+  <!-- END SIDECOL -->
256
+</div>
257
+<!-- END CONTENT -->
258
+#include <foot.wmi>