YaCy – Dezentrale Websuche

Wir verwenden Suchmaschinen, um an für uns interessante Informationen zu gelangen oder verwenden Blogabonnements, um aktuelle Mitteilungen zu verfolgen . In Deutschland laufen fast 90 % aller Suchanfragen über das Suchportal von Google, und es ist einigen schon klar, dass unsere Welt durch die rosarote Googlebrille etwas anders aussieht und es auch noch Informationen gibt, welche zwar im Netz und mitunter auch sehr lesenswert sind, die wir aber nicht mehr zu Gesicht bekommen. Das hat unterschiedliche Gründe. Die großen Suchmaschinendienstleister sind daran interessiert, mit ihrer Dienstleistung Geld zu verdienen und zeigen uns deshalb Werbeanzeigen oder sortieren die Ergebnisse nach ihren eigenen Algorithmen. Dass dies mit einer freien Informationsweitergabe nicht so viel zu tun hat, ist den meisten auch schon bewusst. Dass die Unternehmen mittlerweile aber noch viel weitergehen und meine Suchanfragen meinem Nutzungsverhalten anpassen und dies als Begründung benutzen, um meinen gesamten Internetverkehr zu speichern und zu analysieren, ist eigentlich sehr befremdlich und führt nicht selten zu Irritationen. Hinzu kommt noch der Aspekt der Zensur und das Entfernen von Inhalten aus dem Suchindex aus Gründen von Rechtsverletzungen. Welch einen bemerkenswerten Einfluss das haben kann, zeigt u.a. auch der Transparenzbericht von Google.

Google Trransparenzbericht zu Urheberrechtsverletzungen
Google Trransparenzbericht zu Urheberrechtsverletzungen (Stand: 3. August 2015)

Unterschiede

Eine wichtige Voraussetzung, um im Internet Geld mit Nutzungsdaten zu verdienen, ist das Sammeln,  Sortieren und Konzentrieren von Daten. Alle Informationen werden auf den Firmenservern (von Google, Facebook, Twitter, Bing, Yahoo etc.) zusammengetragen, analysiert und benutzt, um aus den Daten Profit zu schlagen. Insofern können wir uns auch auf kein Internetangebot verlassen, das uns ein Portal zum Ablegen von Daten (Cloudservice), zum Kommunizieren (E-Mail) oder Verkaufen von Waren (Amazon oder Ebay) bereitstellt.

Gründe, warum Yacy eine bessere Suchmaschine ist.
Gründe, warum Yacy eine bessere Suchmaschine ist.

Entgegen den kommerziellen Webangeboten wurden mittlerweile  auch schon einige gut funktionierende Alternativen entwickelt, die sich leider noch nicht etabliert haben. In der Regel handelt es sich dabei um Freie Software und ein kommerzielles Interesse steht dabei meist nicht im Vordergrund, sondern die gemeinsame Entwicklung eines offenen Programms.

Ein fundamentaler Aspekt bei der Entwicklung von freier Software ist, dass sie immer auch von einer Dezentralität lebt, denn jeder darf an dem Programm teilhaben und zu seiner Verbesserung beitragen. So ist es auch nicht verwunderlich, dass die Programmierung der Software an die Idee gekoppelt wurde, gemeinsam an der Entwicklung zu arbeiten. Am 15. Dezember 2013 stellte der Programmierer Michael Christen die Idee bei Heise-Online kurz vor und ermunterte zum Mitmachen:

Ich entwickle eine P2P-basierende Suchmaschine. Wer macht mit?

Die Suchmaschinensoftware Yacy ist nicht nur Freie Software, sondern auch die Organisation eines offenen und freien Suchmaschinenindexes ist vollkommen dezentralisiert aufgebaut. Jeder von uns kann sich an den Inhalten dieser Suchmaschine beteiligen und dazu beitragen, dass Informationen wieder ohne manipulative Elemente erreichbar werden. Wichtig dabei ist, und das ist die kleine Hürde, dass wir uns diesem Netzwerk anschließen und den Index auch mit dem für uns interessanten Content befüllen.

Das Programm YaCy muss dafür auf unserem Rechner installiert werden und wir müssen es dem Netzwerk ermöglichen, auf unseren Index zuzugreifen, denn jeder Rechner fungiert als kleine Suchmaschineneinheit und stellt den eigenen Inhalt der Gemeinschaft zur Verfügung (s.a. Einstieg in die freien Suchmaschinen mit der P2P-Suche YaCy). Wie die Kommunikation zwischen den einzelnen Rechnern dann abläuft, zeigt die nachfolgende Grafik.

Grafik

Dezentral

