Documentation for profanity xmpp client

This commit is contained in:
Bob Mottram 2016-02-27 23:12:50 +00:00
parent d8591c7a05
commit 93becbb5fe
2 changed files with 162 additions and 158 deletions

View File

@ -19,13 +19,14 @@
| [[Readme]] |
| [[Improving ssh security]] |
| [[Administrating the system via an onion address (Tor)]] |
| [[./usage_email.html][Using Email]] |
| [[./usage_email.html][Using Email]] |
| [[Syncing to the Cloud]] |
| [[Play Music]] |
| [[Microblogging (GNU Social)]] |
| [[Social Network]] |
| [[Chat Services]] |
| [[RSS Reader]] |
| [[Adding or removing users]] |
* Readme
After the system has installed a README file will be generated which contains passwords and some brief advice on using the installed systems. You can read this with the following commands:
@ -188,48 +189,28 @@ Enter *#freedombone* as the channel name.
Click *close* and then *connect*.
** XMPP/Jabber
*** Managing users
To add a user:
*** using with Profanity
The [[http://profanity.im][Profanity]] shell based user interface and is perhaps the simplest way to use XMPP from a laptop.
#+BEGIN_SRC bash
ssh username@domainname -p 2222
su
freedombone-addxmpp -e newusername@newdomainname
exit
exit
ssh username@domain -p 2222
#+END_SRC
To change a user password:
Then select XMPP and enter your password (for the admin user this can also be found in the README in your home directory).
Generate an [[https://en.wikipedia.org/wiki/Off-the-Record_Messaging][OTR]] key with:
#+BEGIN_SRC bash
ssh username@domainname -p 2222
su
freedombone-xmpp-pass -e username@domainname
exit
exit
/otr gen
#+END_SRC
To remove a user:
Then to start a conversation using OTR:
#+BEGIN_SRC bash
ssh username@domainname -p 2222
su
freedombone-rmxmpp -e username@domainname
exit
exit
#+END_SRC
Report the status of the XMPP server:
#+BEGIN_SRC bash
ssh username@domainname -p 2222
su
prosodyctl status
exit
exit
/otr start otherusername@otheruserdomain
#+END_SRC
It's automatically routed through Tor and so if you are also using OTR then this provides protection for both message content and metadata.
*** Using with Jitsi
Jitsi is the recommended communications client for desktop or laptop systems, since it includes the /off the record/ (OTR) feature which provides some additional security beyond the usual SSL certificates.
@ -322,6 +303,19 @@ The RSS reader is accessible only via an onion address. This provides a reasonab
To set up the system open http://rss_reader_onion_address/ and log in with username *admin* and the password obtained either at the beginning of the install or from the README file in your home directory. You can then select the *Actions* menu and begin adding your feeds.
To access the RSS reader from a mobile device you can install a Tor compatible browser such as [[https://f-droid.org/wiki/page/info.guardianproject.orfox][OrFox]]. It will try to automatically change to the mobile version of the user interface, but if that doesn't work then navigate to http://rss_reader_onion_address/mobile. Remember to add the site to the NoScript whitelist, and you may also need to turn HTTPS Everywhere off.
* Adding or removing users
Log into the system with:
#+BEGIN_SRC bash
ssh username@domainname -p 2222
#+END_SRC
Select *Administrator controls* then *User Management*. Depending upon the type of installation after selecting administrator controls you might need to enter:
#+BEGIN_SRC bash
sudo su
control
#+END_SRC
#+BEGIN_EXPORT html
<center>

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-02-27 Sat 22:04 -->
<!-- 2016-02-27 Sat 23:12 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title></title>
@ -208,6 +208,10 @@ for the JavaScript code in this tag.
<tr>
<td class="org-left"><a href="#orgheadline9">RSS Reader</a></td>
</tr>
<tr>
<td class="org-left"><a href="#orgheadline10">Adding or removing users</a></td>
</tr>
</tbody>
</table>
@ -325,9 +329,9 @@ Subsequently even if dynamic DNS isn't working you may still be able to administ
<div id="outline-container-orgheadline4" class="outline-2">
<h2 id="orgheadline4">Syncing to the Cloud</h2>
<div class="outline-text-2" id="text-orgheadline4">
</div><div id="outline-container-orgheadline10" class="outline-3">
<h3 id="orgheadline10">Initial install</h3>
<div class="outline-text-3" id="text-orgheadline10">
</div><div id="outline-container-orgheadline11" class="outline-3">
<h3 id="orgheadline11">Initial install</h3>
<div class="outline-text-3" id="text-orgheadline11">
<p>
Within a browser go to your owncloud domain, then create an administrator account. The username and password can be anything, and ideally should be generated from a password manager.
</p>
@ -371,9 +375,9 @@ Log out from the administrator account and then log back in as the user you just
</p>
</div>
</div>
<div id="outline-container-orgheadline11" class="outline-3">
<h3 id="orgheadline11">On Android</h3>
<div class="outline-text-3" id="text-orgheadline11">
<div id="outline-container-orgheadline12" class="outline-3">
<h3 id="orgheadline12">On Android</h3>
<div class="outline-text-3" id="text-orgheadline12">
<p>
Within F-droid search for <b>owncloud</b> and install the client. Also install <b>CalDAV Sync Adapter</b>.
</p>
@ -397,9 +401,9 @@ You will also be prompted to enter login details. Your Android and Owncloud cale
</p>
</div>
</div>
<div id="outline-container-orgheadline12" class="outline-3">
<h3 id="orgheadline12">On Linux</h3>
<div class="outline-text-3" id="text-orgheadline12">
<div id="outline-container-orgheadline13" class="outline-3">
<h3 id="orgheadline13">On Linux</h3>
<div class="outline-text-3" id="text-orgheadline13">
<p>
Open your software center and search for "owncloud client". Enter your owncloud domain name (with the https prefix) and login details.
</p>
@ -413,9 +417,9 @@ You can now drag files into the <b>~/owncloud</b> directory and they will automa
<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-orgheadline13" class="outline-3">
<h3 id="orgheadline13">With the DLNA service</h3>
<div class="outline-text-3" id="text-orgheadline13">
</div><div id="outline-container-orgheadline14" class="outline-3">
<h3 id="orgheadline14">With the DLNA service</h3>
<div class="outline-text-3" id="text-orgheadline14">
<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>
@ -455,9 +459,9 @@ The DLNA service will only work within your local home network, and isn't remote
</div>
</div>
<div id="outline-container-orgheadline14" class="outline-3">
<h3 id="orgheadline14">With Owncloud</h3>
<div class="outline-text-3" id="text-orgheadline14">
<div id="outline-container-orgheadline15" class="outline-3">
<h3 id="orgheadline15">With Owncloud</h3>
<div class="outline-text-3" id="text-orgheadline15">
<p>
The main advantage of playing music via Owncloud is that you can do that from anywhere - not only within your home network.
</p>
@ -472,9 +476,9 @@ By default a music player is installed into Owncloud, so all you need to do is t
<div id="outline-container-orgheadline6" class="outline-2">
<h2 id="orgheadline6">Microblogging (GNU Social)</h2>
<div class="outline-text-2" id="text-orgheadline6">
</div><div id="outline-container-orgheadline15" class="outline-3">
<h3 id="orgheadline15">Initial configuration</h3>
<div class="outline-text-3" id="text-orgheadline15">
</div><div id="outline-container-orgheadline16" class="outline-3">
<h3 id="orgheadline16">Initial configuration</h3>
<div class="outline-text-3" id="text-orgheadline16">
<p>
To log into your GNU Social site first obtain your username and password from the "microblogging" section of the readme file.
</p>
@ -496,17 +500,17 @@ Navigate to your site and log in. You may then want to select <b>Admin</b> and c
<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-orgheadline16" class="outline-3">
<h3 id="orgheadline16">Domains</h3>
<div class="outline-text-3" id="text-orgheadline16">
</div><div id="outline-container-orgheadline17" class="outline-3">
<h3 id="orgheadline17">Domains</h3>
<div class="outline-text-3" id="text-orgheadline17">
<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-orgheadline17" class="outline-3">
<h3 id="orgheadline17">Initial install</h3>
<div class="outline-text-3" id="text-orgheadline17">
<div id="outline-container-orgheadline18" class="outline-3">
<h3 id="orgheadline18">Initial install</h3>
<div class="outline-text-3" id="text-orgheadline18">
<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>
@ -516,16 +520,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-orgheadline18" class="outline-3">
<h3 id="orgheadline18">IRC</h3>
<div class="outline-text-3" id="text-orgheadline18">
</div><div id="outline-container-orgheadline19" class="outline-3">
<h3 id="orgheadline19">IRC</h3>
<div class="outline-text-3" id="text-orgheadline19">
<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-orgheadline19" class="outline-4">
<h4 id="orgheadline19">Irssi</h4>
<div class="outline-text-4" id="text-orgheadline19">
<div id="outline-container-orgheadline20" class="outline-4">
<h4 id="orgheadline20">Irssi</h4>
<div class="outline-text-4" id="text-orgheadline20">
<p>
The easiest way to use irssi is to connect to your system, like this:
</p>
@ -541,9 +545,9 @@ Then select <b>IRC</b> from the menu. Irssi is automatically set up to connect t
</p>
</div>
</div>
<div id="outline-container-orgheadline20" class="outline-4">
<h4 id="orgheadline20">XChat</h4>
<div class="outline-text-4" id="text-orgheadline20">
<div id="outline-container-orgheadline21" class="outline-4">
<h4 id="orgheadline21">XChat</h4>
<div class="outline-text-4" id="text-orgheadline21">
<p>
If you are using the XChat client:
</p>
@ -579,74 +583,55 @@ Click <b>close</b> and then <b>connect</b>.
</div>
</div>
<div id="outline-container-orgheadline26" class="outline-3">
<h3 id="orgheadline26">XMPP/Jabber</h3>
<div class="outline-text-3" id="text-orgheadline26">
</div><div id="outline-container-orgheadline21" class="outline-4">
<h4 id="orgheadline21">Managing users</h4>
<div class="outline-text-4" id="text-orgheadline21">
<p>
To add a user:
</p>
<div class="org-src-container">
<pre class="src src-bash">ssh username@domainname -p 2222
su
freedombone-addxmpp -e newusername@newdomainname
<span class="org-keyword">exit</span>
<span class="org-keyword">exit</span>
</pre>
</div>
<p>
To change a user password:
</p>
<div class="org-src-container">
<pre class="src src-bash">ssh username@domainname -p 2222
su
freedombone-xmpp-pass -e username@domainname
<span class="org-keyword">exit</span>
<span class="org-keyword">exit</span>
</pre>
</div>
<p>
To remove a user:
</p>
<div class="org-src-container">
<pre class="src src-bash">ssh username@domainname -p 2222
su
freedombone-rmxmpp -e username@domainname
<span class="org-keyword">exit</span>
<span class="org-keyword">exit</span>
</pre>
</div>
<p>
Report the status of the XMPP server:
</p>
<div class="org-src-container">
<pre class="src src-bash">ssh username@domainname -p 2222
su
prosodyctl status
<span class="org-keyword">exit</span>
<span class="org-keyword">exit</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-orgheadline22" class="outline-4">
<h4 id="orgheadline22">Using with Jitsi</h4>
<div id="outline-container-orgheadline27" class="outline-3">
<h3 id="orgheadline27">XMPP/Jabber</h3>
<div class="outline-text-3" id="text-orgheadline27">
</div><div id="outline-container-orgheadline22" class="outline-4">
<h4 id="orgheadline22">using with Profanity</h4>
<div class="outline-text-4" id="text-orgheadline22">
<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.
</p>
<div class="org-src-container">
<pre class="src src-bash">ssh username@domain -p 2222
</pre>
</div>
<p>
Then select XMPP and enter your password (for the admin user this can also be found in the README in your home directory).
</p>
<p>
Generate an <a href="https://en.wikipedia.org/wiki/Off-the-Record_Messaging">OTR</a> key with:
</p>
<div class="org-src-container">
<pre class="src src-bash">/otr gen
</pre>
</div>
<p>
Then to start a conversation using OTR:
</p>
<div class="org-src-container">
<pre class="src src-bash">/otr start otherusername@otheruserdomain
</pre>
</div>
<p>
It's automatically routed through Tor and so if you are also using OTR then this provides protection for both message content and metadata.
</p>
</div>
</div>
<div id="outline-container-orgheadline23" class="outline-4">
<h4 id="orgheadline23">Using with Jitsi</h4>
<div class="outline-text-4" id="text-orgheadline23">
<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>
@ -675,9 +660,9 @@ You can also <a href="https://www.youtube.com/watch?v=vgx7VSrDGjk">see this vide
</p>
</div>
</div>
<div id="outline-container-orgheadline23" class="outline-4">
<h4 id="orgheadline23">Using with Ubuntu</h4>
<div class="outline-text-4" id="text-orgheadline23">
<div id="outline-container-orgheadline24" class="outline-4">
<h4 id="orgheadline24">Using with Ubuntu</h4>
<div class="outline-text-4" id="text-orgheadline24">
<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>
@ -695,17 +680,17 @@ Click on <b>Advanced</b> and make sure that <b>Encryption required</b> and <b>Ig
</p>
</div>
</div>
<div id="outline-container-orgheadline24" class="outline-4">
<h4 id="orgheadline24">Using Tor Messenger</h4>
<div class="outline-text-4" id="text-orgheadline24">
<div id="outline-container-orgheadline25" class="outline-4">
<h4 id="orgheadline25">Using Tor Messenger</h4>
<div class="outline-text-4" id="text-orgheadline25">
<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-orgheadline25" class="outline-4">
<h4 id="orgheadline25">Using with Android</h4>
<div class="outline-text-4" id="text-orgheadline25">
<div id="outline-container-orgheadline26" class="outline-4">
<h4 id="orgheadline26">Using with Android</h4>
<div class="outline-text-4" id="text-orgheadline26">
<p>
Install <a href="https://f-droid.org/">F-Droid</a>
</p>
@ -741,16 +726,16 @@ Then select <b>Next</b>. When chatting you can use the lock icon to encrypt your
</div>
</div>
</div>
<div id="outline-container-orgheadline27" class="outline-3">
<h3 id="orgheadline27">Tox</h3>
<div class="outline-text-3" id="text-orgheadline27">
<div id="outline-container-orgheadline28" class="outline-3">
<h3 id="orgheadline28">Tox</h3>
<div class="outline-text-3" id="text-orgheadline28">
<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-orgheadline28" class="outline-4">
<h4 id="orgheadline28">Using the Toxic client</h4>
<div class="outline-text-4" id="text-orgheadline28">
<div id="outline-container-orgheadline29" class="outline-4">
<h4 id="orgheadline29">Using the Toxic client</h4>
<div class="outline-text-4" id="text-orgheadline29">
<p>
Log into your system with:
</p>
@ -767,12 +752,12 @@ Then from the menu select <b>Tox Chat</b>. Tox is encrypted by default and also
</div>
</div>
</div>
<div id="outline-container-orgheadline31" class="outline-3">
<h3 id="orgheadline31">VoIP (Voice chat)</h3>
<div class="outline-text-3" id="text-orgheadline31">
</div><div id="outline-container-orgheadline29" class="outline-4">
<h4 id="orgheadline29">Using with Ubuntu</h4>
<div class="outline-text-4" id="text-orgheadline29">
<div id="outline-container-orgheadline32" class="outline-3">
<h3 id="orgheadline32">VoIP (Voice chat)</h3>
<div class="outline-text-3" id="text-orgheadline32">
</div><div id="outline-container-orgheadline30" class="outline-4">
<h4 id="orgheadline30">Using with Ubuntu</h4>
<div class="outline-text-4" id="text-orgheadline30">
<p>
Within the software center search for "mumble" and install the client then run it. Skip through the audio setup wizard.
</p>
@ -786,9 +771,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-orgheadline30" class="outline-4">
<h4 id="orgheadline30">Using with Android</h4>
<div class="outline-text-4" id="text-orgheadline30">
<div id="outline-container-orgheadline31" class="outline-4">
<h4 id="orgheadline31">Using with Android</h4>
<div class="outline-text-4" id="text-orgheadline31">
<p>
Install <a href="https://f-droid.org/">F-Droid</a>
</p>
@ -815,9 +800,9 @@ Selecting the server by pressing on it then connects you to the server so that y
</div>
</div>
</div>
<div id="outline-container-orgheadline32" class="outline-3">
<h3 id="orgheadline32">SIP phones</h3>
<div class="outline-text-3" id="text-orgheadline32">
<div id="outline-container-orgheadline33" class="outline-3">
<h3 id="orgheadline33">SIP phones</h3>
<div class="outline-text-3" id="text-orgheadline33">
<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>
@ -858,6 +843,31 @@ To set up the system open <a href="http://rss_reader_onion_address/">http://rss_
<p>
To access the RSS reader from a mobile device you can install a Tor compatible browser such as <a href="https://f-droid.org/wiki/page/info.guardianproject.orfox">OrFox</a>. It will try to automatically change to the mobile version of the user interface, but if that doesn't work then navigate to <a href="http://rss_reader_onion_address/mobile">http://rss_reader_onion_address/mobile</a>. Remember to add the site to the NoScript whitelist, and you may also need to turn HTTPS Everywhere off.
</p>
</div>
</div>
<div id="outline-container-orgheadline10" class="outline-2">
<h2 id="orgheadline10">Adding or removing users</h2>
<div class="outline-text-2" id="text-orgheadline10">
<p>
Log into the system with:
</p>
<div class="org-src-container">
<pre class="src src-bash">ssh username@domainname -p 2222
</pre>
</div>
<p>
Select <b>Administrator controls</b> then <b>User Management</b>. Depending upon the type of installation after selecting administrator controls you might need to enter:
</p>
<div class="org-src-container">
<pre class="src src-bash">sudo su
control
</pre>
</div>
<center>
Return to the <a href="index.html">home page</a>