Browse Source

Documentation improvements

Bob Mottram 10 years ago
parent
commit
1392ab7b56
3 changed files with 195 additions and 126 deletions
  1. 10
    0
      README.md
  2. 11
    1
      doc/installation.org
  3. 174
    125
      website/installation.html

+ 10
- 0
README.md View File

@@ -157,3 +157,13 @@ On your internet router, typically under firewall settings, open the following p
157 157
     | Email   |        587 |
158 158
     | Email   |        465 |
159 159
     | Email   |        993 |
160
+
161
+On Client Machines
162
+==================
163
+You can configure laptops or desktop machines which connect to the Freedombone server in the following way. This alters encryption settings to improve overall security.
164
+
165
+    sudo apt-get install git dialog
166
+    git clone https://github.com/bashrc/freedombone
167
+    cd freedombone
168
+    sudo make install
169
+    freedombone-client

+ 11
- 1
doc/installation.org View File

@@ -7,7 +7,7 @@
7 7
 #+BEGIN_CENTER
8 8
 [[./images/logo.png]]
9 9
 #+END_CENTER
10
-| [[file:index.html][Home]] | [[Preparation for the Beaglebone Black]] | [[Checklist]] | [[GPG Keys]] | [[Interactive Setup]] | [[Non-Interactive Setup]] | [[Post-Setup]] |
10
+| [[file:index.html][Home]] | [[Preparation for the Beaglebone Black]] | [[Checklist]] | [[GPG Keys]] | [[Interactive Setup]] | [[Non-Interactive Setup]] | [[Post-Setup]] | [[On Client Machines]] |
11 11
 
12 12
 
13 13
 * Preparation for the Beaglebone Black
@@ -166,3 +166,13 @@ On your internet router, typically under firewall settings, open the following p
166 166
 | Email   |        587 |
167 167
 | Email   |        465 |
168 168
 | Email   |        993 |
169
+* On Client Machines
170
+You can configure laptops or desktop machines which connect to the Freedombone server in the following way. This alters encryption settings to improve overall security.
171
+
172
+#+BEGIN_SRC bash
173
+sudo apt-get install git dialog
174
+git clone https://github.com/bashrc/freedombone
175
+cd freedombone
176
+sudo make install
177
+freedombone-client
178
+#+END_SRC

+ 174
- 125
website/installation.html View File

@@ -4,7 +4,7 @@
4 4
 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
5 5
 <head>
6 6
 <title></title>
7
-<!-- 2015-01-16 Fri 23:51 -->
7
+<!-- 2015-01-24 Sat 20:14 -->
8 8
 <meta  http-equiv="Content-Type" content="text/html;charset=utf-8" />
9 9
 <meta  name="generator" content="Org-mode" />
10 10
 <meta  name="author" content="Bob Mottram" />
@@ -168,38 +168,35 @@ for the JavaScript code in this tag.
168 168
 <col  class="left" />
169 169
 
170 170
 <col  class="left" />
171
+
172
+<col  class="left" />
173
+
174
+<col  class="left" />
175
+
176
+<col  class="left" />
171 177
 </colgroup>
172 178
 <tbody>
173 179
 <tr>
174 180
 <td class="left"><a href="index.html">Home</a></td>
175
-<td class="left"><i>Download the code</i></td>
176
-<td class="left"><a href="#unnumbered-2">On a Beaglebone Black</a></td>
177
-<td class="left"><a href="#unnumbered-3">On a laptop/PC/netbook</a></td>
178
-<td class="left"><a href="#unnumbered-4">Internet Router</a></td>
181
+<td class="left"><a href="#unnumbered-1">Preparation for the Beaglebone Black</a></td>
182
+<td class="left"><a href="#unnumbered-2">Checklist</a></td>
183
+<td class="left"><a href="#unnumbered-3">GPG Keys</a></td>
184
+<td class="left"><a href="#unnumbered-4">Interactive Setup</a></td>
185
+<td class="left"><a href="#unnumbered-5">Non-Interactive Setup</a></td>
186
+<td class="left"><a href="#unnumbered-6">Post-Setup</a></td>
187
+<td class="left"><a href="#unnumbered-7">On Client Machines</a></td>
179 188
 </tr>
180 189
 </tbody>
181 190
 </table>
182 191
 
192
+
183 193
 <div id="outline-container-unnumbered-1" class="outline-2">
184
-<h2 id="unnumbered-1">Download and install the code</h2>
194
+<h2 id="unnumbered-1">Preparation for the Beaglebone Black</h2>
185 195
 <div class="outline-text-2" id="text-unnumbered-1">
