diff options
Diffstat (limited to 'tutorial-debian9.html.j2')
-rw-r--r-- | tutorial-debian9.html.j2 | 156 |
1 files changed, 89 insertions, 67 deletions
diff --git a/tutorial-debian9.html.j2 b/tutorial-debian9.html.j2 index 55db5026..4ea53d91 100644 --- a/tutorial-debian9.html.j2 +++ b/tutorial-debian9.html.j2 | |||
@@ -135,51 +135,59 @@ hosts: files mdns4_minimal [NOTFOUND=return] gns [NOTFOUND=return] dns | |||
135 | <h3>{{ _("Configuration") }}</h3> | 135 | <h3>{{ _("Configuration") }}</h3> |
136 | Congratulations! GNUnet is now installed! Before we start it we need to create a configuration file. By default GNUnet looks in our home directory for the file `~/.gnunet/gnunet.conf`. We can start with an empty file for now: | 136 | Congratulations! GNUnet is now installed! Before we start it we need to create a configuration file. By default GNUnet looks in our home directory for the file `~/.gnunet/gnunet.conf`. We can start with an empty file for now: |
137 | 137 | ||
138 | <p><code> | 138 | <p> |
139 | $ touch ~/.config/gnunet.conf | 139 | <code> |
140 | </p></code> | 140 | $ touch ~/.config/gnunet.conf |
141 | </code> | ||
142 | </p> | ||
141 | 143 | ||
142 | <p>Now we can start it with the command line tool `gnunet-arm` (Automatic Restart Manager).</p> | 144 | <p>Now we can start it with the command line tool `gnunet-arm` (Automatic Restart Manager).</p> |
143 | 145 | ||
144 | <p><code> | 146 | <p> |
145 | $ gnunet-arm -s | 147 | <code> |
146 | </p></code> | 148 | $ gnunet-arm -s |
149 | </code> | ||
150 | </p> | ||
147 | 151 | ||
148 | <p>It starts the default GNUnet services. We can list them with the `-I` option:</p> | 152 | <p>It starts the default GNUnet services. We can list them with the `-I` option:</p> |
149 | 153 | ||
150 | <p><code> | 154 | <p> |
151 | $ gnunet-arm -I<br> | 155 | <code> |
152 | Running services:<br> | 156 | $ gnunet-arm -I<br> |
153 | ats (gnunet-service-ats)<br> | 157 | Running services:<br> |
154 | revocation (gnunet-service-revocation)<br> | 158 | ats (gnunet-service-ats)<br> |
155 | set (gnunet-service-set)<br> | 159 | revocation (gnunet-service-revocation)<br> |
156 | nat (gnunet-service-nat)<br> | 160 | set (gnunet-service-set)<br> |
157 | transport (gnunet-service-transport)<br> | 161 | nat (gnunet-service-nat)<br> |
158 | peerstore (gnunet-service-peerstore)<br> | 162 | transport (gnunet-service-transport)<br> |
159 | hostlist (gnunet-daemon-hostlist)<br> | 163 | peerstore (gnunet-service-peerstore)<br> |
160 | identity (gnunet-service-identity)<br> | 164 | hostlist (gnunet-daemon-hostlist)<br> |
161 | namecache (gnunet-service-namecache)<br> | 165 | identity (gnunet-service-identity)<br> |
162 | peerinfo (gnunet-service-peerinfo)<br> | 166 | namecache (gnunet-service-namecache)<br> |
163 | datastore (gnunet-service-datastore)<br> | 167 | peerinfo (gnunet-service-peerinfo)<br> |
164 | zonemaster (gnunet-service-zonemaster)<br> | 168 | datastore (gnunet-service-datastore)<br> |
165 | zonemaster-monitor (gnunet-service-zonemaster-monitor)<br> | 169 | zonemaster (gnunet-service-zonemaster)<br> |
166 | nse (gnunet-service-nse)<br> | 170 | zonemaster-monitor (gnunet-service-zonemaster-monitor)<br> |
167 | cadet (gnunet-service-cadet)<br> | 171 | nse (gnunet-service-nse)<br> |
168 | dht (gnunet-service-dht)<br> | 172 | cadet (gnunet-service-cadet)<br> |
169 | core (gnunet-service-core)<br> | 173 | dht (gnunet-service-dht)<br> |
170 | gns (gnunet-service-gns)<br> | 174 | core (gnunet-service-core)<br> |
171 | statistics (gnunet-service-statistics)<br> | 175 | gns (gnunet-service-gns)<br> |
172 | topology (gnunet-daemon-topology)<br> | 176 | statistics (gnunet-service-statistics)<br> |
173 | fs (gnunet-service-fs)<br> | 177 | topology (gnunet-daemon-topology)<br> |
174 | namestore (gnunet-service-namestore)<br> | 178 | fs (gnunet-service-fs)<br> |
175 | vpn (gnunet-service-vpn) | 179 | namestore (gnunet-service-namestore)<br> |
176 | </p></code> | 180 | vpn (gnunet-service-vpn) |
181 | </code> | ||
182 | </p> | ||
177 | 183 | ||
178 | <p>For stopping GNUnet again we can use the `-e` option.</p> | 184 | <p>For stopping GNUnet again we can use the `-e` option.</p> |
179 | 185 | ||
180 | <p><code> | 186 | <p> |
181 | $ gnunet-arm -e | 187 | <code> |
182 | </p></code> | 188 | $ gnunet-arm -e |
189 | </code> | ||
190 | </p> | ||
183 | 191 | ||
184 | <h3>{{ _("Make sure it works") }}</h3> | 192 | <h3>{{ _("Make sure it works") }}</h3> |
185 | 193 | ||
@@ -205,19 +213,23 @@ $ gnunet-arm -e | |||
205 | <p>We can choose any file and describe it with meaningful keywords (using the | 213 | <p>We can choose any file and describe it with meaningful keywords (using the |
206 | `-k` command line option).</p> | 214 | `-k` command line option).</p> |
207 | 215 | ||
208 | <p><code> | 216 | <p> |
209 | $ gnunet-publish -k commons -k state ostrom.pdf<br> | 217 | <code> |
210 | Publishing `/home/myself/ostrom.pdf' done.<br> | 218 | $ gnunet-publish -k commons -k state ostrom.pdf<br> |
211 | URI is `gnunet://fs/chk/M57SXDJ72EWS25CT6307KKJ8K0GCNSPTAZ649NA1NS10MJB4A1GZ9EN4Y02KST9VA5BHE8B335RPXQVBWVZ587Y83WQ7J3DHMBX30Q8.DHNGBN4CB2DBX1QRZ1R0B1Q18WTEAK4R94S9D57C9JMJJ3H7SSQDCV4D1218C4S2VP085AMQQSMG18FCP6NQMZQZJ91XR5NBX7YF0V0.42197237'. | 219 | Publishing `/home/myself/ostrom.pdf' done.<br> |
212 | </p></code> | 220 | URI is `gnunet://fs/chk/M57SXDJ72EWS25CT6307KKJ8K0GCNSPTAZ649NA1NS10MJB4A1GZ9EN4Y02KST9VA5BHE8B335RPXQVBWVZ587Y83WQ7J3DHMBX30Q8.DHNGBN4CB2DBX1QRZ1R0B1Q18WTEAK4R94S9D57C9JMJJ3H7SSQDCV4D1218C4S2VP085AMQQSMG18FCP6NQMZQZJ91XR5NBX7YF0V0.42197237'. |
221 | </code> | ||
222 | </p> | ||
213 | 223 | ||
214 | <p>Finding the file by keyword works with `gnunet-search`.</p> | 224 | <p>Finding the file by keyword works with `gnunet-search`.</p> |
215 | 225 | ||
216 | <p><code> | 226 | <p> |
217 | $ gnunet-search commons<br> | 227 | <code> |
218 | #1:<br> | 228 | $ gnunet-search commons<br> |
219 | gnunet-download -o "ostrom.pdf" gnunet://fs/chk/M57SXDJ72EWS25CT6307KKJ8K0GCNSPTAZ649NA1NS10MJB4A1GZ9EN4Y02KST9VA5BHE8B335RPXQVBWVZ587Y83WQ7J3DHMBX30Q8.DHNGBN4CB2DBX1QRZ1R0B1Q18WTEAK4R94S9D57C9JMJJ3H7SSQDCV4D1218C4S2VP085AMQQSMG18FCP6NQMZQZJ91XR5NBX7YF0V0.42197237 | 229 | #1:<br> |
220 | </p></code> | 230 | gnunet-download -o "ostrom.pdf" gnunet://fs/chk/M57SXDJ72EWS25CT6307KKJ8K0GCNSPTAZ649NA1NS10MJB4A1GZ9EN4Y02KST9VA5BHE8B335RPXQVBWVZ587Y83WQ7J3DHMBX30Q8.DHNGBN4CB2DBX1QRZ1R0B1Q18WTEAK4R94S9D57C9JMJJ3H7SSQDCV4D1218C4S2VP085AMQQSMG18FCP6NQMZQZJ91XR5NBX7YF0V0.42197237 |
231 | </code> | ||
232 | </p> | ||
221 | 233 | ||
222 | <p>It gives us the command line call to download the file (and store it as | 234 | <p>It gives us the command line call to download the file (and store it as |
223 | ostrom.pdf)!</p> | 235 | ostrom.pdf)!</p> |
@@ -229,22 +241,28 @@ ostrom.pdf)!</p> | |||
229 | another machine connect to this port and chat or transfer data. First we need | 241 | another machine connect to this port and chat or transfer data. First we need |
230 | our *peer ID* of the GNUnet peer opening the port.</p> | 242 | our *peer ID* of the GNUnet peer opening the port.</p> |
231 | 243 | ||
232 | <p><code> | 244 | <p> |
233 | $ gnunet-peerinfo -s<br> | 245 | <code> |
234 | I am peer `P4T5GHS1PCZ06R82D3KW8Z8J1113BQZWAWGYHTZ8G1ZXMWXQGAVG'. | 246 | $ gnunet-peerinfo -s<br> |
235 | </p></code> | 247 | I am peer `P4T5GHS1PCZ06R82D3KW8Z8J1113BQZWAWGYHTZ8G1ZXMWXQGAVG'. |
248 | </code> | ||
249 | </p> | ||
236 | 250 | ||
237 | <p>Now we open the port (it can be any string!):</p> | 251 | <p>Now we open the port (it can be any string!):</p> |
238 | 252 | ||
239 | <p><code> | 253 | <p> |
240 | $ gnunet-cadet -o my-secret-port | 254 | <code> |
241 | </p></code> | 255 | $ gnunet-cadet -o my-secret-port |
256 | </code> | ||
257 | </p> | ||
242 | 258 | ||
243 | <p>On the other machine we can connect using the peer ID and the port and start chatting!</p> | 259 | <p>On the other machine we can connect using the peer ID and the port and start chatting!</p> |
244 | 260 | ||
245 | <p><code> | 261 | <p> |
246 | $ gnunet-cadet P4T5GHS1PCZ06R82D3KW8Z8J1113BQZWAWGYHTZ8G1ZXMWXQGAVG my-secret-port | 262 | <code> |
247 | </p></code> | 263 | $ gnunet-cadet P4T5GHS1PCZ06R82D3KW8Z8J1113BQZWAWGYHTZ8G1ZXMWXQGAVG my-secret-port |
264 | </code> | ||
265 | </p> | ||
248 | 266 | ||
249 | 267 | ||
250 | <h4>{{ _("Name resolution using GNS on the command line") }}</h4> | 268 | <h4>{{ _("Name resolution using GNS on the command line") }}</h4> |
@@ -254,16 +272,20 @@ equivalent to a zone in DNS. We'll call it "myself" and create it using the | |||
254 | `gnunet-identity` command line tool. Instead of "myself" you can surely use your | 272 | `gnunet-identity` command line tool. Instead of "myself" you can surely use your |
255 | nick or any other name. </p> | 273 | nick or any other name. </p> |
256 | 274 | ||
257 | <p><code> | 275 | <p> |
258 | $ gnunet-identity -C myself | 276 | <code> |
259 | </code></p> | 277 | $ gnunet-identity -C myself |
278 | </code> | ||
279 | </p> | ||
260 | 280 | ||
261 | <p>We can check if it worked using the same tool. We expect the name of our identity and the corresponding public key to be displayed.</p> | 281 | <p>We can check if it worked using the same tool. We expect the name of our identity and the corresponding public key to be displayed.</p> |
262 | 282 | ||
263 | <p><code> | 283 | <p> |
264 | $ gnunet-identity -d<br> | 284 | <code> |
265 | myself - HWTYD3P5D77JVFNVMZ1M5T10V4SZYNMY3PCGQCSVENKD6ZCRKPMG | 285 | $ gnunet-identity -d<br> |
266 | </code></p> | 286 | myself - HWTYD3P5D77JVFNVMZ1M5T10V4SZYNMY3PCGQCSVENKD6ZCRKPMG |
287 | </code> | ||
288 | </p> | ||
267 | 289 | ||
268 | <p>Now we add a public `A` record to our zone. It has the name "ccc", a value | 290 | <p>Now we add a public `A` record to our zone. It has the name "ccc", a value |
269 | of "195.54.164.39" and it expires after one day.</p> | 291 | of "195.54.164.39" and it expires after one day.</p> |
@@ -360,7 +382,7 @@ $ sudo groupdel gnunet<br> | |||
360 | $ sudo groupdel gnunetdns<br> | 382 | $ sudo groupdel gnunetdns<br> |
361 | $ sudo mv /etc/nsswitch.conf.original /etc/nsswitch.conf<br> | 383 | $ sudo mv /etc/nsswitch.conf.original /etc/nsswitch.conf<br> |
362 | $ sudo rm /lib/$(uname -m)-linux-gnu/libnss_gns.so.2 | 384 | $ sudo rm /lib/$(uname -m)-linux-gnu/libnss_gns.so.2 |
363 | </p></code> | 385 | </code></p> |
364 | 386 | ||
365 | 387 | ||
366 | <h3>{{ _("Appendix A: Optional GNUnet features") }}</h3> | 388 | <h3>{{ _("Appendix A: Optional GNUnet features") }}</h3> |
@@ -378,7 +400,7 @@ computer.</p> | |||
378 | 400 | ||
379 | <p><code> | 401 | <p><code> |
380 | $ gnunet-peerinfo -gn | 402 | $ gnunet-peerinfo -gn |
381 | </p></code> | 403 | </code></p> |
382 | 404 | ||
383 | <p>We can now pass this string to our friends "out of band" (using whatever | 405 | <p>We can now pass this string to our friends "out of band" (using whatever |
384 | existing chat or messaging technology). If the string contains some private IP | 406 | existing chat or messaging technology). If the string contains some private IP |
@@ -389,7 +411,7 @@ this:</p> | |||
389 | 411 | ||
390 | <p><code> | 412 | <p><code> |
391 | gnunet-peerinfo -p <string> | 413 | gnunet-peerinfo -p <string> |
392 | </p></code> | 414 | </code></p> |
393 | 415 | ||
394 | <p>Now our GNUnet nodes can attempt reaching each other directly. This may | 416 | <p>Now our GNUnet nodes can attempt reaching each other directly. This may |
395 | still fail due to NAT traversal issues.</p> | 417 | still fail due to NAT traversal issues.</p> |
@@ -402,7 +424,7 @@ running GNUnet.</p> | |||
402 | 424 | ||
403 | <p><code> | 425 | <p><code> |
404 | $ cp /etc/nsswitch.conf.original /etc/nsswitch.conf | 426 | $ cp /etc/nsswitch.conf.original /etc/nsswitch.conf |
405 | </p></code>--> | 427 | </code></p>--> |
406 | 428 | ||
407 | </div> | 429 | </div> |
408 | {% endblock body_content %} | 430 | {% endblock body_content %} |