From b68a7e78c8869b6e4c543cfcee0eb4ab772e622b Mon Sep 17 00:00:00 2001 From: lars Date: Thu, 15 Sep 2005 01:35:29 +0000 Subject: [PATCH] static doc pages added autorun.ini, start.html and shellopn added changed URLs in css to relative links --- cbox-tree.d/_offline/doc/CryptoBox.html | 379 +++++++++++++++++ cbox-tree.d/_offline/doc/CryptoBoxDev.html | 99 +++++ .../_offline/doc/CryptoBoxDevBackground.html | 116 ++++++ .../_offline/doc/CryptoBoxDevCustomBuild.html | 148 +++++++ .../doc/CryptoBoxDevCustomConfigure.html | 110 +++++ .../doc/CryptoBoxDevKnownProblems.html | 79 ++++ .../_offline/doc/CryptoBoxDevPreparation.html | 136 +++++++ .../_offline/doc/CryptoBoxDevValidation.html | 107 +++++ .../_offline/doc/CryptoBoxDevWorkFlow.html | 195 +++++++++ cbox-tree.d/_offline/doc/CryptoBoxEn.html | 127 ++++++ .../_offline/doc/CryptoBoxKonzept.html | 384 ++++++++++++++++++ cbox-tree.d/_offline/doc_footer.inc | 12 + cbox-tree.d/_offline/doc_header.inc | 30 ++ cbox-tree.d/_offline/shellopn.exe | Bin 0 -> 23552 bytes cbox-tree.d/_offline/shellopn.zip | Bin 0 -> 18785 bytes cbox-tree.d/autorun.inf | 2 + cbox-tree.d/start.html | 11 + .../html/en/CryptoBoxDevPreparation.html | 4 +- cbox-tree.d/var/www/cryptobox.css | 6 +- scripts/cbox-dev.sh | 1 + scripts/userdocexport.sh | 14 +- 21 files changed, 1954 insertions(+), 6 deletions(-) create mode 100644 cbox-tree.d/_offline/doc/CryptoBox.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxDev.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxDevBackground.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxDevCustomBuild.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxDevCustomConfigure.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxDevKnownProblems.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxDevPreparation.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxDevValidation.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxDevWorkFlow.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxEn.html create mode 100644 cbox-tree.d/_offline/doc/CryptoBoxKonzept.html create mode 100644 cbox-tree.d/_offline/doc_footer.inc create mode 100644 cbox-tree.d/_offline/doc_header.inc create mode 100644 cbox-tree.d/_offline/shellopn.exe create mode 100644 cbox-tree.d/_offline/shellopn.zip create mode 100644 cbox-tree.d/autorun.inf create mode 100644 cbox-tree.d/start.html diff --git a/cbox-tree.d/_offline/doc/CryptoBox.html b/cbox-tree.d/_offline/doc/CryptoBox.html new file mode 100644 index 0000000..5c09757 --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBox.html @@ -0,0 +1,379 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +

-> english overview <-

    + +
  1. +Überblick +
      + +
    1. +Was kann die CryptoBox? +
    2. + +
    3. +Was brauchst du? +
    4. + +
    5. +Spezifikationen +
    6. + +
    + +
  2. +Nutzung +
      + +
    1. +Einrichtung +
    2. + +
    3. +tägliche Nutzung +
    4. + +
    5. +Optimierung +
    6. + +
    7. +Vor- & Nachteile +
    8. + +
    + +
  3. +Entwicklung +
      + +
    1. +Anforderungen +
    2. + +
    3. +Mitmachen +
    4. + +
    5. +Versionsverwaltung +
    6. + +
    7. +Vor- & Nachteile +
    8. + +
    + +
  4. +Rechtliches +
  5. + +
+

+
+

+ +

Überblick

+ +

Die CryptoBox ist eine Live-CD mit der sich jeder alte Rechner in Sekundenschnelle in einen verschlüsselnden Server umwandeln lässt. Damit kannst du sensible Daten speichern, ohne dass du etwas über Kryptografie wissen musst.

+ +

Was kann die CryptoBox?

+ +
    +
  • Ein vollständiger Samba-Dateiserver (für alle freien Betriebssysteme, sowie Windows und Mac OS) bietet Zugriff auf deine Daten.

    +
  • +
  • Deine Daten werden mit AES verschlüsselt (256 Bit Schlüssellänge).

    +
  • +
  • Die Web-Oberfläche bietet dir kinderleichten Zugriff auf alle Funktionen der CryptoBox.

    +
      +
    • Verwaltung des verschlüsselten Dateisystems

      +
    • +
    • Konfiguration der Netzwerk- und Sicherheitseinstellungen

      +
    • +
    • Abgesehen von deinem Browser brauchst du keine weiteren Programme

      +
    • +
    +
  • +
+ +

Was brauchst du?

+ +
    +
  • einen ausrangierten Rechner

    +
      +
    • jeder gängige PC ab Baujahr 1992 genügt

      +
    • +
    • Monitor, Tastatur, Maus usw. sind nicht erforderlich

      +
    • +
    • das BIOS sollte von einer CDROM booten können (andernfalls ist zusätzlich ein Disketten-Laufwerk erforderlich)

      +
    • +
    +
  • +
  • eine Festplatte (in deiner Wunschgröße)

    +
  • +
  • eine Netzwerk-Karte

    +
  • +
  • die CryptoBox-CD

    +
  • +
  • keinerlei Wissen über Netzwerke oder Kryptografie

    +
  • +