186 196
 <p>
187
-Firstly you'll need to download the code as follows:
197
+This section is specific to the Beaglebone Black hardware. If you're not using that hardware then just skip to the next section.
188 198
 </p>
189 199
 
190
-<div class="org-src-container">
191
-
192
-<pre class="src src-bash">sudo apt-get install git
193
-git clone https://github.com/bashrc/freedombone
194
-<span class="org-builtin">cd</span> freedombone
195
-make install
196
-</pre>
197
-</div>
198
-</div>
199
-</div>
200
-<div id="outline-container-unnumbered-2" class="outline-2">
201
-<h2 id="unnumbered-2">On a Beaglebone Black</h2>
202
-<div class="outline-text-2" id="text-unnumbered-2">
203 200
 <p>
204 201
 To get started you will need:
205 202
 </p>
@@ -217,7 +214,7 @@ To get started you will need:
217 214
 </li>
218 215
 <li>USB thumb drive (for backups or storing media)
219 216
 </li>
220
-<li>One or more subdomains created on <a href="https://freedns.afraid.org/">https://freedns.afraid.org/</a>
217
+<li>One or more domains available via a dynamic DNS provider, such as <a href="https://freedns.afraid.org/">https://freedns.afraid.org/</a>
221 218
 </li>
222 219
 <li>A purchased domain name and SSL certificate (only needed for Red Matrix)
223 220
 </li>
@@ -230,183 +227,217 @@ You will also need to know, or find out, the IP address of your internet router
230 227
 </p>
231 228
 
232 229
 <p>
233
-Plug the microSD card into your laptop/desktop and then run the <b>freedombone-prep</b> command. For example:
230
+You can either install from a debian package or manually as follows:
234 231
 </p>
235 232
 
236 233
 <div class="org-src-container">
237 234
 
238
-<pre class="src src-bash">freedombone-prep -d /dev/sdX --ip &lt;static LAN IP&gt; --iprouter &lt;router LAN IP&gt;
235
+<pre class="src src-bash">sudo apt-get install git dialog
236
+git clone https://github.com/bashrc/freedombone
237
+<span class="org-builtin">cd</span> freedombone
238
+sudo make install
239 239
 </pre>
240 240
 </div>
241 241
 
242 242
 <p>
243
-where <b>/dev/sdX</b> is the device name for the microSD card. Often it's <b>/dev/sdb</b> or <b>/dev/sdc</b>, depending upon how many drives there are on your system. The script will download the Debian installer and update the microSD card. It can take a while, so be patient.
244
-</p>
245
-
246
-<p>
247
-When the initial setup is done follow the instructions on screen to run the main Freedombone script. You can create a separate configuration file called <b>freedombone.cfg</b> which contains those variables. Variables which you might want to put into a <b>freedombone.cfg</b> file are:
243
+Plug the microSD card into your laptop/desktop and then run the <b>freedombone-prep</b> command. For example:
248 244
 </p>
249 245
 
250 246
 <div class="org-src-container">
251 247
 