Unsere Rechner fangen an miteinander zu kommunizieren und sich gegenseitig Inhalte zur Verfügung zu stellen. Diese Form der Dezentralisierung schützt zwar nicht vor Manipulation, denn auch Firmen wie Amazon & Ebay, Abzocker und andere Interessengruppen können das Netzwerk mit Informationen versorgen. Dies wird aber genau dann relativiert, wenn sich möglichst viele Menschen an dem Netzwerk beteiligen.

onic.eu, hans-joerggrosse.de, vertreterblog.de, spreeblogger.de, reiseversessen.de Netzwerkdarstellung eines Crawls
onic.eu, hans-joerggrosse.de, vertreterblog.de, spreeblogger.de, reiseversessen.de Netzwerkdarstellung eines Crawls

Die Grafik zeigt, inwieweit bestimmte Seiten in dem dargestellten Netzwerk integriert sind und welche Querverweise die Websites miteinander verbinden.

Ausprobieren

Eigentlich wird YaCy auf dem eigenen Rechner installiert und von dort auch eine Suchanfrage oder ein Crawl gestartet. Unter der folgenden Seite kannst du die Suchmaschine aber schon mal ausprobieren:

http://search.yacy.de

Das Projektteam weist aber auf folgendes hin:

Die Idee, ein Demo-Portal bereit zu stellen ist aber nur hilfreich für das Projekt, wenn Besucher und Nutzer des Demo-Portals motiviert sind, einen eigenen Peer zu installieren. Wir wollen daher alle Nutzer des Portals bitten, statt des Demo-Portals einen eigenen Peer als Zugangspunkt für die dezentrale Suche zu nutzen. Ein eigener Peer als Zugangspunkt zum YaCy-Netz bietet die beste Privatsphäre (andere Peers sehen die Suchanfrage nur als Wort-Hash), die beste Performance (liegt an Ihnen) und die besten Resultate (die in Ihrem Peer gespeicherten Suchindexe dominieren im Suchergebnis). Quelle: Yacy Demoportal.

Interessantes & Wissenwertes

Die Suchmaschine YaCy ist eine sehr umfangreiches Programm, das sehr effektiv eingesetzt werden kann (s.u. .Video: Suchportale und freie, unzensierte, anonyme Websuche mit YaCy von Michael Christen)  Einige Besonderheiten sind:

  • Suchanfragen können als RSS-Feed abonniert werden und von RSS-Readern gelesen, aktualisiert und gespeichert werden.
YaCy Suchmaschinenvergleich mit Startpage
YaCy Suchmaschinenvergleich mit Startpage

Installation

Für die Installation von YaCy auf dem eigenen Rechner stehen für die gängigen Betriebssysteme GNU/Linux, Windows und MacOS Videotutorials zur Verfügung:

Installation unter GNU/Linux Debian

sudo apt-get install openjdk-7-jre-headless

Entpacken von: yacy_v1.82_20150121_9000.tar.gz

cd ./Downloads/yacy

./startYACY.sh

Videoeinführung

Suchportale und freie, unzensierte, anonyme Websuche mit YaCy von Michael Christen

Suchportale sind meinungsbildend und das Ergebnisranking kann Normen und Werte von Gemeinschaften beeinflussen. Der Administrator eines zentralen Suchportals ist ein Zensor, überwacht den User und verkauft sein Suchprofil an Werbetreibende.
In diesem Vortrag stellen wir eine freie Alternative vor: das Suchportal selber betreiben. YaCy ist eine Peer-to-Peer Suchmaschine, bei der die Nutzer zu Betreibern werden. In der eigenen Suchmaschine gibt es keine Zensur, keine Überwachung, keine Werbung und die Möglichkeit, eigene Inhalte hinzuzufügen. Wir zeigen in einer Live-Demo wie das ganz einfach ist und nennen auch Beispiele von professionellen Nutzern.

Weblinks

YaCy – Wiki

YaCy
Datei:YaCy_logo.png
Aktuelle Version 1.92
(Jan. 2017)
Betriebssystem plattformübergreifend (Java)
Programmiersprache Java
Kategorie Suchmaschine, Proxy
Lizenz GPL (Freie Software)
deutschsprachig ja
www.yacy.net/de

YaCy (von Yet another Cyberspace, homophon zu englisch ya see) ist eine Suchmaschine, die nach dem Peer-to-Peer-Prinzip – kurz P2P – arbeitet. Dabei gibt es keinen zentralen Server, sondern alle Teilnehmer sind gleichwertig.