+ +

Spezifikationen

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+

System

+
+

Debian/Linux basierte Live-CD

+
+

benötigter Computer

+
+

"ausrangierter" PC (i386 ab p1 mind. 32MB RAM)

+
+

unterstützte Clients

+
+

*nix; *bsd; Windows; Mac OS

+
+

interner Fileserver

+
+

samba (Netzwerkfreigaben)

+
+

Benutzerschnittstelle

+
+

per Browser bedienbar (Perl-Webinterface via https)

+
+

Verschlüsselung

+
+

AES via device-mapper

+
+
+

Das CryptoBoxKonzept beschreibt die technischen Feinheiten etwas näher.

+ +

Nutzung

+ + +

Einrichtung

+ +
    +
  1. Lade dir ein iso-Image aus dem Download-Bereich herunter. [Die Entwicklung der CryptoBox befindet sich noch in einer frühen Phase. Momentan testen wir die ersten lauffähigen, funktionstüchtigen Versionen. In wenigen Tagen wird das erste Release verfügbar sein.]

    +
  2. +
  3. Kopiere dieses Image auf eine CD (RW).

    +
  4. +
  5. Starte den zukünftigen Datei-Server mit der CryptoBox-LiveCD im Laufwerk.

    +
  6. +
  7. Benutze die Web-Oberfläche der CryptoBox für:

    +
      +
    1. die Netzwerk- und Sicherheitseinstellungen

      +
    2. +
    3. die Einrichtung des verschlüsselten Dateisystems

      +
    4. +
    +
  8. +
  9. Fertig ist deine persönliche CryptoBox.

    +
  10. +
+ +

tägliche Nutzung

+ +
    +
  1. Schalte deine CryptoBox ein. -kurz warten-

    +
  2. +
  3. Gib im Browser das Kennwort fuer die verschlüsselten Daten ein.

    +
  4. +
  5. Verwende die Daten der auf deiner CryptoBox bequem als Netzlaufwerk.

    +
  6. +
+ +

Optimierung

+ +

Du hast einen Verbesserungsvorschlag oder findest gar einen Fehler:

+
    +
  • Schreib's in unsere Gedankensammelstelle - wir beheben das Problem oder nehmen, bei Unklarheiten, Kontakt mit dir auf.

    +
  • +
+ +

Vor- & Nachteile

+ +

Hier werden markantesten Vor- und Nachteile der CryptoBox Live-CD aus Sicht der NutzerInnen vorgestellt.

+
    +
  • Vorteile:

    +
      +
    • einfache Handhabung - kein spezielles Fachwissen notwendig

      +
    • +
    • erfordert keinerlei Softwareinstallation

      +
    • +
    • mehrere Rechner im Netz können zentral sensible Daten speichern und teilen

      +
    • +
    • im ausgeschaltenen Zustand sind die Daten für Unbefugte unbrauchbar (starke Verschlüsselung)

      +
    • +
    • das System ist resistent gegenüber Schadsoftware (Viren, Würmer), da die CD nicht beschreibbar ist

      +
    • +
    • die Übertragung des Passworts zur Aktivierung der Crypto-Daten erfolgt verschlüsselt (HTTPS)

      +
    • +
    • basiert auf einer der stabilsten und sichersten Linux Distributionen (Debian)

      +
    • +
    • minimale Hardware-Anforderungen

      +
    • +
    +
  • +
  • Nachteile:

    +
      +
    • ein extra Rechner ist notwendig (Stromverbrauch, Platzbedarf)

      +
    • +
    • das lokale Netz muss vertrauenswürdig sein

      +
    • +
    • die CryptoBox-CD muss gegen einen böswilligen Austausch gesichert werden (z.B. ein physisches Siegel)

      +
    • +
    +
  • +
+ +

Entwicklung

+ +

Eine CryptoBox-LiveCD wird in folgenden Schritten erstellt:

+
    +
  1. ein minimales Debian-System erzeugen (mit dfsbuild)

    +
  2. +
  3. spezifische Anpassungen des Systems vornehmen

    +
  4. +
  5. die Verwaltungs- und cgi-Skripte hinzufügen

    +
  6. +
  7. ein iso-Image daraus erzeugen

    +
  8. +
+

Diese Schritte werden automatisiert durch ein Skript ausgeführt und können beliebig angepasst werden.

+

Ausführlichere Infos gibt's unter CryptoBoxDev.

+ +

Anforderungen

+ +
    +
  • ein Debian-System (eine chroot-Umgebung genügt auch)

    +
  • +
  • qemu zum Testen des erzeugten Systems in einer virtuellen Umgebung

    +
  • +
+ +

Mitmachen

+ +

Beteilige dich an der Entwicklung der CryptoBox und werde reich und schön! ;)
+ Nee im Ernst, wir freuen uns über jeden partizipierenden Menschen. Du wirst in einem entspannten Team reichlich Erfahrungen sammeln, eine nützliche Sache voranbringen und - wer weiß - vielleicht macht dich das auch schön. Schreib eine Mail an svn-cryptobox[at]lists.systemausfall.org und hab Spaß.

+ +

Versionsverwaltung

+ +

Wir verwenden subversion zur Koordination der Arbeit an der CryptoBox. Der Lese-Zugang zum Repository ist öffentlich.