252
-<pre class="src src-bash"><span class="org-variable-name">MY_EMAIL_ADDRESS</span>=&lt;your email address&gt;
253
-<span class="org-variable-name">MY_NAME</span>=&lt;your name/nick/pseudonym&gt;
254
-<span class="org-variable-name">MY_BLOG_TITLE</span>=&lt;title of your blog&gt;
255
-<span class="org-variable-name">MY_BLOG_SUBTITLE</span>=&lt;subtitle of your blog&gt;
256
-<span class="org-variable-name">SSH_PORT</span>=2222
257
-<span class="org-variable-name">FULLBLOG_DOMAIN_NAME</span>=&lt;freedns subdomain for your blog&gt;
258
-<span class="org-variable-name">FULLBLOG_FREEDNS_SUBDOMAIN_CODE</span>=&lt;freedns subdomain code for your blog&gt;
259
-<span class="org-variable-name">MICROBLOG_DOMAIN_NAME</span>=&lt;domain name for your microblog&gt;
260
-<span class="org-variable-name">MICROBLOG_FREEDNS_SUBDOMAIN_CODE</span>=1234
261
-<span class="org-variable-name">REDMATRIX_DOMAIN_NAME</span>=&lt;domain name for your Red Matrix site&gt;
262
-<span class="org-variable-name">OWNCLOUD_DOMAIN_NAME</span>=&lt;freedns subdomain for your Owncloud site&gt;
263
-<span class="org-variable-name">OWNCLOUD_FREEDNS_SUBDOMAIN_CODE</span>=&lt;freedns subdomain code for your Owncloud site&gt;
264
-<span class="org-variable-name">WIKI_TITLE</span>=&lt;title of your wiki&gt;
265
-<span class="org-variable-name">WIKI_DOMAIN_NAME</span>=&lt;freedns subdomain for your wiki&gt;
266
-<span class="org-variable-name">WIKI_FREEDNS_SUBDOMAIN_CODE</span>=&lt;freedns subdomain code for your wiki&gt;
267
-<span class="org-variable-name">MY_GPG_PUBLIC_KEY</span>=&lt;exported public key filename&gt;
268
-<span class="org-variable-name">MY_GPG_PRIVATE_KE</span>=&lt;exported private key filename&gt;
269
-<span class="org-variable-name">PUBLIC_MAILING_LIST</span>=&lt;name of your mailing list&gt;
270
-<span class="org-variable-name">LOCAL_NETWORK_STATIC_IP_ADDRESS</span>=192.168.1.60
271
-<span class="org-variable-name">ROUTER_IP_ADDRESS</span>=192.168.1.254
272
-<span class="org-variable-name">ENABLE_CJDNS</span>=no
248
+<pre class="src src-bash">freedombone-prep -d /dev/sdX --ip freedombone_IP_address --iprouter router_IP_address
273 249
 </pre>
274 250
 </div>
275 251
 
276 252
 <p>
277
-The GPG public/private key variables are for the filenames of exported GPG keys, and if a private key filename is given then it will be automatically shredded after import.
253
+where /dev/sdX is the device name for the microSD card. Often it's /dev/sdb or /dev/sdc, depending upon how many drives there are on your system. The script will download the Debian installer and update the microSD card. It can take a while, so be patient.
278 254
 </p>
279 255
 
280 256
 <p>
281
-The <a href="https://freedns.afraid.org/">FreeDNS</a> subdomain codes can be found under "Dynamic DNS" and "quick cron example". On the last line it will be the string located between the '?' and the '==' characters.
257
+When the initial setup is done follow the instructions on screen to run the main freedombone command.
282 258
 </p>
259
+</div>
260
+</div>
283 261
 
262
+<div id="outline-container-unnumbered-2" class="outline-2">
263
+<h2 id="unnumbered-2">Checklist</h2>
264
+<div class="outline-text-2" id="text-unnumbered-2">
284 265
 <p>
285
-The syntax of the <b>freedombone</b> command is:
266
+Before running the freedombone command you will need a few things.
267
+</p>
268
+
269
+<ul class="org-ul">
270
+<li>Have some domains, or subdomains, registered with a dynamic DNS service
271
+</li>
272
+<li>System with a new installation of Debian Jessie
273
+</li>
274
+<li>Ethernet connection to an internet router
275
+</li>
276
+<li>It is possible to forward ports from the internet router to the system
277
+</li>
278
+<li>If you want to set up a social network or microblog then you will need SSL certificates corresponding to those domains
279
+</li>
280
+<li>Have ssh access to the system
281
+</li>
282
+</ul>
283
+</div>
284
+</div>
285
+
286
+<div id="outline-container-unnumbered-3" class="outline-2">
287
+<h2 id="unnumbered-3">GPG Keys</h2>
288
+<div class="outline-text-2" id="text-unnumbered-3">
289
+<p>
290
+If you have existing GPG keys then copy the .gnupg directory onto the system.
286 291
 </p>
287 292
 
288 293
 <div class="org-src-container">
289 294
 
290
-<pre class="src src-bash">freedombone --bbb -d [domain name] -u [username] -c [FreeDNS subdomain code] --ddnsuser [FreeDNS username] --ddnspass [FreeDNS password] -s [optional variant type]
295
+<pre class="src src-bash">scp -r ~/.gnupg username@freedombone_IP_address:/home/username
291 296
 </pre>
292 297
 </div>
298
+</div>
299
+</div>
293 300
 
301
+<div id="outline-container-unnumbered-4" class="outline-2">
302
+<h2 id="unnumbered-4">Interactive Setup</h2>
303
+<div class="outline-text-2" id="text-unnumbered-4">
294 304
 <p>
295
-Also see the manpage for additional options which can be used instead of a configuration file. If you don't specify a variant type with the final option then everything will be installed. If you have a <b>freedombone.cfg</b> file then it should be in the same directory from which the <b>freedombone</b> command is run.
305
+The interactive server configuration setup is recommended for most users. On the system where freedombone is to be installed create a configuration file.
296 306
 </p>
