Remove deprecated items which are unlikely to be installed

This commit is contained in:
Bob Mottram 2014-05-18 15:53:42 +01:00
parent 3b4d92340e
commit 8fc0e4a02c
1 changed files with 0 additions and 474 deletions

View File

@ -6900,480 +6900,6 @@ Now visit your web site at https://mydomainname.com and you should notice that t
The following items have been deprecated until such time as a successful installation is achieved. The following items have been deprecated until such time as a successful installation is achieved.
** Install a VoIP server
#+BEGIN_VERSE
/Our core principles, whether in software or sovereignty, have always been about freedom and dignity, for all people, on an equal basis/
-- David Sugar, GNU Telephony
#+END_VERSE
*** The server
Sipwitch is like an introduction service or phone book for SIP VoIP clients. Once introduced the clients can then talk directly, and this means that sipwitch is very lightweight and can run on low power systems such as the BBB.
Edit your package sources:
#+BEGIN_SRC: bash
editor /etc/apt/sources.list
#+END_SRC
Append the following line:
#+BEGIN_SRC: bash
deb http://dev.gnutelephony.org/archive/ wheezy/
#+END_SRC
Save and exit.
To load the repository the first time after adding it to the sources.list, since you do not have the verification keys already installed yet. Then do
#+BEGIN_SRC: bash
apt-get install gnutelephony-keyring
#+END_SRC
After that it will be happy to accept it as a signed repository. The verification keys can also be directly fetched with
#+BEGIN_SRC: bash
cd /tmp
wget http://dev.gnutelephony.org/archive/wheezy/public.key
#+END_SRC
and manually added instead with
#+BEGIN_SRC: bash
apt-key add public.key
#+END_SRC
To make sure you have all dependencies, do
#+BEGIN_SRC: bash
apt-get update;apt-get dist-upgrade
#+END_SRC
Before we install anything, let's inspect what is available to us by using
#+BEGIN_SRC: bash
dpkg -l sipwitch
#+END_SRC
To see the main application. The columns will indicate if the package is installed, which version and a description of the package. Then do
#+BEGIN_SRC: bash
dpkg -l sipwitch-*
#+END_SRC
to see available supporting applications and plugins. Again, the columns will indicate if the package is installed, which version and a description of each of these.
To install only the main application, do
#+BEGIN_SRC: bash
apt-get install sipwitch
#+END_SRC
and to install all supporting plugins:
#+BEGIN_SRC: bash
apt-get install sipwitch-plugin-scripting sipwitch-plugin-subscriber sipwitch-plugin-forward sipwitch-plugin-zeroconf
#+END_SRC
Add your user into the sipwitch group
#+BEGIN_SRC: bash
groupadd sipwitch
groupadd sipusers
usermod -aG sipwitch myusername
usermod -aG sipusers myusername
#+END_SRC
Then edit the configuration
#+BEGIN_SRC: bash
editor /etc/sipwitch.conf
#+END_SRC
Change the *mapped* value from 200 to 20, since we don't want to be serving huge numbers of calls.
Alter the *range* value to 10, since we don't need a large number of extensions. This will mean that exension numbers 200 to 209 are available.
Do not set the *realm* value, as doing so seems to prevent the server from working.
Save and exit.
Create a digest string for your username:
#+BEGIN_SRC: bash
sipwitch digest myusername
#+END_SRC
Make a note of the resulting string because you're going to use it in the users file you'll now create.
#+BEGIN_SRC: bash
export HOSTNAME=mydomainname.com
touch /etc/sipwitch.d/$HOSTNAME.xml
chmod 600 /etc/sipwitch.d/$HOSTNAME.xml
editor /etc/sipwitch.d/$HOSTNAME.xml
#+END_SRC
It should look something like the following:
#+BEGIN_SRC: bash
<provision>
<user id="myusername">
<digest>yourdigeststring</digest>
<extension>201</extension>
<display>Your full name</display>
</user>
</provision>
#+END_SRC
Save and exit. Now edit the configuration.
#+BEGIN_SRC: bash
editor /etc/default/sipwitch
#+END_SRC
Change "desktop" to "server", then save and exit.
Update the IP settings:
#+BEGIN_SRC: bash
iptables -A INPUT -p tcp --dport 5060 -j ACCEPT
iptables -A INPUT -p udp --dport 5060 -j ACCEPT
iptables -A INPUT -p tcp --dport 5061 -j ACCEPT
iptables -A INPUT -p udp --dport 5061 -j ACCEPT
iptables-save
#+END_SRC
Test that it's working:
#+BEGIN_SRC: bash
pkill -9 sipw
sipw -x9 -f
#+END_SRC
Then try to register with the server using a SIP client (such as Jitsi). If everything worked then use CTRL-C to exit. Then start the service.
#+BEGIN_SRC: bash
service sipwitch start
#+END_SRC
*** Clients
**** Jitsi
Download the latst version from https://jitsi.org/index.php/Main/Download
TODO
**** Twinkle client
The client should have a user profile as following:
The "user name" is the xxx id used in the <user id="xxx"> entry of /etc/sipwitch.conf
The "domain" is the yyy domain in the main config <stack><domain>yyy entry of /etc/sipwitch.conf
The SIP Authentication should have:
realm = realm as set in <registry><realm> of /etc/sipwitch.conf
authentication name = <user id="xx"> entry, same as "User Name" field.
password = value of <secret>zzz in <user> entry of /etc/sipwitch.conf
Under security tab, set "Enable ZRTP/SRTP encryption"
**** Android
TODO
CSipSimple?
** Kune
Kune is a collaboration tool aimed at not just socialising but also getting stuff done within a community. It's based upon Apache Wave (formerly Google Wave).
#+BEGIN_SRC: bash
apt-get install openjdk-6-jdk openjdk-7-jre mysql-server adduser dbconfig-common libjmagick6-jni
#+END_SRC
Add the Kune repository:
#+BEGIN_SRC: bash
editor /etc/apt/sources.list
#+END_SRC
Append the following:
#+BEGIN_SRC: bash
deb ftp://ftp.kune.ourproject.org/pub/kune/debian/ stable/
#+END_SRC
Save and exit, then install the Kune package.
#+BEGIN_SRC: bash
gpg --keyserver pgp.mit.edu --recv-keys 9E358A05
gpg --armor --export 9E358A05 | apt-key add -
apt-get update
apt-get install kune
#+END_SRC
You will be asked for the MySql root password and another password to be used with the Kune database.
Allow the system to start automatically at boot.
#+BEGIN_SRC: bash
editor /etc/default/kune
#+END_SRC
Set /START=yes/, then save and exit.
#+BEGIN_SRC: bash
service kune start
#+END_SRC
Now configure Apache.
#+BEGIN_SRC: bash
a2enmod expires
a2enmod proxy
a2enmod proxy_connect
a2enmod proxy_http
#+END_SRC
Upgrade the database.
#+BEGIN_SRC: bash
mysql -p kune_prod < /usr/share/dbconfig-common/data/kune/upgrade/mysql/0.1.0+b5
mysql -p kune_prod < /usr/share/dbconfig-common/data/kune/upgrade/mysql/0.1.0+b6
mysql -p kune_prod < /usr/share/dbconfig-common/data/kune/upgrade/mysql/0.2.0+b12
mysql -p kune_prod < /usr/share/dbconfig-common/data/kune/upgrade/mysql/0.2.0+b23
mysql -p kune_prod < /usr/share/dbconfig-common/data/kune/upgrade/mysql/0.2.0+b25
#+END_SRC
Edit the Apache configuration.
#+BEGIN_SRC: bash
editor /etc/apache2/sites-available/$HOSTNAME
#+END_SRC
<VirtualHost *:80>
ServerName YOURSERVERNAME
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Files *.cache.*>
ExpiresActive On
ExpiresDefault "modification plus 2 years"
</Files>
<Files *.nocache.*>
ExpiresActive Off
</Files>
ProxyPass /kune/ http://localhost:8888/
ProxyPassReverse /kune/ http://localhost:8888/
<Location /var/www/mydomainname.com/htdocs/kune/>
Order allow,deny
Allow from all
</Location>
</VirtualHost>
Within a browser open https://mydomainname.com:8888
See documentation in /usr/share/doc/kune/INSTALL.gz
** Loomio
#+BEGIN_SRC: bash
apt-get install imagemagick libmagickcore-dev postgresql libmagickwand-dev
#+END_SRC
psql -d postgres
postgres=# create role postgres login createdb;
postgres=# \q
#+BEGIN_SRC: bash
cd /srv
git clone https://github.com/loomio/loomio.git
cd /srv/loomio
bundle install
cp config/database.example.yml config/database.yml
cp .example-env .env
bundle exec rake db:create
bundle exec rake db:schema:load
bundle exec rake db:schema:load RAILS_ENV=test
bundle exec rake db:seed
#+END_SRC
foreman start
Edit the Apache configuration for your mediagoblin site.
#+BEGIN_SRC: bash
editor /etc/apache2/sites-available/myloomiodomain
#+END_SRC
Delete the existing configuration (in Emacs it's CTRL-x h then CTRL-w) and paste the following, replacing /myloomiodomain/ with your mediagoblin domain name and /myusername@mydomainname.com/ with your email address.
#+BEGIN_SRC: bash
<VirtualHost *:80>
ServerAdmin myusername@mydomainname.com
DocumentRoot /srv/myloomiodomain
ServerName myloomiodomain
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /srv/myloomiodomain/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
LogLevel warn
ProxyVia On
ProxyRequests off
ProxyPreserveHost on
ProxyPass / http://localhost:3000/
ErrorLog "/var/log/apache2/error.log"
CustomLog "/var/log/apache2/access.log" combined
RewriteEngine On
RewriteOptions Inherit
</VirtualHost>
#+END_SRC
Save and exit.
Now in a browser visit http://myloomiodomain and create a user.
** Connect Bitmessage to Email
TODO: how to connect Bitmessage to an email client.
#+BEGIN_SRC: bash
cd /tmp
wget http://freedombone.uk.to/notbit.tar.gz
#+END_SRC
Verify it.
#+BEGIN_SRC: bash
sha256sum notbit.tar.gz
972fdc9cbb8034141282337dcd5e557bce57969ff6bd1d607da89bd93cc7bb68
#+END_SRC
Extract and install it.
#+BEGIN_SRC: bash
tar -xzvf notbit.tar.gz
cd notbit
apt-get install dh-autoreconf
./autogen.sh --prefix=/home/myusername
make
make install
#+END_SRC
** Add a Convergenge notary
Convergence is a secure replacement for the Certificate Authority System. Rather than employing a traditionally hard-coded list of immutable and largely untrusted CAs, Convergence allows you to configure a dynamic set of Notaries which use network perspective to validate your communication. For more details see [[http://convergence.io][convergence.io]] or [[http://www.youtube.com/watch?v=Z7Wl2FW2TcA][this talk which explains the concepts]].
*** Installation
#+BEGIN_SRC: bash
apt-get install python python-twisted-web python-twisted-names python-m2crypto python-openssl
cd /tmp
git clone https://github.com/fuzzgun/convergence
cd convergence/server
python ./setup.py install
#+END_SRC
Generate a key pair:
#+BEGIN_SRC: bash
convergence gencert
#+END_SRC
When asked for a challenge password just hit *Enter* a couple of times. Then move the key pair to the appropriate directories as follows.
#+BEGIN_SRC: bash
mv mynotary.key /etc/ssl/private
chmod 400 /etc/ssl/private/mynotary.key
mv mynotary.pem /etc/ssl/certs
#+END_SRC
Now create the database:
#+BEGIN_SRC: bash
rm /var/lib/convergence/convergence.db
convergence createdb
#+END_SRC
Create an initialisation script:
#+BEGIN_SRC: bash
editor /etc/init.d/convergence
#+END_SRC
Add the following:
#+BEGIN_SRC: bash
#+END_SRC
Save and exit.
#+BEGIN_SRC: bash
adduser converg
#+END_SRC
The details for the user don't especially matter, but give them a long random password.
#+BEGIN_SRC: bash
chown -R converg:converg /home/converg
chmod +x /etc/init.d/convergence
update-rc.d convergence defaults
service convergence start
#+END_SRC
Generate a notary bundle:
#+BEGIN_SRC: bash
convergence bundle
#+END_SRC
Enter your name, nickname, handle or whatever.
For the bundle location enter https://mydomainname.com/convergence.notary
For the Hostname enter your domain name
For SSL port enter *8433* and for HTTP port nter *8432*
For the pem file enter */etc/ssl/certs/mynotary.pem*
#+BEGIN_SRC: bash
export HOSTNAME=mydomainname.com
mv mynotarybundle.notary /var/www/$HOSTNAME/htdocs/convergence.notary
chown www-data:www-data /var/www/$HOSTNAME/htdocs/convergence.notary
#+END_SRC
Now open ports 8432 and 8433 on your internet router or firewall and direct it to the BBB.
*** Using Convergence
On a computer which is not the BBB (your laptop, etc):
Install the browser plugin by navigating to https://addons.mozilla.org/en-us/firefox/addon/convergence-extra/
After installation restart your browser.
You will notice that an icon appears in the top right corner of the browser, which resembles a lock and two plus signs. Click on the down arrow to the right of it and select *options*.
** Gitlab ** Gitlab
Install some dependencies: Install some dependencies: