浏览代码

Describe vpn connection of meshes

Bob Mottram 7 年前
父节点
当前提交
7a6173bf7b
共有 2 个文件被更改,包括 73 次插入104 次删除
  1. 4
    18
      doc/EN/mesh.org
  2. 69
    86
      website/EN/mesh.html

+ 4
- 18
doc/EN/mesh.org 查看文件

@@ -242,27 +242,13 @@ sudo openvpn myclient.ovpn
242 242
 
243 243
 Where /myclient.ovpn/ comes from your VPN provider and with the password "/freedombone/".
244 244
 ** Connecting two meshes over the internet via a VPN tunnel
245
-Maybe the internet exists, but you don't care about getting any content from it and just want to use it as a way to connect mesh networks from different geographical locations together. VPN configuration, pem and stunnel files exist within the home directory. Edit the configuration with:
245
+Maybe the internet exists, but you don't care about getting any content from it and just want to use it as a way to connect mesh networks from different geographical locations together.
246 246
 
247
-#+begin_src bash
248
-nano ~/client.ovpn
249
-#+end_src
250
-
251
-Edit the IP address or domain for the mesh that you wish to connect to within the /route/ command:
247
+In your home directory on a system connected via ethernet to an internet router you'll find a file called *vpn.tar.gz*. If you want another mesh to be able to connect to yours then send them this file and get them to uncompress it into their home directory also on an internet gateway machine. If they have an external IP address or domain name for your router then they will be able to VPN connect using the *Connect Meshes* icon. They should also forward port 653 from their internet router to the mesh gateway machine.
252 248
 
253
-#+begin_src bash
254
-route [mesh IP or domain] 255.255.255.255 net_gateway
255
-#+end_src
256
-
257
-Then you can connect to the other mesh with:
258
-
259
-#+begin_src bash
260
-cd /home/fbone
261
-sudo stunnel stunnel-client.conf
262
-sudo openvpn client.ovpn
263
-#+end_src
249
+You should create a new *vpn.tar.gz* file for every other mesh which wants to be able to connect to yours. If you are prompted for a password it is 'freedombone'.
264 250
 
265
-Using the password "/freedombone/". From a deep packet inspection point of view the traffic going over the internet will just look like any other TLS connection to a server.
251
+From a deep packet inspection point of view the traffic going over the internet between mesh gateways will just look like any other TLS connection to a server.
266 252
 
267 253
 ** Mobile devices (phones, etc)
268 254
 To allow mobile devices to connect to the mesh you will need a second wifi adapter connected to your laptop/netbook/SBC. Plug in a second wifi adapter then reboot the system. The second adaptor will then create a wifi hotspot which mobile devices can connect to. The hotspot name also contains its local IP address (eg. "/mesh-192.168.1.83/").

+ 69
- 86
website/EN/mesh.html 查看文件

@@ -3,7 +3,7 @@
3 3
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4 4
 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
5 5
 <head>
6
-<!-- 2017-10-25 Wed 18:02 -->
6
+<!-- 2017-10-25 Wed 20:14 -->
7 7
 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
8 8
 <meta name="viewport" content="width=device-width, initial-scale=1" />
9 9
 <title>&lrm;</title>
@@ -274,13 +274,13 @@ for the JavaScript code in this tag.
274 274
 </colgroup>
275 275
 <tbody>
276 276
 <tr>
277
-<td class="org-left"><a href="#org29476fd">What the system can do</a></td>
277
+<td class="org-left"><a href="#orge4e1b45">What the system can do</a></td>
278 278
 <td class="org-left">-</td>
279
-<td class="org-left"><a href="#orga4afa2f">Disk Images</a></td>
279
+<td class="org-left"><a href="#org847193d">Disk Images</a></td>
280 280
 <td class="org-left">-</td>
281
-<td class="org-left"><a href="#orgebc686d">Building Disk Images</a></td>
281
+<td class="org-left"><a href="#orgc547c60">Building Disk Images</a></td>
282 282
 <td class="org-left">-</td>
283
-<td class="org-left"><a href="#orgfde1e8f">How to use it</a></td>
283
+<td class="org-left"><a href="#org51cbe99">How to use it</a></td>
284 284
 </tr>
285 285
 </tbody>
286 286
 </table>
@@ -324,9 +324,9 @@ The Freedombone mesh roughly follows MondoNet's ten social specifications:
324 324
 <li><b>Evolvable</b>: The network should be built with future development in mind. The platform should be flexible enough to support technologies, protocols and modes of usage that have not yet been developed.</li>
325 325
 </ul>
326 326
 