+

Das Repository ist über folgende Adressen erreichbar:

+
+
Kommandozeile
+

https://svn.systemausfall.org/svn/cryptobox

+
+
Web-Interface
+

https://systemausfall.org/websvn/cryptobox

+
+
+ +

Vor- & Nachteile

+ +
    +
  • Vorteile:

    +
      +
    • schnelle Aktualisierung, durch das einfache build-System

      +
    • +
    • Verwendung von Debian/stable Paketen (no dirty Hacks)

      +
    • +
    +
  • +
  • Nachteile:

    +
      +
    • ?

      +
    • +
    +
  • +
+ +

Rechtliches

+ +
    +
  1. Alle Skripte unterliegen der GPL - sie sind also quasi vollständig frei.

    +
  2. +
  3. Die Dokumentation unterliegt einer Creative Commons-Lizenz, damit wird die Möglichkeit der freien Verbreitung des gesammelten Wissens gewährleistet.

    +
  4. +
  5. Wir übernehmen keinerlei Haftung für eventuelle Folgen, die durch die Nutzung einer CryptoBox entstehen könnten.

    +
  6. +
+ + +
+

last edited 2005-08-31 09:13:52 by

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxDev.html b/cbox-tree.d/_offline/doc/CryptoBoxDev.html new file mode 100644 index 0000000..22a3c90 --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxDev.html @@ -0,0 +1,99 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +
    + +
  1. +Development documentation +
  2. + +
  3. +Contact +
  4. + +
  5. +Bug reports +
  6. + +
+

+
+

+ +

Development documentation

+ +

The following pages are written for developers only. Users of the CryptoBox should read ?CryptoBoxUser instead.

+ + +

Contact

+ +

We are waiting for your emails to cryptobox[at]systemausfall.org.

+ +

Bug reports

+ +

Please use our issue tracker, if you discover problems: https://systemausfall.org/trac/cryptobox

+ + +
+

last edited 2005-09-13 23:50:26 by lars

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxDevBackground.html b/cbox-tree.d/_offline/doc/CryptoBoxDevBackground.html new file mode 100644 index 0000000..37015bb --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxDevBackground.html @@ -0,0 +1,116 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +
    + +
  1. +dfsbuild +
  2. + +
  3. +the kernel +
  4. + +
  5. +qemu +
  6. + +
  7. +alternative LiveCDs +
  8. + +
+

+
+

+

back to CryptoBoxDev

+ +

dfsbuild

+ +

The base system of the CryptoBox Live-CD is created by dfsbuild.

+

It is recommended to use some kind of caching tool for the retrieval of the debian packages (e.g.: apt-cacher or apt-proxy). This saves a lot of bandwidth and time.

+

The documentation for dfsbuild is sparse. But it is quite unlikely, that you will get in direct contact with it, as it is wrapped by cbox-build. However the following links may help you for specific problems:

+ + +

the kernel

+ +

The linux kernel for the CryptoBox is compiled statically. If you want to change it, you could follow this steps:

+
    +
  1. get the sources: apt-get install kernel-tree-2.6.11 (or the version of your choice)

    +
  2. +
  3. copy the exisiting config file kernel/config-2.6.11 as .config into your kernel source directory

    +
  4. +
  5. build the debian kernel package make-kpkg --revision=1.dfs --rootcmd=fakeroot kernel_image

    +
  6. +
  7. change the kernel in the unpackdebs setting in dfs-cbox.conf (see CryptoBoxDevCustomBuild for details)

    +
  8. +
+ +

qemu

+ +

Qemu is a portable system emulator. It is a convenient tool to ease the development workflow, as you do not need to burn LiveCDs for testing.

+ +

alternative LiveCDs

+ +

We tried some other LiveCDs before we decided to use dfsbuild. The following pages describe their advantages and disadvantages as the base system for the CryptoBox:

+ + + +
+

last edited 2005-09-13 23:03:58 by lars

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxDevCustomBuild.html b/cbox-tree.d/_offline/doc/CryptoBoxDevCustomBuild.html new file mode 100644 index 0000000..e489be4 --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxDevCustomBuild.html @@ -0,0 +1,148 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +
    + +
  1. +Overview +
  2. + +
  3. +Settings +
      + +
    1. +dfsbuild settings +
    2. + +
    3. +CryptoBox development configuration +
    4. + +
    5. +SSH connection +
    6. + +
    7. +qemu network configuration +
    8. + +
    + +
  4. + +
+

+
+

+

back to CryptoBoxDev

+ +

Overview

+ +

The following sections are useful, if you want to change the default settings of your personal CryptoBox development environment.

+

You should have completed the steps described in CryptoBoxDevPreparation.

+ +

Settings

+ + +

dfsbuild settings

+ +

All settings for dfsbuild can be found in etc-defaults.d/dfs-cbox.conf.

+

If you want to change any of them, you should do the following:

+
    +
  1. copy etc-defaults.d/dfs-cbox.conf file to etc-local.d/

    +
  2. +
  3. change etc-local.d/dfs-cbox.conf according to your needs

    +
  4. +
+

This allows you to use your own (personal) settings, without interfering with files under version control.

+ +

CryptoBox development configuration

+ +

Some settings regarding the building, configuring and validating of the CryptoBox can be found in etc-defaults.d/cbox-dev.conf.

+

