Mix-Server Konfiguration

From JonDonym Wiki
Jump to: navigation, search

En2.png De2.png   <- zurück | Übersicht | weiter ->

Contents

MixConfigTool installieren

Die Konfiguration der Mix-Server erfolgt mit einer komplexen XML-Datei. Um die Betreiber bei der Erstellung der Konfiguration zu unterstützen, bieten wir das MixConfigTool an. Das Tool sorgt dafür, dass eine fehlerfreie Konfiguration erstellt wird.

Das MixConfigTool ist eine Java-Anwendung. Man benötigt eine Java Laufzeitumgebung, um die Anwendung zu starten. Wir empfehlen Sun-Java6 oder OpenJDK6.

  • Für Windows kann man Java von der Website http://www.java.sun.com herunterladen.
  • Unter Linux/UNIX kann man Java mit der Paketverwaltung installieren. Nutzen sie die Pakete sun-java6-jre oder openjdk6-jre.

Das MixConfigTool steht als JAR-Datei zum Download bereit: MixConfig.jar (sig). Nach dem Download startet man das Tool auf der Kommandozeile mit:

java -jar /path/to/MixConfig.jar

Debian/Ubuntu Paket

Für Debian und Ubuntu steht das MixConfigTool auch im Repository der JonDos GmbH zur Verfügung. Die Einbindung des Repository ist in der JonDo Online-Hilfe beschrieben.

Das MixConfigTool und eine evtl. noch benötigte Java Laufzeitumgebung wird installiert mit:

sudo apt-get update 
sudo aptitude install mix-config-tool

Nach der Installation findet man in der Programmgruppe Dienstprogramme einen Menüeintrag, um das Tool zu starten.

Mix Konfiguration erstellen

Nach dem Start des MixConfigTool wählt man den Button "Create new configuration..." und folgt dem Assistenten.

1. Schritt: Parameter zur Mix-Kaskade

Screenshot 1

  • Es ist die Position des eigenen Mixes in der Kaskade zu wählen (Entry-, Middle oder Exit-Mix).
  • Für Premiumdienste ist die Option enable payment zu aktivieren.
  • Nur bei Entry-Mixen ist der Name der Kaskade einzutragen.
  • Es sind die Netzwerkschnittstellen und Ports zu konfigurieren, an denen der Mix lauscht.

Bei Entry-Mixen ist es üblich drei Ports für eingehende Verbindungen zu öffnen (80, 443 and 6544). Middle- und Exit-Mixe verwenden in der Regeln nur Port 6544, da nur eine Verbindung vom vorherigen Mix aktzeptiert wird. Vergessen sie nicht die Anpassung der Firewall-Regeln auf dem Server.

2. Schritt: Parameter für den Mix-Prozess

Screenshot 2

  • Logging: Normalerweise wird man im Produktionsbetrieb die Logdateien in ein Verzeichnis schreiben. Größe und maximale Anzahl der alten Logdateien können angegeben werden. Der Mix kümmert sich selbstständig um die Rotation der Logdateien. Um bei Problemen helfen zu können, kann es für die Entwickler hilfreich sein, die letzten Logdaten zu lesen. Um das Senden der Logs zu vereinfachen, sollten sie die Dateigröße der Log Dateien auf 2 MB begrenzen
  • Encrypted LOg Certificate: Die Logdaten können mit einem X.509-Zertifikat verschlüsselt werden. Das sollte unbedingt genutzt werden, wenn sensible Informationen ins Log geschrieben werden. (lawful inspection log)
  • Es ist die UID eines niedrig privilegierten System-Users anzugeben. Der Mix wechselt nach dem Start zu dieser UID.
  • Max. Number of FD: Die max. Anzahl der offenen Filedeskriptoren ist anzugeben, üblicherweise 32768.
  • Max Number of Users: Nur für Entry-Mixe ist die maximale Anzahl der Nutzer der Kaskade zu konfigurieren.
  • Server Monitoring: Wurde die Mix-Software mit der Option --enable-server_monitoring kompiliert, kann das Netzwerk-Interface und der Port spezifiziert werden, an welchem der Mix Statusinformationen als XML-Datei bereitstellt. Für die Einbindung in Nagios gibt es ein Nagios-Plugin.

