Syncthing instructions

This commit is contained in:
Bob Mottram 2016-04-10 18:38:04 +01:00
parent 16760255e4
commit 167acecca9
2 changed files with 166 additions and 72 deletions

View File

@ -109,13 +109,11 @@ In another terminal log into Freedombone:
ssh username@domainname -p 2222
#+END_SRC
[[file:images/controlpanel/control_panel_user.jpg]]
Then select *File Synchronization*.
[[file:images/controlpanel/control_panel_file_sync.jpg]]
Select *Show device ID* and copy the long string of letters and numbers shown (usually select then CTRL+c).
Select *Show device ID* and copy the long string of letters and numbers shown, using the shift key then select the text followed by right click then select copy.
Open a non-Tor browser and enter *http://127.0.0.1:8384* as the URL. You should now see the minimalistic user interface. Under *Remote Devices* select *Add Remote Device*. In the *Device ID* field paste the string you just copied (CTRL+v). The Device name can be anything. Under *Share Folders with Device* check *default* (or whatever folder you created on your local machine), then save.
@ -127,9 +125,15 @@ Install Syncthing and Connectbot from F-droid.
Set up Connectbot to log into Freedombone.
Open Syncthing, select the menu and then press on *Device ID*. It will be copied to the clipboard.
Select *File Synchronization*.
Select *Devices* then *Add*.
Select *Show device ID* and copy the long string of letters by pressing anywhere on the screen, selecting the *menu* then *copy* and then selecting the ID string. This is very tricky on a small screen, so expect to fail multiple times before you succeed in copying the text.
Open Syncthing and select the devices tab. Press on *+* and then paste the device ID with a long press followed by *Paste*. You may need to remove any stray characters which were copied during the previous haphazard selection process. Add a name, which can be anything.
Now select the menu (top left or menu button) and then press on *Device ID*. It will be copied to the clipboard. Go back to Connectbot and from the control panel select *File Synchronization* followed by *Add an ID*. You can then paste in the ID with a long press, and optionally add a description for the device. When that's done you can disconnect from Connectbot.
Now wait for a few minutes or more. Eventually you should receive some notifications (swipe down from the top to see them) which will allow you to confirm the connection. You will be asked to select a location where files will be stored.
* Play Music
** With the DLNA service
An easy way to play music on any mobile device in your home is to use the DLNA service. Copy your music into a directory called "/Music/" on a USB thumb drive and then insert it into from socket on the Beaglebone.

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2016-04-10 Sun 11:07 -->
<!-- 2016-04-10 Sun 18:37 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title></title>
@ -339,13 +339,103 @@ Subsequently even if dynamic DNS isn't working you may still be able to administ
Freedombone provides Syncthing shared directories for each user on the system, plus a single shared directory for all users. The expected most common scenario here is that of a family in which members may not want to share <i>all of their files</i> with each other, but might want to share some in a common pool (eg. birthday photos). You can also easily share between different servers.
</p>
</div>
<div id="outline-container-orgheadline11" class="outline-3">
<h3 id="orgheadline11">On a laptop</h3>
<div class="outline-text-3" id="text-orgheadline11">
<p>
Install syncthing:
</p>
<div class="org-src-container">
<pre class="src src-bash">curl -s https://syncthing.net/release-key.txt | sudo apt-key add -
<span class="org-builtin">echo</span> <span class="org-string">"deb http://apt.syncthing.net/ syncthing release"</span> | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt-get update
sudo apt-get install syncthing
</pre>
</div>
<p>
Add syncthing to your startup applications, so that it begins running when your system starts. Then either restart your system or run the command "syncthing" from a terminal.
</p>
<p>
In another terminal log into Freedombone:
</p>
<div class="org-src-container">
<pre class="src src-bash">ssh username@domainname -p 2222
</pre>
</div>
<p>
Then select <b>File Synchronization</b>.
</p>
<div class="figure">
<p><img src="images/controlpanel/control_panel_file_sync.jpg" alt="control_panel_file_sync.jpg" />
</p>
</div>
<p>
Select <b>Show device ID</b> and copy the long string of letters and numbers shown, using the shift key then select the text followed by right click then select copy.
</p>
<p>
Open a non-Tor browser and enter <b><a href="http://127.0.0.1:8384/">http://127.0.0.1:8384/</a></b> as the URL. You should now see the minimalistic user interface. Under <b>Remote Devices</b> select <b>Add Remote Device</b>. In the <b>Device ID</b> field paste the string you just copied (CTRL+v). The Device name can be anything. Under <b>Share Folders with Device</b> check <b>default</b> (or whatever folder you created on your local machine), then save.
</p>
<p>
From the top menu select <b>Actions</b> and then <b>Show ID</b>, then copy the ID string (usually select then CTRL+c). Go back to the terminal control panel menu and select <b>Add an ID</b> then paste what you just copied (CTRL+v). Optionally you can also provide a description so that you later can know what that string corresponds to.
</p>
<p>
Now wait for a few minutes. Eventually you will see a message appear within the browser asking if you want to add a new device (the Freedombone system). Say yes to that, and specify <b>~/Sync</b> as the directory to synchronize to. You can now copy files into your <b>~/Sync</b> directory and they will automatically be synced to the server.
</p>
</div>
</div>
<div id="outline-container-orgheadline12" class="outline-3">
<h3 id="orgheadline12">On Android</h3>
<div class="outline-text-3" id="text-orgheadline12">
<p>
Install Syncthing and Connectbot from F-droid.
</p>
<p>
Set up Connectbot to log into Freedombone.
</p>
<p>
Select <b>File Synchronization</b>.
</p>
<p>
Select <b>Show device ID</b> and copy the long string of letters by pressing anywhere on the screen, selecting the <b>menu</b> then <b>copy</b> and then selecting the ID string. This is very tricky on a small screen, so expect to fail multiple times before you succeed in copying the text.
</p>
<p>
Open Syncthing and select the devices tab. Press on <b>+</b> and then paste the device ID with a long press followed by <b>Paste</b>. You may need to remove any stray characters which were copied during the previous haphazard selection process. Add a name, which can be anything.
</p>
<p>
Now select the menu (top left or menu button) and then press on <b>Device ID</b>. It will be copied to the clipboard. Go back to Connectbot and from the control panel select <b>File Synchronization</b> followed by <b>Add an ID</b>. You can then paste in the ID with a long press, and optionally add a description for the device. When that's done you can disconnect from Connectbot.
</p>
<p>
Now wait for a few minutes or more. Eventually you should receive some notifications (swipe down from the top to see them) which will allow you to confirm the connection. You will be asked to select a location where files will be stored.
</p>
</div>
</div>
</div>
<div id="outline-container-orgheadline5" class="outline-2">
<h2 id="orgheadline5">Play Music</h2>
<div class="outline-text-2" id="text-orgheadline5">
</div><div id="outline-container-orgheadline11" class="outline-3">
<h3 id="orgheadline11">With the DLNA service</h3>
<div class="outline-text-3" id="text-orgheadline11">
</div><div id="outline-container-orgheadline13" class="outline-3">
<h3 id="orgheadline13">With the DLNA service</h3>
<div class="outline-text-3" id="text-orgheadline13">
<p>
An easy way to play music on any mobile device in your home is to use the DLNA service. Copy your music into a directory called "<i>Music</i>" on a USB thumb drive and then insert it into from socket on the Beaglebone.
</p>
@ -420,17 +510,17 @@ GNU Social has a clutter-free mobile user interface which can be accessed via a
<div id="outline-container-orgheadline7" class="outline-2">
<h2 id="orgheadline7">Social Network</h2>
<div class="outline-text-2" id="text-orgheadline7">
</div><div id="outline-container-orgheadline12" class="outline-3">
<h3 id="orgheadline12">Domains</h3>
<div class="outline-text-3" id="text-orgheadline12">
</div><div id="outline-container-orgheadline14" class="outline-3">
<h3 id="orgheadline14">Domains</h3>
<div class="outline-text-3" id="text-orgheadline14">
<p>
Both Hubzilla and GNU Social try to obtain certificates automatically at the time of installation via Let's Encrypt. This will likely mean that in order for this to work you'll need to have obtained at least one "official" domain via a domain selling service, since Let's Encrypt mostly doesn't seem to work with free subdomains from sites such as freeDNS.
</p>
</div>
</div>
<div id="outline-container-orgheadline13" class="outline-3">
<h3 id="orgheadline13">Initial install</h3>
<div class="outline-text-3" id="text-orgheadline13">
<div id="outline-container-orgheadline15" class="outline-3">
<h3 id="orgheadline15">Initial install</h3>
<div class="outline-text-3" id="text-orgheadline15">
<p>
On first visiting your Hubzilla site you'll see the login screen. The first thing you need to do is <b>register</b> a new user. The first user on the system then becomes its administrator.
</p>
@ -447,16 +537,16 @@ On first visiting your Hubzilla site you'll see the login screen. The first thin
<div id="outline-container-orgheadline8" class="outline-2">
<h2 id="orgheadline8">Chat Services</h2>
<div class="outline-text-2" id="text-orgheadline8">
</div><div id="outline-container-orgheadline14" class="outline-3">
<h3 id="orgheadline14">IRC</h3>
<div class="outline-text-3" id="text-orgheadline14">
</div><div id="outline-container-orgheadline16" class="outline-3">
<h3 id="orgheadline16">IRC</h3>
<div class="outline-text-3" id="text-orgheadline16">
<p>
IRC is useful for multi-user chat. The classic use case is for software development where many engineers might need to coordinate their activities, but it's also useful for meetings, parties and general socialising.
</p>
</div>
<div id="outline-container-orgheadline15" class="outline-4">
<h4 id="orgheadline15">Irssi</h4>
<div class="outline-text-4" id="text-orgheadline15">
<div id="outline-container-orgheadline17" class="outline-4">
<h4 id="orgheadline17">Irssi</h4>
<div class="outline-text-4" id="text-orgheadline17">
<p>
The easiest way to use irssi is to connect to your system, like this:
</p>
@ -472,9 +562,9 @@ Then select <b>IRC</b> from the menu. Irssi is automatically set up to connect t
</p>
</div>
</div>
<div id="outline-container-orgheadline16" class="outline-4">
<h4 id="orgheadline16">XChat</h4>
<div class="outline-text-4" id="text-orgheadline16">
<div id="outline-container-orgheadline18" class="outline-4">
<h4 id="orgheadline18">XChat</h4>
<div class="outline-text-4" id="text-orgheadline18">
<p>
If you are using the XChat client:
</p>
@ -513,9 +603,9 @@ Click <b>close</b> and then <b>connect</b>.
</div>
</div>
<div id="outline-container-orgheadline17" class="outline-4">
<h4 id="orgheadline17">Changing or removing the IRC password</h4>
<div class="outline-text-4" id="text-orgheadline17">
<div id="outline-container-orgheadline19" class="outline-4">
<h4 id="orgheadline19">Changing or removing the IRC password</h4>
<div class="outline-text-4" id="text-orgheadline19">
<p>
By default the IRC server is set up to require a password for users to log in. The password is the same for all users. If you want to change or remove the password:
</p>
@ -533,12 +623,12 @@ Select <i>Administrator controls</i> then <b>IRC Menu</b> and then change the pa
</div>
</div>
<div id="outline-container-orgheadline23" class="outline-3">
<h3 id="orgheadline23">XMPP/Jabber</h3>
<div class="outline-text-3" id="text-orgheadline23">
</div><div id="outline-container-orgheadline18" class="outline-4">
<h4 id="orgheadline18">Using with Profanity</h4>
<div class="outline-text-4" id="text-orgheadline18">
<div id="outline-container-orgheadline25" class="outline-3">
<h3 id="orgheadline25">XMPP/Jabber</h3>
<div class="outline-text-3" id="text-orgheadline25">
</div><div id="outline-container-orgheadline20" class="outline-4">
<h4 id="orgheadline20">Using with Profanity</h4>
<div class="outline-text-4" id="text-orgheadline20">
<p>
The <a href="http://profanity.im/">Profanity</a> shell based user interface and is perhaps the simplest way to use XMPP from a laptop. It's also a good way to ensure that your OTR keys are the same even when logging in from different laptops or devices, and it also means that if those devices later become compomised then there are no locally stored OTR keys to be found.
</p>
@ -628,9 +718,9 @@ When accessed via the user control panel the client is automatically routed thro
</p>
</div>
</div>
<div id="outline-container-orgheadline19" class="outline-4">
<h4 id="orgheadline19">Using with Jitsi</h4>
<div class="outline-text-4" id="text-orgheadline19">
<div id="outline-container-orgheadline21" class="outline-4">
<h4 id="orgheadline21">Using with Jitsi</h4>
<div class="outline-text-4" id="text-orgheadline21">
<p>
Jitsi is the recommended communications client for desktop or laptop systems, since it includes the <i>off the record</i> (OTR) feature which provides some additional security beyond the usual SSL certificates.
</p>
@ -660,9 +750,9 @@ You can also <a href="https://www.youtube.com/watch?v=vgx7VSrDGjk">see this vide
</p>
</div>
</div>
<div id="outline-container-orgheadline20" class="outline-4">
<h4 id="orgheadline20">Using with Ubuntu</h4>
<div class="outline-text-4" id="text-orgheadline20">
<div id="outline-container-orgheadline22" class="outline-4">
<h4 id="orgheadline22">Using with Ubuntu</h4>
<div class="outline-text-4" id="text-orgheadline22">
<p>
The default XMPP client in Ubuntu is Empathy. Using Empathy isn't as secure as using Jitsi, since it doesn't include the <i>off the record</i> feature, but since it's the default it's what many users will have easy access to.
</p>
@ -680,17 +770,17 @@ Click on <b>Advanced</b> and make sure that <b>Encryption required</b> and <b>Ig
</p>
</div>
</div>
<div id="outline-container-orgheadline21" class="outline-4">
<h4 id="orgheadline21">Using Tor Messenger</h4>
<div class="outline-text-4" id="text-orgheadline21">
<div id="outline-container-orgheadline23" class="outline-4">
<h4 id="orgheadline23">Using Tor Messenger</h4>
<div class="outline-text-4" id="text-orgheadline23">
<p>
Tor Messenger is a messaging client which supports XMPP, and its onion routing enables you to protect the metadata of chat interactions to some extent by making it difficult for an adversary to know which server is talking to which. You can download Tor Messenger from <a href="https://torproject.org/">torproject.org</a> and the setup is pretty simple.
</p>
</div>
</div>
<div id="outline-container-orgheadline22" class="outline-4">
<h4 id="orgheadline22">Using with Android</h4>
<div class="outline-text-4" id="text-orgheadline22">
<div id="outline-container-orgheadline24" class="outline-4">
<h4 id="orgheadline24">Using with Android</h4>
<div class="outline-text-4" id="text-orgheadline24">
<p>
Install <a href="https://f-droid.org/">F-Droid</a>
</p>
@ -726,16 +816,16 @@ Then select <b>Next</b>. When chatting you can use the lock icon to encrypt your
</div>
</div>
</div>
<div id="outline-container-orgheadline24" class="outline-3">
<h3 id="orgheadline24">Tox</h3>
<div class="outline-text-3" id="text-orgheadline24">
<div id="outline-container-orgheadline26" class="outline-3">
<h3 id="orgheadline26">Tox</h3>
<div class="outline-text-3" id="text-orgheadline26">
<p>
Tox is an encrypted peer-to-peer messaging system and so should work without Freedombone. It uses a system of nodes which act as a sort of directory service allowing users to find and connect to each other. The Tox node ID on the Freedombone can be found within the README within your home directory. If you have other users connect to your node then you will be able to continue chatting even when no other nodes are available.
</p>
</div>
<div id="outline-container-orgheadline25" class="outline-4">
<h4 id="orgheadline25">Using the Toxic client</h4>
<div class="outline-text-4" id="text-orgheadline25">
<div id="outline-container-orgheadline27" class="outline-4">
<h4 id="orgheadline27">Using the Toxic client</h4>
<div class="outline-text-4" id="text-orgheadline27">
<p>
Log into your system with:
</p>
@ -759,12 +849,12 @@ Then from the menu select <b>Tox Chat</b>. Tox is encrypted by default and also
</div>
</div>
<div id="outline-container-orgheadline28" class="outline-3">
<h3 id="orgheadline28">VoIP (Voice chat)</h3>
<div class="outline-text-3" id="text-orgheadline28">
</div><div id="outline-container-orgheadline26" class="outline-4">
<h4 id="orgheadline26">Using with Ubuntu</h4>
<div class="outline-text-4" id="text-orgheadline26">
<div id="outline-container-orgheadline30" class="outline-3">
<h3 id="orgheadline30">VoIP (Voice chat)</h3>
<div class="outline-text-3" id="text-orgheadline30">
</div><div id="outline-container-orgheadline28" class="outline-4">
<h4 id="orgheadline28">Using with Ubuntu</h4>
<div class="outline-text-4" id="text-orgheadline28">
<p>
Within the software center search for "mumble" and install the client then run it. Skip through the audio setup wizard.
</p>
@ -778,9 +868,9 @@ Click on "add new" to add a new server and enter the default domain name for the
</p>
</div>
</div>
<div id="outline-container-orgheadline27" class="outline-4">
<h4 id="orgheadline27">Using with Android</h4>
<div class="outline-text-4" id="text-orgheadline27">
<div id="outline-container-orgheadline29" class="outline-4">
<h4 id="orgheadline29">Using with Android</h4>
<div class="outline-text-4" id="text-orgheadline29">
<p>
Install <a href="https://f-droid.org/">F-Droid</a>
</p>
@ -807,24 +897,24 @@ Selecting the server by pressing on it then connects you to the server so that y
</div>
</div>
</div>
<div id="outline-container-orgheadline29" class="outline-3">
<h3 id="orgheadline29">SIP phones</h3>
<div class="outline-text-3" id="text-orgheadline29">
<div id="outline-container-orgheadline31" class="outline-3">
<h3 id="orgheadline31">SIP phones</h3>
<div class="outline-text-3" id="text-orgheadline31">
<p>
Freedombone also supports SIP phones The username and domain is the same as for your email address, and the SIP password and extension number will appear within the README file in your home directory. Various SIP client options are available, such as CSipSimple on Android and Jitsi on desktop or laptop machines. Ideally use clients which support ZRTP, which will provide the best level of security.
</p>
</div>
<div id="outline-container-orgheadline30" class="outline-4">
<h4 id="orgheadline30">About ZRTP</h4>
<div class="outline-text-4" id="text-orgheadline30">
<div id="outline-container-orgheadline32" class="outline-4">
<h4 id="orgheadline32">About ZRTP</h4>
<div class="outline-text-4" id="text-orgheadline32">
<p>
<a href="https://jitsi.org/Documentation/ZrtpFAQ">ZRTP</a> appears to be the current best standard to end-to-end encrypted voice calls, combining good security with simplicity of use. When the initial cryptographic negotiation between phones is done at the start of a call a short authentication string (SAS) is calculated and displayed at both ends. To check that there isn't anyone intercepting the call and acting as a <i>man in the middle</i> - as <a href="https://en.wikipedia.org/wiki/Stingray_phone_tracker">stingray type devices</a> try to do - the short authentication string can be read out and verbally confirmed between the callers. If it's the same then you can be pretty confident that the call is secure.
</p>
</div>
</div>
<div id="outline-container-orgheadline31" class="outline-4">
<h4 id="orgheadline31">Using with CSIPSimple</h4>
<div class="outline-text-4" id="text-orgheadline31">
<div id="outline-container-orgheadline33" class="outline-4">
<h4 id="orgheadline33">Using with CSIPSimple</h4>
<div class="outline-text-4" id="text-orgheadline33">
<p>
Add an account. Under <b>General Wizards</b> choose <b>Expert</b> and enter the following details:
</p>
@ -880,9 +970,9 @@ If everything is working the account should appear in green with a status of <b>
</p>
</div>
</div>
<div id="outline-container-orgheadline32" class="outline-4">
<h4 id="orgheadline32">Using with Ring</h4>
<div class="outline-text-4" id="text-orgheadline32">
<div id="outline-container-orgheadline34" class="outline-4">
<h4 id="orgheadline34">Using with Ring</h4>
<div class="outline-text-4" id="text-orgheadline34">
<p>
From the menu select <b>Manage accounts</b>.
</p>