If you want to change any of them, you should do the following:

+
    +
  1. copy etc-defaults.d/cbox-dev.conf file to etc-local.d/

    +
  2. +
  3. change etc-local.d/cbox-dev.conf according to your needs

    +
  4. +
+ +

SSH connection

+ +

The file etc-defaults.d/ssh_config is used to establish a connection to a running CryptoBox system.

+

It can be necessary to change these settings, if:

+
    +
  • you do not want to use the default IP for the CryptoBox

    +
  • +
  • or the CryptoBox is not within your local network.

    +
  • +
+

If you want to change some settings, you should do the following:

+
    +
  1. copy etc-defaults.d/ssh_config file to etc-local.d/

    +
  2. +
  3. change etc-local.d/ssh_config according to your needs

    +
  4. +
+ +

qemu network configuration

+ +

The file etc-defauolts.d/qemu-ifup is used for the CryptoBox emulation with qemu. See man qemu for details.

+

If you want to change some settings, you should do the following:

+
    +
  1. copy etc-defaults.d/qemu-ifup file to etc-local.d/

    +
  2. +
  3. change etc-local.d/qemu-ifup according to your needs

    +
  4. +
+ + +
+

last edited 2005-09-05 16:14:50 by

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxDevCustomConfigure.html b/cbox-tree.d/_offline/doc/CryptoBoxDevCustomConfigure.html new file mode 100644 index 0000000..79c1923 --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxDevCustomConfigure.html @@ -0,0 +1,110 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +
    + +
  1. +Overview +
  2. + +
  3. +Locations +
  4. + +
  5. +Examples +
  6. + +
+

+
+

+

back to CryptoBoxDev

+ +

Overview

+ +

You may change nearly every aspect of the CryptoBox by using the custom configuration hook directory.

+

Any script inside of this directory will be executed after the default configuration procedure (see CryptoBoxDevWorkFlow).

+

The order of execution is defined by the names of the scripts (alphabetically).

+ +

Locations

+ +

Some example customization scripts can be found in configure-examples.d/.

+

You may put your scripts into configure-local.d/. They will be sourced by cbox-build.sh.

+ +

Examples

+ +

The examples in configure-examples.d/ can be copied to configure-local.d/ and adjusted to your needs.

+
+
set_default_ip
+

change the default IP address of the CryptoBox

+
+
set_default_language
+

set the default language

+
+
set_default_timeout
+

set the default idle time for automatic unmounting

+
+
set_hostname
+

change the default hostname

+
+
set_root_pw
+

change the password of root (only useful for a development CryptoBox)

+
+
import_authorized_keys
+

upload a ssh key for passwordless access to a development CryptoBox

+
+
set_scan_devices
+

where to look for usable harddisks

+
+
+ + +
+

last edited 2005-09-05 20:16:37 by

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxDevKnownProblems.html b/cbox-tree.d/_offline/doc/CryptoBoxDevKnownProblems.html new file mode 100644 index 0000000..4602d2a --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxDevKnownProblems.html @@ -0,0 +1,79 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +
    + +
  1. +qemu +
      + +
    1. +smbd: segfault +
    2. + +
    + +
  2. + +
+

+
+

+ +

qemu

+ +

== interleaved files not (yet) supported = You should update qemu to version 0.7 or higher.

+ +

smbd: segfault

+ +

This happens under certain circumstances. We do not know a solution for this problem.

+ + +
+

last edited 2005-09-13 23:17:39 by lars

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxDevPreparation.html b/cbox-tree.d/_offline/doc/CryptoBoxDevPreparation.html new file mode 100644 index 0000000..409ecfa --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxDevPreparation.html @@ -0,0 +1,136 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +
    + +
  1. +Software requirements +
      + +
    1. +Packages +
    2. + +
    3. +Kernel +
    4. + +
    + +
  2. +Get the source +
  3. + +
  4. +First build +
  5. + +
  6. +Finished +
  7. + +
+

+
+

+

back to CryptoBoxDev

+ +

Software requirements

+ + +

Packages

+ +

We use Debian as our development environment. This was a natural choice, as the CryptoBox-LiveCD is also based on Debian. Other distributions should work too, of course - YMMV.

+

required:

+ +

recommended:

+ + +

Kernel

+ +

If you want to use qemu to test your CryptoBox in a virtual environment, then you will need the tun/tap kernel feature. +

+
+CONFIG_TUN=m
+ +

Get the source

+ +

Download the latest release from our subversion-Repository: +

+
+svn checkout https://svn.systemausfall.org/svn/cryptobox/trunk 
+ +

First build

+ +

run scripts/cbox-build.sh release as root - hopefully, there should be no errors :)

+

Hint: This step will fail, if you did not install apt-cacher. See CryptoBoxDevCustomBuild for details on how to change the build-configuration settings (in this case: mirror in dfs-cbox.conf).

+ +

Finished

+ +

Now you can start to pariticipate in the development of the CryptoBox or simply customize your own CryptoBox-LiveCD.

+

See CryptoBoxDevWorkFlow for details of how to use the developer's tools of the CryptoBox.

+

CryptoBoxDevCustomBuild shows some examples for local customizations of the CryptoBox.

+ + +
+