Traffic Shaping für kostenfreie Entry-Mixe

Für kostenfreie Exit-Mixe ist die Bandbreitenbegrenzung (Traffic Shaping) für die Nutzer zu konfigurieren. Die Shaping Parameter gelten für einen einzelnen Nutzer. Sie sind unabhängig von der Nutzerzahl der Kaskade. Um den Traffic für jeden Nutzer auf 120 kBit/sec zu begrenzen, sind folgende Werte zu setzen:

  • Additional Latency (ms): 0
  • Shaping Interval (ms): 1000
  • Shaping Interval (packets): 20
  • Unshaped Traffic (packets): 0

Traffic Shaping für kostenfreie Exit-Mixe

Für kostenfreie Exit-Mixe ist ebenfalls die Bandbreitenbegrenzung (Traffic Shaping) für die Nutzer zu konfigurieren. Die Shaping Parameter gelten für einen einzelnen Nutzer. Sie sind unabhängig von der Nutzerzahl der Kaskade. Um den Traffic für jeden Nutzer auf 120 kBit/sec zu begrenzen, sind folgende Werte zu setzen:

  • Additional Latency (ms): 0
  • Shaping Interval (ms): 1000
  • Shaping Interval (packets): 14750
  • Unshaped Traffic (packets): 0

3. Schritt: Erstellen bzw. Importieren der Zertifikate

Screenshot 3

  • Als Erstes ist das Operator-Zertifikat zu importieren bzw. zu erstellen (rechte Seite).
  • Um das Zertifikat zu erstellen, füllen sie die Angaben im unteren Bereich aus und wählen sie den Button Create. Nutzen sie ein starkes Passwort für den Schutz des privaten Schlüssels.
  • Dann ist das Mix-Zertifikat zu erstellen (linke Seite).
  • Die Angaben im unteren Bereich sind auszufüllen und der Button Create zu wählen. Dabei wird das Mix-Zertifikat mit dem Operator-Zertifikat signiert.
  • Abschließend sind die Zertifikate (public) zu exportieren und den Partner-Mixen zur Verfügung zu stellen.

Um das Operator-Zertifikat von der JonDos GmbH signieren zu lassen, kann der Assistent eine E-Mail erstellen.

4. Schritt: Zertifikate der Partner-Mixe importieren

Screenshot 4

An dieser Stelle können die Zertifikate der Partner-Mixe importiert werden. Um eine vollständige Validierung des Zertifizierungspfades zu gewährleisten, sind Mix- und Operator-Zertifikat zu importieren.

5. Schritt: Exit Mix Konfiguration

Screenshot 5

Für Exit-Mixe ist das Listen-Interface des Squid-Proxy zu konfigurieren. Nur für Premium-Exit-Mixe ist auch die Listener Adresse des Dante SOCKS Proxies zu konfigurieren. Laufen beide Dienste mit Standard-Einstellungen, sind folgende Werte einzutragen:

Squid:   HTTP Proxy  |  Raw/TCP  |  localhost  |  3128
Dante:  Socks Proxy  |  Raw/TCP  |  localhost  |  1080      (nur für Premium Exits)

6. Schritt: CSR und Zertifikate an JonDos GmbH senden (optional)

Screenshot 6

Abschließend kann man eine E-Mail erstellen lassen, welche die Zertifikate und den CSR an die JonDos GmbH sendet. Man erhält ein signiertes Operator-Zertifikat per E-Mail als Antwort. Dieses Zertifikat ist unter 4. Schritt zu importieren.

Die JonDos GmbH kann den Austausch der Zertifikate zwischen den Betreibern organisieren.

Sind alle Angaben vollständig, kann man die Konfiguration speichern und auf den Server übertragen.

Personal tools