327
-<div id="outline-container-org29476fd" class="outline-2">
328
-<h2 id="org29476fd">What the system can do</h2>
329
-<div class="outline-text-2" id="text-org29476fd">
327
+<div id="outline-container-orge4e1b45" class="outline-2">
328
+<h2 id="orge4e1b45">What the system can do</h2>
329
+<div class="outline-text-2" id="text-orge4e1b45">
330 330
 <ul class="org-ul">
331 331
 <li>Discovery of other users on the network</li>
332 332
 <li>Text based chat, one-to-one and in groups</li>
@@ -351,13 +351,13 @@ This system should be quite scalable. Both qTox and IPFS are based upon distribu
351 351
 </div>
352 352
 </div>
353 353
 
354
-<div id="outline-container-orga4afa2f" class="outline-2">
355
-<h2 id="orga4afa2f">Disk Images</h2>
356
-<div class="outline-text-2" id="text-orga4afa2f">
354
+<div id="outline-container-org847193d" class="outline-2">
355
+<h2 id="org847193d">Disk Images</h2>
356
+<div class="outline-text-2" id="text-org847193d">
357 357
 </div>
358
-<div id="outline-container-org1fb8ee1" class="outline-3">
359
-<h3 id="org1fb8ee1">Writing many images quickly</h3>
360
-<div class="outline-text-3" id="text-org1fb8ee1">
358
+<div id="outline-container-org69782de" class="outline-3">
359
+<h3 id="org69782de">Writing many images quickly</h3>
360
+<div class="outline-text-3" id="text-org69782de">
361 361
 <p>
362 362
 There may be situations where you need to write the same disk image to multiple drives at the same time in order to maximize rate of deployment. In the instructions given below the <b>dd</b> command is used for writing to the target drive, but to write to multiple drives you can use a tool such as <a href="https://wiki.gnome.org/Apps/MultiWriter">GNOME MultiWriter</a>.
363 363
 </p>
@@ -385,9 +385,9 @@ The MultiWriter tool is also available within mesh client images, so that you ca
385 385
 </p>
386 386
 </div>
387 387
 </div>
388
-<div id="outline-container-org311eb93" class="outline-3">
389
-<h3 id="org311eb93">Client images</h3>
390
-<div class="outline-text-3" id="text-org311eb93">
388
+<div id="outline-container-orga85639a" class="outline-3">
389
+<h3 id="orga85639a">Client images</h3>
390
+<div class="outline-text-3" id="text-orga85639a">
391 391
 <div class="org-center">
392 392
 
393 393
 <div class="figure">
@@ -436,16 +436,16 @@ sudo dd <span class="org-variable-name">bs</span>=1M <span class="org-variable-n
436 436
 </div>
437 437
 </div>
438 438
 
439
-<div id="outline-container-org716b822" class="outline-3">
440
-<h3 id="org716b822">Router images</h3>
441
-<div class="outline-text-3" id="text-org716b822">
439
+<div id="outline-container-orgca566fb" class="outline-3">
440
+<h3 id="orgca566fb">Router images</h3>
441
+<div class="outline-text-3" id="text-orgca566fb">
442 442
 <p>
443 443
 Routers are intended to build network coverage for an area using small and low cost hardware. You can bolt them to walls or leave them on window ledges. They don't have any user interface and their only job is to haul network traffic across the mesh and to enable peers to find each other via running bootstrap nodes for Tox and IPFS. Copy the image to a microSD card and insert it into the router, plug in an Atheros wifi dongle and power on. That should be all you need to do.
444 444
 </p>
445 445
 </div>
446
-<div id="outline-container-org9739d76" class="outline-4">
447
-<h4 id="org9739d76">Beaglebone Black</h4>
448
-<div class="outline-text-4" id="text-org9739d76">
446
+<div id="outline-container-org9246cd8" class="outline-4">
447
+<h4 id="org9246cd8">Beaglebone Black</h4>
448
+<div class="outline-text-4" id="text-org9246cd8">
449 449
 <div class="org-center">
450 450
 
451 451
 <div class="figure">
@@ -482,9 +482,9 @@ There is still a software freedom issue with the Beaglebone Black, but it doesn'
482 482
 </div>
483 483
 </div>
484 484
 
485
-<div id="outline-container-orgebc686d" class="outline-2">
486
-<h2 id="orgebc686d">Building Disk Images</h2>
487
-<div class="outline-text-2" id="text-orgebc686d">
485
+<div id="outline-container-orgc547c60" class="outline-2">
486
+<h2 id="orgc547c60">Building Disk Images</h2>
487
+<div class="outline-text-2" id="text-orgc547c60">
488 488
 <p>