last edited 2005-09-14 09:43:11 by lars

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxDevValidation.html b/cbox-tree.d/_offline/doc/CryptoBoxDevValidation.html new file mode 100644 index 0000000..37dc4c3 --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxDevValidation.html @@ -0,0 +1,107 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +
    + +
  1. +Overview +
  2. + +
  3. +Validate +
  4. + +
  5. +How to create a test +
  6. + +
+

+
+

+

back to CryptoBoxDev

+ +

Overview

+ +

The validation feature allows to check the programming logic of the CryptoBox. A lot of test cases are defined to test as many functions of the CryptoBox as possible.

+

The requests are processed with curl.

+

The received web page is saved to allow a later design review or css debugging.

+

The current state of the CryptoBox is represented by ten single values (e.g.: box is configured, IP of the box, current language setting, ...), which are invisibly a part of each html page (as comments). The returned status of every request is compared to the predicted value of the test case.

+

Similar test cases are pooled into test groups (e.g.: initialization, configuration and mounting).

+ +

Validate

+ +

Run scripts/validate.sh check_all to conduct all tests of all groups. See scripts/validate.sh help for other actions.

+

The results will be saved in validation/report.

+

In addition to every single retrieved page, a html page called summary.html is created, which contains the state checks of all tests in a group.

+ +

How to create a test

+ +

All test cases can be found in validation/test-cases.

+

Every test consists of:

+
+
input.curl
+

the configuration file for the curl request

+
+
output
+

the predicted state of the CryptoBox after the call

+
+
description
+

a short description of the test (will be used for the summary)

+
+
delay
+

[optional] time to wait after this test

+
+
+

Use the existing test cases as templates for new tests.

+

Any logical path of the web interface CGI should be validated by a test case.

+ + +
+

last edited 2005-09-13 22:09:03 by lars

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxDevWorkFlow.html b/cbox-tree.d/_offline/doc/CryptoBoxDevWorkFlow.html new file mode 100644 index 0000000..cd10a27 --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxDevWorkFlow.html @@ -0,0 +1,195 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +
    + +
  1. +Preparations +
  2. + +
  3. +Create a CryptoBox-LiveCD - step by step +
      + +
    1. +Build the base system +
    2. + +
    3. +Configure the base image +
    4. + +
    5. +Remove development features +
    6. + +
    7. +Create an iso image +
    8. + +
    9. +Burn the CD +
    10. + +
    + +
  4. +Test the CryptoBox-LiveCD +
      + +
    1. +Chroot: quick & dirty tests +
    2. + +
    3. +Qemu: nearly complete emulation +
    4. + +
    + +
  5. +Debugging and merging +
      + +
    1. +Development on a running system +
    2. + +
    3. +Uploading a new release +
    4. + +
    + +
  6. + +
+

+
+

+

back to CryptoBoxDev

+ +

Preparations

+ +

You should have completed the steps described in CryptoBoxDevPreparation.

+ +

Create a CryptoBox-LiveCD - step by step

+ +

The following steps can be executed in the order of their appearance.

+

Usually there is no need to repeat the whole process, after you changed some parts of the CryptoBox. Especially the first step (building of the base system with dfsbuild) may usually be skipped.

+

Every step of the building process must be executed as root.

+ +

Build the base system

+ +

Run scripts/cbox-build.sh dfsbuild to create the base system for the LiveCD.

+

The result can be found in _builddir/cd1/image.

+

If you do not want to use the apt-cacher to save bandwidth and time, then you should modify the mirror-setting in dfs-cbox.conf (see CryptoBoxDevCustomBuild for details).

+ +

Configure the base image

+ +

Run scripts/cbox-build.sh config to copy the CryptoBox-specific files to the base image.

+

TODO: link to cbox-build.sh-manpage

+ +

Remove development features

+ +

The original base system, that was created by dfsbuild contains a lot packages and some scripts, that are only useful during development. You should remove them, as they case severe security implications.

+

To reduce the CryptoBox-LiveCD to the usable minimum for operational use, you should run scripts/cbox-build.sh harden.

+ +

Create an iso image

+ +

To burn a CryptoBox-LiveCD, you need an bootable iso9660-image.

+

Create the iso image with scripts/cbox-build.sh iso. The resulting file can be found at _builddir/cd1/cryptobox.iso.

+ +

Burn the CD

+ +

Do it manually: cdrecord -v dev=0,0,0 _builddir/cd1/cryptobox.iso (change the dev setting according to your setup).

+

Let the script do it for you: scripts/cbox-build.sh burn (maybe you have to change the CDWRITER setting in cbox-dev.conf - see CryptoBoxDevCustomBuild).

+

Of course, it is not wise to use CD-R media. CD-RW consume less resources.

+ +

Test the CryptoBox-LiveCD

+ +

This section is only useful for developers, who want to improve or change the CryptoBox system.

+ +

Chroot: quick & dirty tests

+ +

If you modified the perl- or shell-scripts of the CryptoBox, then you can check for syntax errors by running them in a chroot environment. Be careful: you have access to all ressources of your computer, while you are working within a chroot environment - so you can easily repartition your real disk ...

+

To start a chroot environment, you can execute scripts/cbox-dev.sh chroot.

+

For more intensive tests, you may use qemu (see below) or burn real LiveCDs - of course this would take much more time.

+ +

Qemu: nearly complete emulation

+ +

The processor emulator qemu allows you test the CryptoBox in a virtual environment, that is completely separated from your real computer's resources. It is the tool of choice, if you do nat have a real computer around for testing.

+

