Mix Installation (Sourcen für Linux)

From JonDonym Wiki
(Difference between revisions)
Jump to: navigation, search
Line 59: Line 59:
  
 
==== Verzeichnis für Logdaten anlegen ====
 
==== Verzeichnis für Logdaten anlegen ====
Das Verzeichnis der Logdaten und der Name der Logdatein kann in der Mix-Konfiguration angegeben werden. Auch die maximale Größe der Logdateien kann in der Konfiguration angegeben werden. Es ist keine zusätzliche Rotation der Logdaten nötig. Der Mix kümmert sich selbst darum.
+
Das Verzeichnis der Logdaten und der Name der Logdateien kann in der Mix-Konfiguration angegeben werden. Auch die maximale Größe der Logdateien kann in der Konfiguration angegeben werden. Es ist keine zusätzliche Rotation der Logdaten nötig. Der Mix kümmert sich selbst darum.
  
 
Anlegen des Logverzeichnisses:
 
Anlegen des Logverzeichnisses:
Line 68: Line 68:
  
 
==== Start des Mix-Servers ====
 
==== Start des Mix-Servers ====
Es ist eine Konfiguration für den Mix zu erstellen. Üblicherweise wird diese Konfiguration im Verzeichnis ''/etc/mix'' unter dem Namen ''config.xml'' gespeichert. Anschließend startet man den Mix Server mit:
+
Es ist eine Konfiguration für den Mix zu erstellen. Üblicherweise wird diese Konfiguration im Verzeichnis ''/etc/mix'' unter dem Namen ''config.xml'' gespeichert. Anschließend startet man den Mix-Server mit:
  
 
  <code>ulimit -SHn 32768
 
  <code>ulimit -SHn 32768
Line 88: Line 88:
  
 
== Installation des Squid-Proxies (nur für Exit Mixe) ==
 
== Installation des Squid-Proxies (nur für Exit Mixe) ==
Der Squid-Proxy kann mit dem Paket-Manager der verwendeten Distribution installiert werden. Es ist NICHT ''squid3'' zu installieren, sondern die letzte, stabile Version der Reihen 2.7. Für Testzwecke kann außerdem ''lynx'' isntalliert werden.
+
Der Squid-Proxy kann mit dem Paketmanager der verwendeten Distribution installiert werden. Es ist NICHT ''squid3'' zu installieren, sondern die letzte, stabile Version der Reihe 2.7. Für Testzwecke kann außerdem ''lynx'' isntalliert werden.
  
 
  <code>RedHat: yum install squid lynx</code>
 
  <code>RedHat: yum install squid lynx</code>
Line 98: Line 98:
 
  mv squid.conf squid.conf.orig</code>
 
  mv squid.conf squid.conf.orig</code>
  
Die Konfiguration ist durch eine optimierte Konfigurationsdatei zu ersetzen und außerdem ist die JonDonym Blockliste zu installieren. Die beiden nötigen Dateien finden sie im Unterverzeichnis ''misc/Linux'' der Sourcen. Es liegen zwei unterschiedliche Konfigurationen für kostenfreie und Premium-Exit-Mixe vor. Wählen sie die passende Konfiguration aus. Das Beispiel nutzt die Konfiguration für kostenfreie Dienste.
+
Die Konfiguration ist durch eine optimierte Konfigurationsdatei zu ersetzen und außerdem solte die JonDonym Blockliste installiert werden. Die beiden nötigen Dateien finden sie im Unterverzeichnis ''misc/Linux'' der Sourcen. Es liegen zwei unterschiedliche Konfigurationen für kostenfreie und Premium-Exit-Mixe vor. Wählen sie die passende Konfiguration aus. Das Beispiel nutzt die Konfiguration für kostenfreie Dienste.
  
 
  <code>cd /home/mix/stable/misc/Linux
 
  <code>cd /home/mix/stable/misc/Linux