489 489
 It's better not to trust images downloaded from random places on the interwebs. Chances are that unless you are in the web of trust of the above GPG signatures then they don't mean very much to you. If you actually want something trustworthy then build the images from scratch. It will take some time. Here's how to do it.
490 490
 </p>
@@ -572,9 +572,9 @@ The resulting image can be copied to a microSD card, inserted into a Beaglebone
572 572
 </div>
573 573
 </div>
574 574
 
575
-<div id="outline-container-org62b6db3" class="outline-2">
576
-<h2 id="org62b6db3">Customisation</h2>
577
-<div class="outline-text-2" id="text-org62b6db3">
575
+<div id="outline-container-org050a1f1" class="outline-2">
576
+<h2 id="org050a1f1">Customisation</h2>
577
+<div class="outline-text-2" id="text-org050a1f1">
578 578
 <p>
579 579
 If you want to make your own specially branded version, such as for a particular event, then to change the default desktop backgrounds edit the images within <b>img/backgrounds</b> and to change the available avatars and desktop icons edit the images within <b>img/avatars</b>. Re-create disk images using the instructions shown previously.
580 580
 </p>
@@ -584,9 +584,9 @@ If you need particular <i>dconf</i> commands to alter desktop appearance or beha
584 584
 </p>
585 585
 </div>
586 586
 </div>
587
-<div id="outline-container-orgfde1e8f" class="outline-2">
588
-<h2 id="orgfde1e8f">How to use it</h2>
589
-<div class="outline-text-2" id="text-orgfde1e8f">
587
+<div id="outline-container-org51cbe99" class="outline-2">
588
+<h2 id="org51cbe99">How to use it</h2>
589
+<div class="outline-text-2" id="text-org51cbe99">
590 590
 <p>
591 591
 When you first boot from the USB drive the system will create some encryption keys, assign a unique network address to the system and then reboot itself. When that's done you should see a prompt asking for a username. This username just makes it easy for others to initially find you on the mesh and will appear in the list of users.
592 592
 </p>
@@ -596,9 +596,9 @@ After a minute or two if you are within wifi range and there is at least one oth
596 596
 </p>
597 597
 </div>
598 598
 
599
-<div id="outline-container-orgbf32895" class="outline-3">
600
-<h3 id="orgbf32895">Boot trouble</h3>
601
-<div class="outline-text-3" id="text-orgbf32895">
599
+<div id="outline-container-org74fc661" class="outline-3">
600
+<h3 id="org74fc661">Boot trouble</h3>
601
+<div class="outline-text-3" id="text-org74fc661">
602 602
 <p>
603 603
 If the system doesn't boot and reports an error which includes <b>/dev/mapper/loop0p1</b> then reboot with <b>Ctrl-Alt-Del</b> and when you see the grub menu press <b>e</b> and manually change <b>/dev/mapper/loop0p1</b> to <b>/dev/sdb1</b>, then press <b>Ctrl-x</b>. If that doesn't work then reboot and try <b>/dev/sdc1</b> instead.
604 604
 </p>
@@ -608,9 +608,9 @@ After the system has booted successfully the problem should resolve itself on su
608 608
 </p>
609 609
 </div>
610 610
 </div>
611
-<div id="outline-container-org7608b0d" class="outline-3">
612
-<h3 id="org7608b0d">Set the Date</h3>
613
-<div class="outline-text-3" id="text-org7608b0d">
611
+<div id="outline-container-org2a54568" class="outline-3">
612
+<h3 id="org2a54568">Set the Date</h3>
613
+<div class="outline-text-3" id="text-org2a54568">
614 614
 <p>
615 615
 On the ordinary internet the date and time of your system would be set automatically via NTP. But this is not the internet and so you will need to manually ensure that your date and time settings are correct. You might need to periodically do this if your clock drifts. It's not essential that the time on your system be highly accurate, but if it drifts too far or goes back to epoch then things could become a little confusing in regard to the order of blog posts.
616 616
 </p>
@@ -620,9 +620,9 @@ On the ordinary internet the date and time of your system would be set automatic
620 620
 </p>
621 621
 </div>
622 622
 </div>
623
-<div id="outline-container-org55bf854" class="outline-3">
624
-<h3 id="org55bf854">Check network status</h3>
625
-<div class="outline-text-3" id="text-org55bf854">
623
+<div id="outline-container-org405421b" class="outline-3">
624
+<h3 id="org405421b">Check network status</h3>
625
+<div class="outline-text-3" id="text-org405421b">
626 626
 <p>
627 627
 Unlike with ordinary wifi, on the mesh you don't get a signal strength icon and so it's not simple to see if you have a good connection.
628 628
 </p>