Beware - there are some problems, when using qemu:

+
    +
  • smbd does not start (segfault)

    +
  • +
  • ???

    +
  • +
+

To start a qemu emulation of the iso image, you may type: scripts/cbox-dev.sh qemu.

+ +

Debugging and merging

+ +

This section is only useful for developers, who want to develop on a running CryptoBox system (emulated or real).

+

You may access the CryptoBox directly or you can use ssh to open a remote session (./cbox-dev.sh ssh).

+ +

Development on a running system

+ +

When you run an emulation or test a real LiveCD, you may encounter problems and bugs. To test your fixes for these problems, it is convenient, to change the running test system. Afterwards you can merge these changes to your local development copy.

+

Type scripts/cbox-dev.sh diff to see the changes, you made on the running CryptoBox system.

+

Type scripts/cbox-dev.sh merge to merge these changes to your local working copy.

+ +

Uploading a new release

+ +

Alternatively you may also upload a new version of your local working copy to the running CryptoBox system.

+

Type scripts/cbox-dev.sh upload - beware: all recent changes you made to the running CryptoBox system, are lost.

+ + +
+

last edited 2005-09-08 14:50:57 by lars

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxEn.html b/cbox-tree.d/_offline/doc/CryptoBoxEn.html new file mode 100644 index 0000000..4477ed9 --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxEn.html @@ -0,0 +1,127 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + + +

News

+ +

This is a first overview of the CryptoBox Live-CD. We apologize for publishing the documentation atm in german only. We started the CryptoBox project for a german speaking association. For now we're deeply into bringing this CD up and running, so we prefer coding than translating docs ;). Sorry!

+

Feel free to start a translation in this wiki. Otherwise just be patient a few weeks. (it's 12th of july as i'm writing)

+

Update [8th of September]: nearly all development related documentations are written in english - take a look at the links in CryptoBoxDev

+

We plan to release the first CryptoBox-LiveCD before October 02005.

+ +

Overview

+ +

The CryptoBox is a Debian/Linux based live-cd. This CD boots up, starting a secure fileserver. Even non-technical users are able to store their data on its encrypted harddisk. There is no special knowledge about cryptgraphy or servers required at all.

+ +

Specs

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+

system

+
+

Debian/Linux based Live-CD

+
+

needed hardware

+
+

"outdated" PC (i386 p1-100 32MB RAM minimum)

+
+

supported clients

+
+

*nix; *bsd; Windows; Mac OS

+
+

internal fileserver

+
+

samba (Networkshares)

+
+

userinterface

+
+

fully remote controlled via webbrowser (Perl,https interface)

+
+

encryption

+
+

AES via device-mapper

+
+
+ +

Development

+ +

Browse the source code in the CryptoBox-websvn

+ +

TODO

+ +

Read more about the CryptoBox in german or try kind of a babelfish.

+ + +
+

last edited 2005-09-08 15:05:11 by lars

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc/CryptoBoxKonzept.html b/cbox-tree.d/_offline/doc/CryptoBoxKonzept.html new file mode 100644 index 0000000..e93a9e4 --- /dev/null +++ b/cbox-tree.d/_offline/doc/CryptoBoxKonzept.html @@ -0,0 +1,384 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
+ + +
    + +
  1. +Allgemeines +
      + +
    1. +Zieleigenschaften +
    2. + +
    3. +Zielgruppe +
    4. + +
    5. +Auslieferungsformen +
    6. + +
    + +
  2. +Dienste +
      + +
    1. +webinterface +
    2. + +
    3. +Samba +
    4. + +
    5. +cups [optional] +
    6. + +
    + +
  3. +Kommunikationssicherheit +
      + +
    1. +Varinate A - Dienste verlangen Zertifikate einer CA +
    2. + +
    3. +Variante B - ipsec +
    4. + +
    5. +Variante C - ssl+iptables +
    6. + +
    + +
  4. +Sicherheit +
      + +
    1. +physisch +
    2. + +
    3. +DAU-Abschirmung +
    4. + +
    5. +system +
    6. + +
    7. +pw aendern +
    8. + +
    + +
  5. +Doku +
  6. + +
  7. +Nerd-Pride +
  8. + +
+

+
+

+ +

Allgemeines

+ + +

Zieleigenschaften

+ +
    +
  • Daten sind in ausgeschaltetem Zustand geschützt

    +
  • +
  • Netz gilt als relativ begrenzt und sicher

    +
      +
    • kaum Schutz vor Hackern im lokalen Netz

      +
    • +
    +
  • +
  • Schutz vor Einbrechern/Hausdurchsuchung

    +
  • +
  • einfache Hardware genuegt (ab 586)

    +
  • +
  • eine grosse Festplatte

    +
  • +
  • (un)mounten ueber einfaches web-interface (mit ssl)

    +
  • +
  • anwenderfreundlich

    +
  • +
+ +

Zielgruppe

+ +
    +
  • untechnische Gruppen mit gesunder Paranoia

    +
  • +
  • keine Vorkenntnisse über Server und Kryptografie notwendig

    +
  • +
  • für Einzelpersonen wegen Energiebedarf wohl eher ungeeignet

    +
  • +
  • alle dürfen es nutzen - Support nur für die Guten

    +
  • +
+ +

Auslieferungsformen