297 307
 
298
-<p>
299
-Installation is not quick, and depends upon which variant you choose and your internet bandwidth. Allow about three hours for a full installation on the Beaglebone Black. On the Beaglebone installation is in two parts, since a reboot is needed to enable the hardware random number generator and zram.
300
-</p>
308
+<div class="org-src-container">
309
+
310
+<pre class="src src-bash">ssh username@freedombone_IP_address
311
+su
312
+apt-get install git dialog
313
+git clone https://github.com/bashrc/freedombone
314
+<span class="org-builtin">cd</span> freedombone
315
+make install
316
+</pre>
317
+</div>
301 318
 
302 319
 <p>
303
-When done you can ssh into the Freedombone with:
320
+Now the easiest way to install the system is via the interactive setup.
304 321
 </p>
305 322
 
306 323
 <div class="org-src-container">
307 324
 
308
-<pre class="src src-bash">ssh username@domain -p 2222
325
+<pre class="src src-bash">freedombone menuconfig
309 326
 </pre>
310 327
 </div>
311 328
 
312 329
 <p>
313
-Any manual post-installation setup instructions or passwords can be found in <b>/home/username/README</b>. You should remove any passwords from that file and store them within a password manager such as KeepassX.
330
+You can select which variant you wish to install and then enter the details as requested. A video of the install sequence can be <a href="./installer.ogv">seen here</a>.
314 331
 </p>
315 332
 </div>
316 333
 </div>
317 334
 
318
-<div id="outline-container-unnumbered-3" class="outline-2">
319
-<h2 id="unnumbered-3">On a laptop/PC/netbook</h2>
320
-<div class="outline-text-2" id="text-unnumbered-3">
335
+<div id="outline-container-unnumbered-5" class="outline-2">
336
+<h2 id="unnumbered-5">Non-Interactive Setup</h2>
337
+<div class="outline-text-2" id="text-unnumbered-5">
321 338
 <p>
322
-It's also possible to install Freedombone onto other hardware, including other types of single board computer. Any system with a fresh installation of Debian Jessie will do. Just make sure that you change the variable INSTALLING_ON_BBB to "no" within <b>freedombone.cfg</b> or do not include the <b>&#x2013;bbb</b> option within the <b>freedombone</b> command. Obviously, you don't need to run the <b>freedombone-prep</b> command on non-Beaglebone systems.
339
+If you don't want to install interactively then it's possible to manually create a configuration file as follows:
323 340
 </p>
324 341
 
325
-<ul class="org-ul">
326
-<li>Download the <a href="https://www.debian.org/devel/debian-installer">Debian Jessie "netinst" installer</a>
327
-</li>
328
-<li>Use <a href="https://apps.ubuntu.com/cat/applications/usb-creator-gtk/">Startup Disk Creator</a> or <a href="https://en.wikipedia.org/wiki/UNetbootin">Unetbootin</a> to copy the netinst image to a USB thumb drive
329
-</li>
330
-<li>Connect the machine to your internet router using an ethernet patch lead. Freedombone is a fully free (as in freedom) system and so wifi drivers may not work. A wired network connection will give better performance anyway.
331
-</li>
332
-<li>On the target machine boot from the USB drive and go through the installation. It's a good idea to use LVM and disk encryption together with a long passphrase which will be hard to crack by brute force methods. Keep a note of the passphrase in your password manager.
333
-</li>
334
-<li>Within the installer unselect the <b>print server</b> and select the <b>ssh server</b>
335
-</li>
336
-<li>After installation use ssh to access the machine and become the root user
337
-</li>
338
-</ul>
339
-<div class="org-src-container">
342
+<p>
343
+On the system where freedombone is to be installed create a configuration file.
344
+</p>
340 345
 
341
-<pre class="src src-bash">ssh username@192.168.1.60
342
-su
343
-</pre>
344
-</div>
345
-<ul class="org-ul">
346
-<li>If you have GPG keys you may wish to transfer them to the <b>/home/usernname</b> directory. If the machine has a second USB socket or an SD card slot then that may be the most secure way to do it.
347
-</li>
348
-<li>Run the following commands:
349
-</li>
350
-</ul>
351 346
 <div class="org-src-container">
352 347
 
353
-<pre class="src src-bash"><span class="org-builtin">cd</span> /home/&lt;username&gt;
348
+<pre class="src src-bash">ssh username@freedombone_IP_address
349
+su
354 350
 apt-get install git
