Open Source im professionellen Einsatz
Linux-Magazin 04/2016
© everythingpossible, 123RF

© everythingpossible, 123RF

P2P-Netze für Website-Hosting

Club Dezentral

Den Begriff P2P verbinden viele Nutzer unwillkürlich mit Bittorrent und dem (nicht immer legalen) Tausch von Dateien. Dabei lassen sich über Peer-to-Peer-Netzwerke auch Internetauftritte und andere Dienste anonym anbieten. Fünf darauf spezialisierte Netze treten in der Bitparade zu einem Vergleich an.

1271

Fällt im World Wide Web ein Webserver aus, sind die entsprechenden Seiten nicht mehr erreichbar. Administratoren versuchen das durch redundante Systeme zu kompensieren, die jedoch wiederum einen hohen Wartungsaufwand erfordern. Zugleich fließen alle Daten meist unverschlüsselt über die Leitungen, selbst beim Einsatz einer SSL/TLS-Verschlüsselung identifizieren Dritte immer noch Absender und Empfänger.

Beide Nachteile wollen gleich mehrere Projekte mit hybriden und reinen Peer-to-Peer-Ansätzen (P2P) erschlagen, soll heißen: Ähnlich wie beim Datei-Austausch über Bittorrent liegen die Webseiten nicht mehr auf einem zentralen Server. Stattdessen bieten die im Netz hängenden Clients die Webseiten an.

Einige der Anbieter verteilen die Daten dabei auf mehrere Netzwerkknoten. Verschwindet ein Client aus dem Netz, sind die Daten noch vorhanden. Weil die Projekte den Traffic zudem durchgängig verschlüsseln, kann keiner der Teilnehmer die Kommunikation der anderen belauschen. Sowohl die Anbieter der Webseiten als auch die Nutzer bleiben also anonym.

Um P2P-Netzwerke wie Freenet [1], I2P [2], IPFS [3], Tor [4] und Zeronet [5] zu verwenden, müssen Anwender lediglich die von den Projekten bereitgestellte Clientsoftware auf ihrem Rechner installieren. Alle fünf Netzwerke stehen jedem Interessenten offen, sie bilden folglich keine abgeschotteten Darknets.

Alte Kamellen

Neben den vorgestellten P2P-Netzwerken gibt es noch weitere, deren Entwicklung jedoch größtenteils stagniert. Dazu gehört Gnunet, an dem Entwickler bereits seit dem Jahr 2001 arbeiten [26]. Das P2P-Netz diente ursprünglich zum "anonymen, Zensur-resistenten Filesharing".

Mittlerweile sind weitere Dienste hinzugekommen. So kann der VPN-Service herkömmlichen IPv4- und IPv6-Verkehr über das Gnunet leiten und so beliebige Dienste über das P2P-Netzwerk anbieten. Das GNU Name System (GNS) ersetzt zudem das Domain Name System. Gnunet Conversation erlaubt sogar Telefongespräche, gewährleistet aber derzeit keine vollständige Anonymität. Die letzte Version 0.10.1 des Clients stammt vom April 2014.

Im Tiefschlaf befinden sich auch Osiris [27] und Netsukuku [28]. Die letzte stabile Version 0.15 von Osiris erschien im November 2011, die Arbeit an Version 1.0 stagniert seit Dezember 2014 in der Alphaphase. Von Netsukuku sollte 2010 eine komplette Neuentwicklung erscheinen, was bislang nicht passiert ist.

Nicht in den Vergleich geschafft hat es auch Retroshare [29]. Mit diesem P2P-Netz baut ein User eine verschlüsselte Verbindung zu einem oder mehreren Freunden auf. Diese können dann miteinander chatten, Videotelefonie betreiben, sich E-Mails schicken, Dateien austauschen und in Foren diskutieren. Retroshare garantiert keine Anonymität – wer seine IP-Adresse verschleiern will, muss die Kommunikation über Tor oder I2P leiten.