+ +
    +
  • Live-CD + einfache Benutzeranleitung (för ölle)

    +
  • +
  • komplette Entwicklungsdokumentation (för säminörds)

    +
  • +
  • Verweis auf die man-page von dmsetup (för nörds)

    +
  • +
+
+

+ +

Dienste

+ + +

webinterface

+ +
    +
  • Aufgaben:

    +
      +
    • (un)mounten

      +
    • +
    • MAC-Liste setzen

      +
    • +
    • Ausschalt-Knopf

      +
    • +
    • Neu-Initialisierung einer Datenfestplatte

      +
    • +
    • Durchführung eines Backups

      +
        +
      • tar durch ccrypt schicken mit einem per webinterface eingetippten Passwort

        +
      • +
      • eventuell Datei splitten falls größer als [hier beliebige Schwelle einsetzen, z.B.: 650MB]

        +
      • +
      • Ergebnisse sind über samba erreichbar

        +
      • +
      +
    • +
    +
  • +
+ +

Samba

+ +
    +
  • gast-Freigabe ohne Passwort

    +
  • +
+ +

cups [optional]

+ +
    +
  • Druckerdienst (zumindest braucht lobbi das)

    +
      +
    • das is aber nich originol

      +
    • +
    +
  • +
+ +

Kommunikationssicherheit

+ + +

Varinate A - Dienste verlangen Zertifikate einer CA

+ +
    +
  • alle Clients bekommen Zertifikate

    +
  • +
  • die CA liegt auf der crypto-partition

    +
  • +
  • per webinterface koennen neue Zertifikate erzeugt werden

    +
      +
    • fuehlt sich komisch an, muss aber wohl sein - Alternativen? [l]

      +
    • +
    +
  • +
  • http und samba gibt es nur mit einem korrekten Zertifikat der CA

    +
  • +
+ +

Variante B - ipsec

+ +
    +
  • racoon als Schluesselserver

    +
  • +
  • Vorteile:

    +
      +
    • Verschluesselung fuer alle Dienste ohne basteln

      +
    • +
    • wird von Windows unterstuetzt

      +
    • +
    +
  • +
  • Nachteile:

    +
      +
    • für die Labor-wlan-Verbindung war es nicht brauchbar - mystische Ausfaelle

      +
    • +
    +
  • +
+ +

Variante C - ssl+iptables

+ +
    +
  • stunnel macht den Webserver ssl-faehig

    +
  • +
  • samba gibt es auch mit ssl - muss aber vielleicht auch nicht

    +
  • +
  • die MACs der clients müssen freigechaltet werden - iptables

    +
  • +
+ +

Sicherheit

+ + +

physisch

+ +
    +
  • Kernel ohne Konsole konfigurieren

    +
  • +
  • Grafikkarte ausbauen

    +
      +
    • langfrist

      +
    • +
    +
  • +
  • Tastatur-Port kurzschließen :)

    +
  • +
+ +

DAU-Abschirmung

+ +
    +
  • timeout von 60 Minuten - danach samba beenden, crypto unmounten und abschalten

    +
      +
    • Problem: smb-broadcasting-muell wird staendig hin- und herfliegen ... [l]

      +
    • +
    • Lösung: herausfinden, welche Ports echten Datenverkehr darstellen

      +
    • +
    +
  • +
+ +

system

+ +
    +
  • kein ssh

    +
  • +
  • root ohne gueltigen Passworteintrag

    +
  • +
  • eine systempartition (ro)

    +
  • +
  • eine fette daten partition

    +
  • +
+ +

pw aendern

+ +
    +
  • was machen wenn jemand das kennwort geschnappt hat?

    +
      +
    1. ein Backup der Daten erstellen lassen

      +
    2. +
    3. die crypto-Platte neu initialisieren

      +
    4. +
    5. das Backup wieder einspielen - im Idealfall natuerlich mit unserem crypto-Backup-Skript :)

      +
    6. +
    +
  • +
+ +

Doku

+ +
    +
  • jeder Schritt der Erstellung wird per Shell-Skript reproduzierbar gemacht

    +
  • +
  • Ziel: System ohne Unsicherheit, notfalls jedesmal neu bauen lassen :)

    +
  • +
  • Nutzerdoku in ein Wiki

    +
  • +
  • beides in ein svn-repos

    +
  • +
+ +

Nerd-Pride

+ +
    +
  • Erkennung der Netzwerk-Hardware

    +
      +
    • damit wir keine vorkonfigurierten Komplettrechner ausliefern müssen

      +
    • +
    • bei Knoppiix abgucken

      +
    • +
    +
  • +
  • Led, die den crypto-Status anzeigt

    +
  • +
  • externer Abschalter (sanft!) für nicht-atx

    +
  • +
+ + +
+

last edited 2005-07-07 17:18:29 by