355 351
 git clone https://github.com/bashrc/freedombone
356 352
 <span class="org-builtin">cd</span> freedombone
357 353
 make install
358
-nano freedombone.cfg
354
+nano /home/username/freedombone/freedombone.cfg
359 355
 </pre>
360 356
 </div>
361 357
 
362
-<ul class="org-ul">
363
-<li>Now create a configuration file, such as the following, filling in the details for your <a href="https://freedns.afraid.org/">FreeDNS subdomains</a>.
364
-</li>
365
-</ul>
358
+<p>
359
+Add the following, and set the values as needed.
360
+</p>
361
+
366 362
 <div class="org-src-container">
367 363
 
368
-<pre class="src src-bash"><span class="org-variable-name">INSTALLING_ON_BBB</span>=no
369
-<span class="org-variable-name">MY_EMAIL_ADDRESS</span>=&lt;your email address&gt;
370
-<span class="org-variable-name">MY_NAME</span>=&lt;your name/nick/pseudonym&gt;
371
-<span class="org-variable-name">MY_BLOG_TITLE</span>=&lt;title of your blog&gt;
372
-<span class="org-variable-name">MY_BLOG_SUBTITLE</span>=&lt;subtitle of your blog&gt;
373
-<span class="org-variable-name">SSH_PORT</span>=2222
374
-<span class="org-variable-name">FULLBLOG_DOMAIN_NAME</span>=&lt;freedns subdomain for your blog&gt;
375
-<span class="org-variable-name">FULLBLOG_FREEDNS_SUBDOMAIN_CODE</span>=&lt;freedns subdomain code for your blog&gt;
376
-<span class="org-variable-name">MICROBLOG_DOMAIN_NAME</span>=&lt;domain name for your microblog&gt;
377
-<span class="org-variable-name">MICROBLOG_FREEDNS_SUBDOMAIN_CODE</span>=1234
378
-<span class="org-variable-name">REDMATRIX_DOMAIN_NAME</span>=&lt;domain name for your Red Matrix site&gt;
379
-<span class="org-variable-name">OWNCLOUD_DOMAIN_NAME</span>=&lt;freedns subdomain for your Owncloud site&gt;
380
-<span class="org-variable-name">OWNCLOUD_FREEDNS_SUBDOMAIN_CODE</span>=&lt;freedns subdomain code for your Owncloud site&gt;
381
-<span class="org-variable-name">WIKI_TITLE</span>=&lt;title of your wiki&gt;
382
-<span class="org-variable-name">WIKI_DOMAIN_NAME</span>=&lt;freedns subdomain for your wiki&gt;
383
-<span class="org-variable-name">WIKI_FREEDNS_SUBDOMAIN_CODE</span>=&lt;freedns subdomain code for your wiki&gt;
384
-<span class="org-variable-name">MY_GPG_PUBLIC_KEY</span>=&lt;exported public key filename&gt;
385
-<span class="org-variable-name">MY_GPG_PRIVATE_KE</span>=&lt;exported private key filename&gt;
386
-<span class="org-variable-name">PUBLIC_MAILING_LIST</span>=&lt;name of your mailing list&gt;
387
-<span class="org-variable-name">LOCAL_NETWORK_STATIC_IP_ADDRESS</span>=192.168.1.60
388
-<span class="org-variable-name">ROUTER_IP_ADDRESS</span>=192.168.1.254
364
+<pre class="src src-bash"><span class="org-variable-name">MY_EMAIL_ADDRESS</span>=
365
+<span class="org-variable-name">MY_NAME</span>=
366
+<span class="org-variable-name">MY_BLOG_TITLE</span>=
367
+<span class="org-variable-name">MY_BLOG_SUBTITLE</span>=
368
+<span class="org-variable-name">FULLBLOG_DOMAIN_NAME</span>=
369
+<span class="org-variable-name">MICROBLOG_DOMAIN_NAME</span>=
370
+<span class="org-variable-name">REDMATRIX_DOMAIN_NAME</span>=
371
+<span class="org-variable-name">OWNCLOUD_DOMAIN_NAME</span>=
372
+<span class="org-variable-name">WIKI_DOMAIN_NAME</span>=
373
+<span class="org-variable-name">WIKI_TITLE</span>=
389 374
 <span class="org-variable-name">ENABLE_CJDNS</span>=no
375
+<span class="org-variable-name">LOCAL_NETWORK_STATIC_IP_ADDRESS</span>=
376
+<span class="org-variable-name">ROUTER_IP_ADDRESS</span>=
390 377
 </pre>