Die einzelnen Clients kommunizieren untereinander verschlüsselt, wobei jedes P2P-Netz seine eigenen Protokolle verwendet. Der Versand der Nachrichten erfolgt jedoch bei allen Kandidaten über das Internet und mit Hilfe der dort bewährten Protokolle. Die Clients stülpen somit dem vorhandenen Internet ein eigenes Netz mit eigenen URLs über und verwenden mitunter sogar einen eigenen Namensdienst. Die über das Netz verfügbaren Dateien, Websites und Dienste erhalten eindeutige IDs, die die Clients über kryptographische Verfahren erzeugen. Über diese ID fordern dann wiederum andere Clients die Daten an. In einigen der besprochenen P2P-Netze lassen sich zudem einmal veröffentlichte Webseiten nicht wieder zurückrufen beziehungsweise löschen.

Freenet

Die Geschichte des Freenet-Projekts reicht bis ins Jahr 1999 zurück [1]. Der irische Student Ian Clark entwickelte zunächst die Idee eines "verteilten anonymen Informationsspeicher- und Abrufsystems", die er dann mit mehreren Helfern als Freenet umsetzte. Mittlerweile koordiniert das eigens zu diesem Zweck gegründete und spendenfinanzierte Unternehmen The Freenet Project Inc. die Entwicklung.

Über Freenet tauschen User Dateien aus, veröffentlichen aber auch komplette Websites. Letztere bezeichnet der Freenet-Sprech als Freesites. Damit niemand die Kommunikation der Teilnehmer verfolgt, leitet Freenet die verschlüsselten Pakete gleich über mehrere Rechnerknoten. Darüber hinaus weisen Benutzer ihren Client an, sich nur mit bekannten und vertrauenswürdigen Personen beziehungsweise Knoten zu verbinden. Die Freenet-Entwickler bezeichnen diese Betriebsart inkonsistent als Darknet-Mode oder High-Security-Modus.

Freenet liegt ein verteiltes Dateisystem zugrunde, zu dem jeder Nutzer etwas von seinem Festplattenplatz beisteuert. Technisch puffert der Freenet-Client in diesem so genannten Data Store einige der in Freenet angebotenen Dateien in verschlüsselter Form.

Welche Dateien wie lange im Data Store verbleiben, bestimmt allein der Freenet-Client. Der lag bei Redaktionsschluss in der Version 0.7.5 vor. Sein Code steht zu Teilen unter der GNU GPL und der Apache-Lizenz. Der Client selbst ist in Java geschrieben und setzt daher ein Java Runtime Environment (JRE) ab Version 1.6 voraus. Die Entwickler empfehlen die JRE von Oracle ab Version 1.7.

Die Installation des Clients erfolgt bevorzugt über den Java Web Start Installer [6], der aber ein im Browser installiertes Java-Plugin voraussetzt. Alternativ stellen die Entwickler unter [7] einen Installationsassistenten bereit, den Nutzer über »java -jar new_installer_offline.jar« starten. Der komplette Quellcode des Clients wartet auf Github [8].

Direkt nach Abschluss der Installation öffnet sich der Browser mit einem kleinen Assistenten (Abbildung 1). In ihm gibt der Nutzer unter anderem die Größe des Datenspeichers vor. Minimal möglich sind 512 Mebibyte, maximal 100 Gibibyte. Des Weiteren legt er die pro Monat maximal zu übertragende Datenmenge fest und limitiert die Bandbreite. So stellt er sicher, dass Freenet nicht dauerhaft seine Bandbreite blockiert.

Abbildung 1: Die Installation des Freenet-Clients übernimmt dieser Assistent.

Der Freenet-Client läuft als Daemon im Hintergrund. Ihn trägt der Installationsassistent in die Startskripte ein. Die Aktivitäten des Daemon verzögern mitunter den Systemstart und auch das Herunterfahren des Rechners drastisch. Der Client bietet unter der URL »http://localhost:8888« eine Benutzeroberfläche an. Über sie laden User neue Dateien hoch und ändern die Client-seitigen Grundeinstellungen (Abbildung 2). Auf der Startseite der Weboberfläche finden sie zudem eine zurzeit noch experimentelle Suchmaschine vor, die Objekte im Freenet-Netzwerk aufspürt.

Abbildung 2: Die Weboberfläche des Freenet-Clients dient mit einer Linkliste als Einstiegspunkt in das Freenet-Netzwerk.