+ +
+ + + +
+ + + + + + + + + diff --git a/cbox-tree.d/_offline/doc_footer.inc b/cbox-tree.d/_offline/doc_footer.inc new file mode 100644 index 0000000..f9b4b3c --- /dev/null +++ b/cbox-tree.d/_offline/doc_footer.inc @@ -0,0 +1,12 @@ + + + + + + + + + + diff --git a/cbox-tree.d/_offline/doc_header.inc b/cbox-tree.d/_offline/doc_header.inc new file mode 100644 index 0000000..6e8b411 --- /dev/null +++ b/cbox-tree.d/_offline/doc_header.inc @@ -0,0 +1,30 @@ + + + + + CryptoBox + + + + + + +
+ English
+ Deutsch
+
+ +
+ + +
+ + +
diff --git a/cbox-tree.d/_offline/shellopn.exe b/cbox-tree.d/_offline/shellopn.exe new file mode 100644 index 0000000000000000000000000000000000000000..e7d91bf6107f2d19435a0ebefab3e190f32a71ce GIT binary patch literal 23552 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�W0i?Lkq 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 + + + + Die CryptoBox + + + Automatische Weiterleitung zur Dokumentation ... + + + diff --git a/cbox-tree.d/usr/share/doc/cryptobox/html/en/CryptoBoxDevPreparation.html b/cbox-tree.d/usr/share/doc/cryptobox/html/en/CryptoBoxDevPreparation.html index 4a0e72f..53b66d8 100644 --- a/cbox-tree.d/usr/share/doc/cryptobox/html/en/CryptoBoxDevPreparation.html +++ b/cbox-tree.d/usr/share/doc/cryptobox/html/en/CryptoBoxDevPreparation.html @@ -51,7 +51,7 @@

recommended:

-

last edited 2005-09-13 23:52:54 by lars

+

last edited 2005-09-14 09:43:11 by lars

diff --git a/cbox-tree.d/var/www/cryptobox.css b/cbox-tree.d/var/www/cryptobox.css index e7d4ac5..e7f11e4 100644 --- a/cbox-tree.d/var/www/cryptobox.css +++ b/cbox-tree.d/var/www/cryptobox.css @@ -1,5 +1,5 @@ body { - background-image: url(/cryptobox-img/backg.gif); + background-image: url(cryptobox-img/backg.gif); background-position: top center; background-attachment: fixed; background-repeat: no-repeat; @@ -44,7 +44,7 @@ body { height: 120px; margin: 0; padding: 0; - background-image: url(/cryptobox-img/vault_pingu.png); + background-image: url(cryptobox-img/vault_pingu.png); background-position: top right; background-attachment: scroll; background-repeat: no-repeat; @@ -126,7 +126,7 @@ body { padding: 0 1em; line-height: 1.7em; list-style: none; - background: url(/cryptobox-img/list.gif) center left no-repeat; + background: url(cryptobox-img/list.gif) center left no-repeat; } #footer { diff --git a/scripts/cbox-dev.sh b/scripts/cbox-dev.sh index f11b1bf..c18cab2 100644 --- a/scripts/cbox-dev.sh +++ b/scripts/cbox-dev.sh @@ -8,6 +8,7 @@ # upload - copy your local files to tmpfs on a running cryptobox # diff - compare tmpfs-files on a running cryptobox with the original # merge - apply the diff to the local copy +# ssh - open a ssh connection to a running cryptobox # # problems of this script: # - chroot has to run as root diff --git a/scripts/userdocexport.sh b/scripts/userdocexport.sh index 0b9f2ba..1489675 100755 --- a/scripts/userdocexport.sh +++ b/scripts/userdocexport.sh @@ -19,9 +19,13 @@ WIKI_URL=/toolforge/ CBOX_CGI="/cryptobox?action=doc\&page=" DEST_DIR="$ROOT_DIR/cbox-tree.d/usr/share/doc/cryptobox/html/en" +OFFLINE_DIR="$ROOT_DIR/cbox-tree.d/_offline/doc" IMAGE_DIR="$ROOT_DIR/cbox-tree.d/var/www/cryptobox-img" TMP_DIR=/tmp/$(basename $0)-$$.d +HEADER_FILE=$OFFLINE_DIR/../doc_header.inc +FOOTER_FILE=$OFFLINE_DIR/../doc_footer.inc + [ ! -e "$DEST_DIR" ] && echo "$DEST_DIR does not exist" && exit 1 for PAGE in $PAGES; do @@ -53,7 +57,7 @@ for PAGE in $PAGES; do echo " adjusting links for requisites ..." find "$TMP_DIR" -type f | grep -v '\.html$' | while read a do fname=$(basename "$a") - sed -i "s#=\"[^\"]*/$fname\"#=\"/cryptobox-img/$fname\"#g" "$TMP_FILE" + sed -i "s#=\"[^\"]*/$fname\"#=\"/cryptobox-img/$fname\"#g" "$TMP_FILE" done echo " adjusting wiki links ..." @@ -62,6 +66,14 @@ for PAGE in $PAGES; do # do it twice - somehow, the "g" flag does not work (it should replace multiple occurrences on a line) sed -i "s#=\"$WIKI_URL\([^\.]*\)\"#=\"$CBOX_CGI\1\"#g" "$TMP_FILE" + echo " building static doc page" + offline_file=$OFFLINE_DIR/$(basename $TMP_FILE) + cat "$HEADER_FILE" "$TMP_FILE" "$FOOTER_FILE" >"$offline_file" + sed -i "s#=\"$CBOX_CGI\([^\"]*\)\"#=\"\1.html\"#g" "$offline_file" + sed -i "s#=\"$CBOX_CGI\([^\"]*\)\"#=\"\1.html\"#g" "$offline_file" + sed -i "s#=\"/cryptobox-img#=\"../../var/www/cryptobox-img#g" "$offline_file" + sed -i "s#=\"/cryptobox.css\"#=\"../../var/www/cryptobox.css\"#g" "$offline_file" + echo " finished!" done