@@ -645,9 +645,9 @@ When you are finished close the window and then select the <i>Network Restart</i
645 645
 </p>
646 646
 </div>
647 647
 </div>
648
-<div id="outline-container-orgea3ec04" class="outline-3">
649
-<h3 id="orgea3ec04">Connecting to the internet</h3>
650
-<div class="outline-text-3" id="text-orgea3ec04">
648
+<div id="outline-container-org00f72c2" class="outline-3">
649
+<h3 id="org00f72c2">Connecting to the internet</h3>
650
+<div class="outline-text-3" id="text-org00f72c2">
651 651
 <p>
652 652
 If you need to be able to access the internet from the mesh then connect one of the peers to an internet router using an ethernet cable, then reboot it. Other peers in the mesh, including any attached mobile devices, will then be able to access the internet using the ethernet attached peer as a gateway. <a href="https://en.wikipedia.org/wiki/Freifunk">Freifunk</a> works in a similar way.
653 653
 </p>
@@ -670,47 +670,30 @@ Where <i>myclient.ovpn</i> comes from your VPN provider and with the password "<
670 670
 </p>
671 671
 </div>
672 672
 </div>
673
-<div id="outline-container-org9328f03" class="outline-3">
674
-<h3 id="org9328f03">Connecting two meshes over the internet via a VPN tunnel</h3>
675
-<div class="outline-text-3" id="text-org9328f03">
673
+<div id="outline-container-org243a603" class="outline-3">
674
+<h3 id="org243a603">Connecting two meshes over the internet via a VPN tunnel</h3>
675
+<div class="outline-text-3" id="text-org243a603">
676 676
 <p>
677
-Maybe the internet exists, but you don't care about getting any content from it and just want to use it as a way to connect mesh networks from different geographical locations together. VPN configuration, pem and stunnel files exist within the home directory. Edit the configuration with:
677
+Maybe the internet exists, but you don't care about getting any content from it and just want to use it as a way to connect mesh networks from different geographical locations together.
678 678
 </p>
679 679
 
680
-<div class="org-src-container">
681
-<pre class="src src-bash">nano ~/client.ovpn
682
-</pre>
683
-</div>
684
-
685 680
 <p>
686
-Edit the IP address or domain for the mesh that you wish to connect to within the <i>route</i> command:
681
+In your home directory on a system connected via ethernet to an internet router you'll find a file called <b>vpn.tar.gz</b>. If you want another mesh to be able to connect to yours then send them this file and get them to uncompress it into their home directory also on an internet gateway machine. If they have an external IP address or domain name for your router then they will be able to VPN connect using the <b>Connect Meshes</b> icon. They should also forward port 653 from their internet router to the mesh gateway machine.
687 682
 </p>
688 683
 
689
-<div class="org-src-container">
690
-<pre class="src src-bash">route [mesh IP or domain] 255.255.255.255 net_gateway
691
-</pre>
692
-</div>
693
-
694 684
 <p>
695
-Then you can connect to the other mesh with:
685
+You should create a new <b>vpn.tar.gz</b> file for every other mesh which wants to be able to connect to yours. If you are prompted for a password it is 'freedombone'.
696 686
 </p>
697 687
 
698
-<div class="org-src-container">
699
-<pre class="src src-bash"><span class="org-builtin">cd</span> /home/fbone
700
-sudo stunnel stunnel-client.conf
701
-sudo openvpn client.ovpn
702
-</pre>
703
-</div>
704
-
705 688
 <p>
706
-Using the password "<i>freedombone</i>". From a deep packet inspection point of view the traffic going over the internet will just look like any other TLS connection to a server.
689
+From a deep packet inspection point of view the traffic going over the internet between mesh gateways will just look like any other TLS connection to a server.
707 690
 </p>
708 691
 </div>
709 692
 </div>
710 693
 
711
-<div id="outline-container-org000aae6" class="outline-3">
712
-<h3 id="org000aae6">Mobile devices (phones, etc)</h3>
713
-<div class="outline-text-3" id="text-org000aae6">
694
+<div id="outline-container-org41a1c0f" class="outline-3">
695
+<h3 id="org41a1c0f">Mobile devices (phones, etc)</h3>
696
+<div class="outline-text-3" id="text-org41a1c0f">
714 697
 <p>
715 698
 To allow mobile devices to connect to the mesh you will need a second wifi adapter connected to your laptop/netbook/SBC. Plug in a second wifi adapter then reboot the system. The second adaptor will then create a wifi hotspot which mobile devices can connect to. The hotspot name also contains its local IP address (eg. "<i>mesh-192.168.1.83</i>").
716 699
 </p>