Line 114: Line 114:
  
 
=== Update der JonDonym Blockliste ===
 
=== Update der JonDonym Blockliste ===
Von Zeit zu Zeit wird die Blockliste aktualisiert. Betreiber von Webdiensten bitten JonDonym bei mehrfachem Missbrauch des Dienstes, den Zugriff auf ihre Webseite zu unterbinden. Sie werden über die Mix Operator mailingliste über Aktualisierungen informiert.
+
Von Zeit zu Zeit wird die Blockliste aktualisiert. Betreiber von Webdiensten bitten JonDonym bei mehrfachem Missbrauch des Dienstes, den Zugriff auf ihre Webseite zu unterbinden. Sie werden über die Mix-Operator Mailingliste über Aktualisierungen informiert.
  
 
  <code>cd /home/mix/stable
 
  <code>cd /home/mix/stable
Line 122: Line 122:
  
 
== Installation des Dante SOCKS Proxies (nur für Premium Exit Mixe) ==
 
== Installation des Dante SOCKS Proxies (nur für Premium Exit Mixe) ==
Der Dante SOCKS Proxy kann ebenfalls mit dem Paket-Manager der Distribution installiert werden.
+
Der Dante SOCKS Proxy kann ebenfalls mit dem Paketmanager der Distribution installiert werden.
  
 
  <code>RedHat: yum install dante-server</code>
 
  <code>RedHat: yum install dante-server</code>
  
Wir empfehlen, die Danted Konfiguration zu nutzen, die von der JonDos GmbH bereitgestellt wird. Das Template ''datad.conf.template'' finden sie im Mix Source Code im Unterverzeichnis ''misc/Linux'' enthält auch die Blockliste. Es enthält auch die JonDonym Blockliste. In der Zeile 9 des Templates ist die Variable ''[% extIP %]'' durch die extrne IP-Adresse des Servers zu ersetzen. Man kann den Editor ''pico'' dafür nutzen.
+
Wir empfehlen, die Danted Konfiguration zu nutzen, die von der JonDos GmbH bereitgestellt wird. Das Template ''datad.conf.template'' finden sie im Mixquellcode im Unterverzeichnis ''misc/Linux''. Es enthält auch die JonDonym Blockliste. In der Zeile 9 des Templates ist die Variable ''[% extIP %]'' durch die extrne IP-Adresse des Servers zu ersetzen. Man kann den Editor ''pico'' dafür nutzen.
  
 
  <code>cd /home/mix/stable/misc/Linux
 
  <code>cd /home/mix/stable/misc/Linux
pico danted.conf.template
 
cp -f danted.conf.template /etc/danted.conf
 
/etc/init.d/danted restart</code>
 
 
=== Update der JonDonym Blockliste ===
 
Von Zeit zu Zeit wird die Blockliste aktualisiert. Betreiber von Webdiensten bitten JonDonym bei mehrfachem Missbrauch des Dienstes, den Zugriff auf ihre Webseite zu unterbinden. Sie werden über die Mix Operator mailingliste über Aktualisierungen informiert. Der Template String ''[% extIP %]'' ist durch die externe IP-Adresse zu erstezen.
 
 
<code>cd /home/mix/stable
 
svn update
 
cd misc/Linux
 
 
  pico danted.conf.template
 
  pico danted.conf.template
 
  cp -f danted.conf.template /etc/danted.conf
 
  cp -f danted.conf.template /etc/danted.conf
 
  /etc/init.d/danted restart</code>
 
  /etc/init.d/danted restart</code>

Revision as of 12:57, 12 March 2010

File:En.png File:De.png

Contents

HowTo zur Installation der Mix Server Software

Diese Anleitung beschreibt die Installation des Mixes und nötiger zusätzlicher Software für RedHat Linux. Für Debian and Ubuntu Server stellt die JonDos GmbH Pakete in ihrem Repository zur Verfügung, um die Installation zu vereinfachen. Siehe: Mix Installation (Debian und Ubuntu).