391 378
 </div>
392 379
 
393
-<ul class="org-ul">
394
-<li>Save and exit, then run:
395
-</li>
396
-</ul>
380
+<p>
381
+Both of the IP addresses are local IP addresses, typically of the form 192.168.x.x, with one being for the system and the other being for the internet router.
382
+</p>
383
+
384
+<p>
385
+Save the configuration file and exit from your editor.
386
+</p>
387
+
388
+<p>
389
+Now you can begin the installation. If you are doing this on a Beaglebone Black:
390
+</p>
391
+
397 392
 <div class="org-src-container">
398 393
 
399
-<pre class="src src-bash">freedombone -d [your wiki domain name] -u [your username] -c [your wiki FreeDNS domain code] --ddnsuser [FreeDNS username] --ddnspass [FreeDNS password]
394
+<pre class="src src-bash">freedombone --bbb -d [default domain name] -u [username] --ddns [dynamic DNS provider domain] --ddnsuser [dynamic DNS username] --ddnspass [dynamic DNS password]
400 395
 </pre>
401 396
 </div>
397
+
398
+<p>
399
+Or on any other system don't include the <b>&#x2013;bbb</b> option.
400
+</p>
401
+
402
+<div class="org-src-container">
403
+
404
+<pre class="src src-bash">freedombone -d [default domain name] -u [username] --ddns [dynamic DNS provider domain] --ddnsuser [dynamic DNS username] --ddnspass [dynamic DNS password]
405
+</pre>
406
+</div>
407
+
408
+<p>
409
+The above command should be run in the same directory in which your configuration file exists. You can use any of your domains as the default one, but typically the default domain is the same as the one for your wiki.
410
+</p>
411
+
412
+<p>
413
+Also see the manpage for additional options which can be used instead of a configuration file. If you don't specify a variant type with the final option then everything will be installed. If you have a <b>freedombone.cfg</b> file then it should be in the same directory from which the <b>freedombone</b> command is run.
414
+</p>
402 415
 </div>
403 416
 </div>
404 417
 
405
-<div id="outline-container-unnumbered-4" class="outline-2">
406
-<h2 id="unnumbered-4">Internet Router</h2>
407
-<div class="outline-text-2" id="text-unnumbered-4">
418
+<div id="outline-container-unnumbered-6" class="outline-2">
419
+<h2 id="unnumbered-6">Post-Setup</h2>
420
+<div class="outline-text-2" id="text-unnumbered-6">
421
+<p>
422
+Setup of the server and installation of all the relevant packages is not quick, and depends upon which variant you choose and your internet bandwidth. Allow about three hours for a full installation on the Beaglebone Black. On the Beaglebone installation is in two parts, since a reboot is needed to enable the hardware random number generator and zram.
423
+</p>
424
+
425
+<p>
426
+When done you can ssh into the Freedombone with:
427
+</p>
428
+
429
+<div class="org-src-container">
430
+
431
+<pre class="src src-bash">ssh username@domain -p 2222
432
+</pre>
433
+</div>
434
+
408 435
 <p>
409
-On your internet router, typically under firewall settings, open the following ports and forward them to the Freedombone.
436
+Any manual post-installation setup instructions or passwords can be found in /home/username/README. You should remove any passwords from that file and store them within a password manager such as KeepassX.
437
+</p>
438
+
439
+<p>
440
+On your internet router, typically under firewall settings, open the following ports and forward them to your server.
410 441
 </p>
411 442
 
412 443
 <table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
@@ -502,6 +533,24 @@ On your internet router, typically under firewall settings, open the following p
502 533
 </table>
503 534
 </div>
504 535
 </div>
536
+<div id="outline-container-unnumbered-7" class="outline-2">
537
+<h2 id="unnumbered-7">On Client Machines</h2>
538
+<div class="outline-text-2" id="text-unnumbered-7">
539
+<p>
540
+You can configure laptops or desktop machines which connect to the Freedombone server in the following way. This alters encryption settings to improve overall security.
541
+</p>
542
+
543
+<div class="org-src-container">
544
+
545
+<pre class="src src-bash">sudo apt-get install git dialog
546
+git clone https://github.com/bashrc/freedombone
547
+<span class="org-builtin">cd</span> freedombone
548
+sudo make install
549
+freedombone-client
550
+</pre>
551
+</div>
552
+</div>
553
+</div>
505 554
 </div>
506 555
 <div id="postamble" class="status">
507 556