@@ -732,9 +715,9 @@ On some android devices you may need to move the downloaded APK file from the <b
732 715
 </p>
733 716
 </div>
734 717
 </div>
735
-<div id="outline-container-orgb234fc6" class="outline-3">
736
-<h3 id="orgb234fc6">Chat System</h3>
737
-<div class="outline-text-3" id="text-orgb234fc6">
718
+<div id="outline-container-org85be85b" class="outline-3">
719
+<h3 id="org85be85b">Chat System</h3>
720
+<div class="outline-text-3" id="text-org85be85b">
738 721
 <p>
739 722
 Ensure that you're within wifi range of at least one other mesh peer (could be a router or client) and then you should see that the <i>Chat</i> and <i>Other Users</i> icons appear. Select the users icon and you should see a list of users on the mesh. Select the <i>Chat</i> icon and once you are connected you should see the status light turn green. If after a few minutes you don't get the green status light then try closing and re-opening the Tox chat application. Select the plus button to add a friend and then copy and paste in a Tox ID from the users list.
740 723
 </p>
@@ -793,9 +776,9 @@ At present video doesn't work reliably, but text and voice chat do work well.
793 776
 </div>
794 777
 </div>
795 778
 
796
-<div id="outline-container-org732a371" class="outline-3">
797
-<h3 id="org732a371">Collaborative document editing</h3>
798
-<div class="outline-text-3" id="text-org732a371">
779
+<div id="outline-container-orgec49c33" class="outline-3">
780
+<h3 id="orgec49c33">Collaborative document editing</h3>
781
+<div class="outline-text-3" id="text-orgec49c33">
799 782
 <p>
800 783
 The mesh system includes the ability to collaboratively edit various sorts of documents using CryptPad. CryptPad is an almost peer-to-peer system in that it is designed for a client/server environment but that the server aspect of it is very minimal and limited to orchestrating the connected clients. With CryptPad installed on each mesh peer it effectively enables peer-to-peer collaborative editing. Documents are ephemeral and forgotten unless they're exported or copy-pasted to permanent storage.
801 784
 </p>
@@ -826,9 +809,9 @@ If you have the chat system running you can then copy and paste the URL for your
826 809
 </div>
827 810
 </div>
828 811
 
829
-<div id="outline-container-org5d227c5" class="outline-3">
830
-<h3 id="org5d227c5">Social Network</h3>
831
-<div class="outline-text-3" id="text-org5d227c5">
812
+<div id="outline-container-org1c268a0" class="outline-3">
813
+<h3 id="org1c268a0">Social Network</h3>
814
+<div class="outline-text-3" id="text-org1c268a0">
832 815
 <p>
833 816
 Patchwork is available as a social networking system for the mesh. Like all social network systems it has a stream of posts and you can follow or unfollow other users. You can also send private messages to other users with end-to-end encryption.
834 817
 </p>
@@ -863,9 +846,9 @@ The Secure Scuttlebutt protocol which Patchwork is based upon is intended to be
863 846
 </div>
864 847
 </div>
865 848
 
866
-<div id="outline-container-orgf471f2b" class="outline-3">
867
-<h3 id="orgf471f2b">Sharing Files</h3>
868
-<div class="outline-text-3" id="text-orgf471f2b">
849
+<div id="outline-container-org3b84f9d" class="outline-3">
850
+<h3 id="org3b84f9d">Sharing Files</h3>
851
+<div class="outline-text-3" id="text-org3b84f9d">
869 852
 <p>
870 853
 You can make files publicly available on the network simply by dragging and dropping them into the <i>Public</i> folder on the desktop. To view the files belonging to another user select the desktop icon called <i>Visit a site</i> and enter the username or Tox ID of the other user.
871 854
 </p>
@@ -880,9 +863,9 @@ You can make files publicly available on the network simply by dragging and drop
880 863
 </div>
881 864
 </div>
882 865
 
883
-<div id="outline-container-org15f5eea" class="outline-3">
884
-<h3 id="org15f5eea">Blogging</h3>
885
-<div class="outline-text-3" id="text-org15f5eea">
866
+<div id="outline-container-org1f0a6f4" class="outline-3">
867
+<h3 id="org1f0a6f4">Blogging</h3>
868
+<div class="outline-text-3" id="text-org1f0a6f4">
886 869
 <p>
887 870
 To create a blog post select the <i>Blog</i> icon on the desktop and then use the up and down cursor keys, space bar and enter key to add a new entry. Edit the title of the entry and add your text. You can also include photos if you wish - just copy them to the <b>CreateBlog/content/images</b> directory and then link to them as shown.
888 871
 </p>