Die Software für den Mix-Server steht als Quellcode zur Verfügung.

Voraussetzungen

Um die Mix-Sourcen zu kompilieren, werden die Bibliotheken OpenSSL (mindestens v.0.9.7) und Xerces-C++ benötigt. Außerdem braucht man einen C++ compiler, make und subversion. Alles Nötige kann mit dem Paket-Management der Distribution installiert werden.

yum install g++ make libssl-devel libxerces-c2-devel subversion

Für Premium-Mixe werden zusätzlich ein PostgreSQL-Datenbank-Server, der passende Client und die C-Bibliotheken für PostgreSQL Clients benötigt.

yum install postgresql postgresql-client libpq-devel

Kompilieren des Quellcodes

Als erstes ist die aktuelle Stable-Version vom Repository auszuchecken. Wir empfehlen, das Verzeichnis /home/mix zu nutzen.

mkdir /home/mix
cd /home/mix
svn checkout https://svn.jondos.de/svn/proxytest/proxytest/branches/stable

Danach ist die Software zu kompilieren und zu installieren:

cd /home/mix/stable
./configure --enable-new-channel-encryption --enable-new-flow-control
make
make install

Zusätzliche Features freischalten

In Abhängigkeit von den benötigten Funktionen können oder müssen einige zusätzliche Features aktiviert werden

 ./configure --enable-new-channel-encryption --enable-new-flow-control --enable-payment .... ....


Für Premiumdienste ist folgendes Feature unbedingt nötig:

  • --enable-payment Payment-Support aktivieren.


Monitoring des Mixes:

  • --enable-server_monitoring Bei Aktivierung dieser Funktion stellt der Mix einen Monitoring Port bereit (üblicherweise Port 8080). Über diesen Port kann man XML-Daten abfragen, die Aukunft über den Status des Mixes und der Kaskade geben. Ein Plug-In zur Einbindung in Nagios findet man in den Sourcen im Verzeichnis misc/nagios.


Logging Features für besondere Situationen:

  • --enable-crime-detection Lawful Inspection freischalten. Die Parameter, welche Daten protokolliert werden sollen, können in der Mix-Konfiguration angegeben werden. Aktivieren sie dieses Feature nur, wenn sie durch authorisierte Behörden dazu gezwungen sind. Nur alle Mixe einer Kaskade gemeinsam können den Zusammenhang von aufgerufenem Dienst und Nutzer herstellen.
  • --enable-dataretentionlog Vorratsdatenspeicherung aktivieren. Aktivieren sie dieses Feature nur, wenn sie wirklich der Meinung sind, im Rahmen der Vorratsdatenspeicherung (VDS) loggen zu müssen. Die JonDos GmbH rät allen Betreibern, keine Daten im Rahmen der VDS zu erheben.


Weitere Features:

  • --enable-bandwidth-limitation Begrenzug der Bandbreite einer Kaskade, kann nur durch den letzten Mix einer Kaksade realisiert werden.

System User Account für den Mix Server anlegen

Es ist keine gute Idee, den Mix mit root-Rechten laufen zu lassen. Legen sie einen System User an, wir empfahlen den Naman mix. Dieser Account ist in der Mix-Konfiguration anzugeben. Der Mix-Server wird nach dem Start zu dieser UID wechseln.

Anlegen eines System User Accounts mit useradd:

adduser --quiet --system --disabled-password --shell=/bin/false --group mix

Verzeichnis für Logdaten anlegen

Das Verzeichnis der Logdaten und der Name der Logdateien kann in der Mix-Konfiguration angegeben werden. Auch die maximale Größe der Logdateien kann in der Konfiguration angegeben werden. Es ist keine zusätzliche Rotation der Logdaten nötig. Der Mix kümmert sich selbst darum.

Anlegen des Logverzeichnisses:

mkdir /var/log/mix
chown mix:adm /var/log/mix
chmod 0750 /var/log/mix