Durch die Installation von YaCy wird ein lokaler YaCy-Proxy bereitgestellt. Alle über diesen Proxy abgerufenen Webseiten, sowie durch mitgelieferte Plugins auch andere Daten, werden lokal indexiert und können durch den Nutzer mittels des YaCy Webinterface durchsucht werden. Dieser Index wird nun (optional) redundant auf anderen Peers des globalen YaCy-Netzwerkes verteilt, so dass ein globaler Index entsteht. Eine globale Suche fragt den globalen Index ab, der aus den Peers besteht, die gerade online sind. Durch dieses dezentrale Prinzip ist YaCy resistent gegen Ausfälle.

Der eigene Index (und somit indirekt der globale) lässt sich durch das Losschicken eines eigenen Webcrawlers erweitern. Es können alternativ eigene YaCy-basierte Netzwerke zur Bildung eines gemeinsamen Index konfiguriert werden; als Beispiel sei hier das Sciencenet[1] genannt.

Das Projekt YaCy wurde von Michael Christen im Jahr 2003 gegründet.[2] Die Suchmaschine wird zum Beispiel bei der Johannes Gutenberg-Universität Mainz eingesetzt.

Vorteile und Nachteile

Vorteile

  • Die mit YaCy aufgebaute globale Suchmaschine wäre praktisch ausfallsicher, da immer ein Teil des Netzwerks erreichbar sein wird.
  • Die Internetnutzer sind durch YaCy als Suchmaschine unabhängig von Unternehmen, deren Ranking (das diese sich evtl. bezahlen lassen) und deren Zensur.
  • Die Software ist Open Source, wurde unter der GNU General Public License veröffentlicht und ist kostenlos.
  • Da die Indexierung über den Proxy am jeweiligen Client stattfindet, lassen sich somit Seiten aus dem Deep Web oder nicht öffentlichen Netzen (z. B. i2p) indexieren, die ein Crawler einer öffentlichen Suchmaschine wie z. B. Google nicht erschließen kann.
  • YaCy ist nicht zwingend an die Teilnahme am öffentlichen YaCy-Cluster gebunden und kann so z. B. als Suchmaschine in privaten Netzen (z. B. Unternehmen-Intranet) oder als private Suchmaschine über besuchte (und damit indexierte) Seiten genutzt werden.

Nachteile

  • Da YaCy für eine Suchanfrage andere Peers kontaktieren und Suchergebnisse zum Vermeiden von Spam durch Nachladen der Trefferseite verifizieren muss, dauert die Suche länger als bei herkömmlichen Suchmaschinen.
  • Sind nur wenige Peers vorhanden, können weniger Ergebnisse gefunden werden als bei großen Suchmaschinen. Auch kann es durch den Ausfall oder die Abschaltung einzelner (großer) Peers zu weiteren Beeinträchtigungen kommen. Mit Freigabe der Version 1.0 Ende November 2011 stieg jedoch durch den steigenden Bekanntheitsgrad die Anzahl der Peers auf ca. 1000, so dass dieser Nachteil aktuell vernachlässigt werden kann.
  • Das YaCy-Protokoll funktioniert über einzelne HTTP-Requests, wodurch es eine höhere Latenz aufweist als UDP oder TCP mit dauerhaften Verbindungen.
  • Die Suchanfragen werden im durchsuchten Peer zwecks Caching ausschließlich temporär im RAM gespeichert. Die verwendete Hashfunktion für die Codierung der Suchwörter dient vorrangig der Ansteuerung der verteilten Hashtabelle (DHT), und Suchwörter können mit einem Wörterbuch teilweise aufgedeckt werden, um die Suchanfragen im Klartext zu zeigen.
  • Die Daten werden nicht verschlüsselt gespeichert oder übertragen.
  • Theoretisch könnten Spammer eigene Peers betreiben, die Spam als Ergebnis zurückliefern. Falsche Suchergebnisse werden aber dadurch nicht möglich, da ein Peer durch Nachladen der Ergebnisseiten vor der Anzeige die Treffer verifiziert.

Das Programm

Das Herzstück der Suchmaschine ist anders als bei anderen Suchmaschinen nicht eine zentrale Seite, sondern ein Computerprogramm, das auf fast allen Betriebssystemen läuft. Die Suche verläuft über eine lokale Webseite, die vom installierten Programm ausgeliefert wird. Die Anzeige der Ergebnisse erfolgt hier wie gewohnt als HTML-Seite.

Gekoppelt mit dem P2P-System läuft ein optional verwendbarer Proxyserver, der automatisch die besuchten Seiten indiziert. Dies findet nicht bei Seiten statt, denen via GET oder POST weitere Daten übergeben werden oder die Cookies oder HTTP-Authentifizierung verwenden (z. B. Seiten in einem Login-Bereich).[3] Somit ist sichergestellt, dass auch wirklich nur öffentlich zugängliche Daten indiziert werden.