Im Freenet erhalten alle Daten eine ID, den so genannten Key. Möchten Nutzer Daten abrufen, hängen sie lediglich den zugehörigen Schlüssel an die URL »http://localhost:8888/« an. Freenet unterscheidet für die unterschiedlichen Daten beziehungsweise Dienste zwischen vier Keytypen. In jedem Fall ist das Ergebnis ein kryptisches Monster wie:

USK@0iU87PXyodL2nm6kCpmYntsteViIbMwlJE~wlqIVvZ0,nenxGvjXDElX5RIZxMvwSnOtRzUKJYjoXEDgkhY6Ljw,AQACAAE/freenetproject-mirror/243/

Etwas Abhilfe verschaffen die Keyword Signed Keys. Sie erlauben es Usern, benannte Seiten und Dateien nach dem Muster »KSK@eine_Datei.txt« in Freenet zu speichern. Da aber mehrere Nutzer den gleichen Namen für eine Datei verwenden dürfen, schützen diese Keys nicht vor Spamming und Hijacking.

Freenet bietet zudem Container an. Dabei handelt es sich um Archive aus mehreren Dateien, die maximal 2 MByte groß sein dürfen und meist eine Freesite enthalten. Mit ihnen lädt der Freenet-Client die komplette Website auf einmal und nicht in Einzelteilen.

Seiten bauen

Wer eigene Webseiten im Freenet anbieten möchte, greift auf das grafische Tool Jsite zurück (Abbildung 3). Der Autor muss lediglich ein neues Projekt anlegen, den Dateipfad zu den fertigen Webseiten auf der Festplatte angeben und die Datei mit der Startseite auswählen (in der Regel die »index.html« ). Jsite lädt dann die Website in das Freenet hoch und zeigt den Key an, über den die Website erreichbar ist. In PHP oder anderen Skriptsprachen geschriebene Webseiten ermöglicht Freenet nicht. Die Funktionen des Clients erweitert der Anwender über Plugins, bereits existierende rüsten unter anderem ein E-Mail-System, einen Microblogging-Dienst und ein Chatsystem nach.

Abbildung 3: Mit dem Tool Jsite speisen Nutzer eigene Webseiten in das Freenet-Netzwerk.

Die Dokumentation besteht aus einem spärlich gefüllten Wiki [9] und einer knappen Anleitung auf der Homepage [10], die aufgrund des schwarzen Hintergrunds schon nach kurzer Zeit die Augen tränen lässt. Eine weitere Seite [11] zeigt, wie der Nutzer bekannte Plugins einsetzt und verwendet, eine Linksammlung auf der Homepage verweist auf mehrere Whitepaper zu Freenet.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 9 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Einführung

    Auch diesen Monat bekommen die DELUG-Käufer exklusiv ein Highlight: Die erste Seite dieser DVD enthält Knoppix 7.7 in der Linux-Magazin Edition, die andere Seite bietet eine virtuelle Appliance mit Whonix, Videos von der I2P-Conf, das Debian-Administratoren-Handbuch und vieles mehr.

  • Teilen erlaubt

    Ist Filesharing à la Napster in Deutschland verboten, weil es Musikindustrie und amerikanische Gerichte so wollen? Gilt das Recht für private Kopien? Eine mögliche Antwort, mit Blick auf das deutsche Urheber- und Leistungsschutzrecht, finden Sie hier.

  • Projekteküche

    Die Sourceforge-Gemeinde hat gewählt: Hunderttausende eingetragene Benutzer kürten die beliebtesten Projekte aus 14 Kategorien. Außerdem wird Linux elektrifiziert und Freenet will für die totale Meinungsfreiheit im Netz sorgen. Zu essen gibt's Lammsteak mit Bratkartoffeln und Bohnen.

  • Allzweckreiniger

    Wer für Firewall, VPN-Zugang, Web- und E-Mail-Filter, Bandbreitenmanagement und Einbruchserkennung nicht viele Einzelkomponenten kaufen will, wird bei dem Universaltalent von Astaro fündig. Das Linux-Magazin hat die Appliance einem Praxistest unterzogen.

  • Cloud-Software

    Dropbox war der erste einer ganzen Riege von Cloudanbietern. Das Gefühl von Sicherheit vermitteln aber nur Dienste, die dem Benutzer volle Kontrolle über die eigenen Daten versprechen. Dieser Artikel bringt einen Überblick über neun Cloudprojekte und zwei Bittorrent-Tools.

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.