Start des Mix-Servers

Es ist eine Konfiguration für den Mix zu erstellen. Üblicherweise wird diese Konfiguration im Verzeichnis /etc/mix unter dem Namen config.xml gespeichert. Anschließend startet man den Mix-Server mit:

ulimit -SHn 32768
mix -c /etc/mix/config.xml

Nach dem Start wechselt der Mix zur UID, die in der Konfiguration angegeben wurde. In der Regel wird der Username mix verwendet.

Update der Mix-Software

Wie andere Software auch wird der Mix gelegentlich aktualisiert. Neue Features kommen hinzu, Bugs werden beseitigt. Updates werden auf der JonDos Operator Mailingliste angekündigt. Um die Software zu aktualisieren, sind folgende Schritte nötig:

cd /home/mix/stable
make distclean
svn update
./configure --enable-new-channel-encryption --enable-new-flow-control --enable-server_monitoring --enable-payment .... ....
make
make install

Danach kann der Mix neu gestartet werden.

Installation des Squid-Proxies (nur für Exit Mixe)

Der Squid-Proxy kann mit dem Paketmanager der verwendeten Distribution installiert werden. Es ist NICHT squid3 zu installieren, sondern die letzte, stabile Version der Reihe 2.7. Für Testzwecke kann außerdem lynx isntalliert werden.

RedHat: yum install squid lynx

Nach der Installation ist der Squid erst einmal wieder zu stoppen und ein Backup der Original-Konfiguration anzulegen.

/etc/init.d/squid stop
cd /etc/squid
mv squid.conf squid.conf.orig

Die Konfiguration ist durch eine optimierte Konfigurationsdatei zu ersetzen und außerdem solte die JonDonym Blockliste installiert werden. Die beiden nötigen Dateien finden sie im Unterverzeichnis misc/Linux der Sourcen. Es liegen zwei unterschiedliche Konfigurationen für kostenfreie und Premium-Exit-Mixe vor. Wählen sie die passende Konfiguration aus. Das Beispiel nutzt die Konfiguration für kostenfreie Dienste.

cd /home/mix/stable/misc/Linux
cp -f squid.conf.free /etc/squid/squid.conf
cp squid-block.acl /etc/squid/squid-block.acl

Danach sind die Cache-Verzeichnisse neu anzulegen....

squid -z -d -3

... der Squid-Proxy kann gestartet werden...

/etc/init.d/squid start

... und ein kleiner Test, ob er funktioniert.

http_proxy=http://127.0.0.1:3128; lynx http://www.anonymous-proxy-servers.net

Update der JonDonym Blockliste

Von Zeit zu Zeit wird die Blockliste aktualisiert. Betreiber von Webdiensten bitten JonDonym bei mehrfachem Missbrauch des Dienstes, den Zugriff auf ihre Webseite zu unterbinden. Sie werden über die Mix-Operator Mailingliste über Aktualisierungen informiert.

cd /home/mix/stable
svn update
cp -f misc/Linux/squid-block.acl /etc/squid/squid-block.acl
/etc/init.d/squid restart

Installation des Dante SOCKS Proxies (nur für Premium Exit Mixe)

Der Dante SOCKS Proxy kann ebenfalls mit dem Paketmanager der Distribution installiert werden.

RedHat: yum install dante-server

Wir empfehlen, die Danted Konfiguration zu nutzen, die von der JonDos GmbH bereitgestellt wird. Das Template datad.conf.template finden sie im Mixquellcode im Unterverzeichnis misc/Linux. Es enthält auch die JonDonym Blockliste. In der Zeile 9 des Templates ist die Variable [% extIP %] durch die extrne IP-Adresse des Servers zu ersetzen. Man kann den Editor pico dafür nutzen.

cd /home/mix/stable/misc/Linux
pico danted.conf.template
cp -f danted.conf.template /etc/danted.conf
/etc/init.d/danted restart
Personal tools