Weitere Funktionen

  • YaCy bietet allen Nutzern der Proxyfunktion die Möglichkeit, Peers über die Domain PEERNAME.yacy bzw. PEERHASH.yacy zu erreichen. Unter www.PEERNAME.yacy kann der Nutzer eine Homepage hinterlegen, unter share.PEERNAME.yacy liegt ein Fileshare, und unter PEERNAME.yacy ist die normale Schnittstelle erreichbar. Weitere Subdomains kann der Benutzer selber anlegen, indem er einen Ordner mit dem Subdomain-Namen erstellt. Es handelt sich also um eine Art dynamisches DNS.
  • Unabhängig von der .yacy-Domain bietet YaCy Platz für eine Homepage und einen Fileshare, den man mit der aktuellen IP oder einem dynamischen DNS-Namen verlinken kann, auch für Nutzer, die YaCy nicht verwenden.
  • YaCy hat eine eingebaute Nachrichtenfunktion, mit der man Textnachrichten (mit Wikicode zur Formatierung) und je nach Einstellung des Empfängers auch Dateien versenden kann.
  • YaCy hat ein Wiki und einen Blog integriert.
  • Es gibt eine Lesezeichenverwaltung, in dem öffentlich einsehbare und private Lesezeichen angelegt werden können.
  • Es gibt die Möglichkeit, für einzelne Bereiche definierte Blacklists anzulegen.
  • Es existiert ein OpenSearch-Interface. Jeder Peer stellt diesen unter http://<peer-address>:<peer-port>/opensearchdescription.xml zur Verfügung, beispielsweise http://search.yacy.net/opensearchdescription.xml

Technik

Das Programm basiert auf einem Webserver, der zugleich ein Caching-Proxy ist. Über den Webserver kann man auf die Benutzerschnittstelle zugreifen, um zu suchen oder den eigenen Peer zu verwalten. Der Proxy teilt seinen Code mit dem Crawler, das heißt alle besuchten Seiten, die nicht personalisiert sind, werden automatisch im Index erfasst. YaCy verwendet ab Version 1.04.9097 Apache Solr. Weiterhin bietet das YaCy-Netz eigene YaCy-Domains, die über den Proxy verfügbar sind.

Indexverteilung

Anders als bei Datei-Tauschbörsen muss das Ergebnis bei einer P2P-Suchmaschine sofort verfügbar sein. Um das zu gewährleisten, nutzt YaCy eine verteilte Hashtabelle (DHT, von engl. distributed hash table). Das heißt, dass alle erfassten URLs und Wörter an die Peers geschickt werden, deren Peerhash zum entsprechenden Wordhash oder Urlhash passt. Bei einer Suche funktioniert es genau andersherum: Es wird nur auf Peers gesucht, die ihrem Hash nach URLs für das Wort kennen können.

Dadurch muss nur ein Bruchteil der Peers bei der Suche kontaktiert werden, um trotzdem gute Ergebnisse zu bekommen.

Peertypen

YaCy unterscheidet vier verschiedene Arten von Peers:

Virgin
Diese Peers kann man nicht finden, da ein Virgin-Peer keinerlei Kontakt zum Netz hat. Daher sieht man nur selber, wenn der Peer Virgin ist.
Junior
Der Peer ist hinter einer Firewall. Andere können ihn als Junior oder potentiellen Peer sehen, sie erkennen allerdings nur, wann er sich das letzte Mal gemeldet hat, und haben keinerlei Möglichkeiten festzustellen, ob er noch online ist.
Senior
Ein Senior kann von außen erreicht werden und ist ein vollwertiges Mitglied des YaCy-Netzes.
Principal
Wie Senior, nur wird zusätzlich eine „Seedlist“ hochgeladen, die andere Peers zum Bootstrapping benutzen können.

Protokoll

Das Protokoll von YaCy besteht aus Text-Servlets, die der eingebaute Webserver unter /yacy/servletname.html bereitstellt. Andere Peers übermitteln via GET-Parametern Daten und bekommen einen einfachen Text als Antwort; das genaue Format ist bei den Servlets unterschiedlich.

Bootstrapping

Beim Bootstrapping versucht YaCy, das Netz mit den anderen Peers zu finden. Dazu wird zunächst nach einer Seedliste gesucht. In superseed.txt wird zunächst die URL einer Seedliste, die ein YaCy-Peer regelmäßig hochlädt, ausgesucht und diese dann heruntergeladen. In der seeds.txt stehen die Referenzen anderer Peers, sodass Kontakt zum YaCy-Netz aufgenommen werden kann. Beim nächsten Start kann aus den bekannten Seeds gebootstrapt werden, und die Seedlisten sind nur nötig, wenn viele Referenzen nicht mehr gültig sind.

Literatur

source: https://de.wikipedia.org/wiki/YaCy

 

 

Flattr this!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.