Warum das Ende von MtGox eigentlich gute Nachrichten sind…?


Der Tot der größten Bitcoin Börse hätte kaum schneller kommen können.

MtGox sagt man hinterher knappe 744.408 Bitcoins „verloren“ zu haben – oder eben knapp 6 Prozent der gesamten Bitcoinmenge, die überhaupt entstehen kann. Das ist schlichtweg das Resultat eines Softwarefehlers und schlechten Managements.

Diese Informationen stammen aus den geleakten Dokument von MtGox, welches kurz nach der Bekanntgabe des Transaction Malleability Bugs seitens MtGox erschienen ist.

Das Manko ist eigentlich ein, bereits seit längeren, bekanntes Problem. Welches der Börse erst viel zu spät ins Auge gefallen ist. Das Dokument sagt aus, dass mit der Zeit ein Update geplant war/ist, aber der Schaden bereits entstanden war.

Gestern sah sich nun MtGox’s CEO Mark Karpeles dazu gezwungen, von seinen Posten zurück zu treten. Seit heute ist nun auch die Seite nicht mehr erreichbar.

Für manchen Nutzer der Börse ist diese Nachricht verheerend. Einige Reddit Nutzer berichten von hunderten BTCs, die sie dort zwischenlagerten, um sie nach der Bewältigung des Problems zu einen besseren Preis abzustoßen.

Aber es gibt Licht am Horizont.

MtGox wurde bereits je her als schwarzes Schaf bezeichnet. Schließlich hat sich dieses über Monate angebahnt und sie es nach Jahren nicht geschafft, wichtige Sicherheitsaspekte in Ihr Handeln mit einzubeziehen.

In einer gemeinsamen Erklärung haben fünf führende CEOs von Bitcoin Firmen und/oder Foundations erklärt, dass es bei jeder neuen Industrie auch falsche Mitbewerber gibt, die mit der Zeit auffallen und aussortiert werden, wie man heute auch erneut belegt bekommt. Damit distanzieren diese sich vehement von MtGox und deren Maskerade und fades Schauspiel.

Manch einer geht sogar soweit nun den Teufel an die Wand zu malen und das gesamte Projekt „Cryptocurrency“ als gescheitert zu betiteln. Dieses ist aber nicht richtig, viel mehr demonstriert uns dieses, wie fundamental dieses Projekt bereits ist. Schließlich sind noch einige hundert Euro Luft nach unten geblieben, trotz aller Schwarzmalerei und Hiobsbotschaften seitens MtGox.

Für eine Währung, die gerade mal knappe fünf Jahre existiert, seit dem im Preis über 9.200 Prozent gestiegen ist und stattliche 260 Prozent allein in den letzten 6 Monaten dazu gewann, ist das ein mehr als sattes Resümee.

So lange eine Nachfrage nach schnellen, recht anonymen und kosteneffizienten Transaktionsmöglichkeiten existiert, wird es auch Bedarf an alternativ Währungen wie Bitcoins geben.

Update, siehe hier

Offizielles alljährliches Bitcoin-Treffen findet dieses Jahr in Amsterdamm statt!


Die Bitcoin Foundation verkündet die digitale Ausstellung „Bitcoin 2014: Building the Digital Economy“ dieses Jahr in Amsterdamm.


Die Veranstaltung wird in den Räumlichkeiten des Passenger Terminals vom 15. bis 17. Mai stattfinden. Anmelden kann man sich ab sofort auf bitcoin2014.com.

Sie folgt der Veranstaltung letzten Jahres in San Jose, California, welche über 1000 Teilnehmern im Laufe der drei Veranstaltungstage anzog.

Die diesjährigen Sprecher sind bisher noch nicht bekannt gegeben wurden, aber man erwartet dieses recht zeitnah. Jon Matonis, Executive Director der Bitcoin Foundation erwartet dieses Jahr nicht nur die schweren Geschütze der Bitcoin-Szene, sondern auch jene aus der Finanzindustrie.

MtGox und sein 4 Punkte Plan


Heute wurde ein interner Bericht von der Mutterfirma von MtGox geleaked und veröffentlicht. Der gesamte Bereicht ist hier einsehbar.

1- Immediately reduce liabilities as much as possible with partners

With actual assets using arbitrage/ injecting new coins to erase them from the books. Informing andasking selected Bitcoin main players to ask for their help. The MtGox price is low, making it possibleto erase a significant portion of the debt, but it needs to be done quickly. Injections in coin are mostuseful (enough to run the exchange) but some cash is also needed to not run a fractional reserve.

2- Switch off the MtGox exchange temporarily (1 month) while announcing a restructuring andre-branding.

On a freshly branded static homepage, post a letter from Mark Karpelès stepping down as CEO ofMtGox, bringing in transition advisors, and citing poor organization and technology. Moving to a newcountry (Singapore?) could be helpful.

3- Push the new branding (ready) and reset all SNS channels for communication:

Using Facebook, Twitter, etc with the new branding, we will give constant updates, changing the toneof communications and informing stakeholders on all progress: new advisors, team members,location, fee structure. We need to inspire confidence.

4- Set up a competent team and redesign the service and codebase:

Announce a new CEO, talented developers, and trusted business people to establish a new businessmodel. ( Finance, marketing strategy, IT, developers, Customer support). Build a low-cost, profitablebusiness again that gives customers a reason to stay (low fees, stability, etc) while we work off ourdebts to stakeholders.

Punkt 1: So viele Verbindlichkeiten so schnell wie Möglich ausgleichen.

Dieser Punkt zeigt bereits die großen finanziellen Missstände der Firma an.

Punkt 2: MtGox abschalten

ist bereits geschehen, seit dem 25.02.2014 02:59:06 wurde kein Handel mehr ausgeführt.

und kurz darauf wurde die gesamte Seite heruntergefahren.

Punkt 3: Den neuen Markennamen aufleben lassen und vermarkten

Alte Kanäle wie der Twitter Account von MtGox wurden bereits bereinigt und jegliche Kommunikation davon gelöscht. Der ReLaunch ist aktuell als Gox absehbar, da die Internetseite laut WHOIS auf die Mutterfirma registriert wurde.

Punkt 4: Das Kernteam und die damit verbundene Kompetenz neu strukturieren

Man überlegt den aktuellen CEO durch einen neuen zu ersetzen. Klar sollte sein, dass der Code dahinter definitiv neu geschrieben werden muss.

Alles mehr als fraglich?

Ein klares „Ja!“. Es scheint ein schnell herbeigezauberter Plan B zu sein und auf gutdenken der User hofft. Wohin das führt wird lediglich die Zukunft zeigen. Unsererseits ist klar, dass wir das Abenteuer weiter verfolgen, aber jedem raten, die Finger davon zu lassen 😉

MtGox, die Lüge, der stetig fallende Bitcoin-Preis und die verschwiegene Insolvenz


Wer ähnlich tief involviert in die Bitcoin-Szene ist, dem wird das traurige Spektakel der letzten Wochen und Monate nicht entgagen sein.

Was ist MtGox?

Auszug aus Wikipedia

Mt.Gox ist einer der weltweit größten Handelsplätze für Bitcoins. Es wurde 2009 als Tauschplatz für Sammelkarten gegründet, aber 2010 zu einer Bitcoin-Börse umgewidmet und wurde schnell einer der wichtigsten Wettbewerber im Bitcoin-Handel. Im August 2013 wurden 60 % des weltweiten Bitcoin-Handelsvolumens über die Plattform vermittelt. Das Handelsvolumen der vergangenen 30 Tage betrug am 15. November 2013 152592 BTC, was ca. 28,5 Mio. Euro entspricht.

Neu seit heute:

Seit dem 25. Februar 2014 ist die Internetseite des Anbieters nicht mehr erreichbar. Außerdem wurde der gesamte Twitter-Feed der Börse geleert. Wenige Stunden zuvor trat der Chef der Börse, Mark Karpelès, von seinem Vorstandssitz in der Bitcoin-Foundation zurück.

Was ist Passiert?

Die bisher größte Tauschbörse MtGox hat schon seit geraumter Zeit arge Probleme bei der € bzw. $ Auszahlung. Diese wurden nur schleppend bis gar nicht ausgeführt. In der Eurozone musste man sich z.B. auf 2-12 Wochen reguläre Auszahlungszeit einstellen.

Noch am 5. Januar 2014 verzeichnete der Bitcoinkurs neue Höchstpreise und versprach vielen einen guten Start ins Jahr 2014. Dieses sollte sich aber schnell ändern mit dem Zusammensturz von MtGox. Am 7. Februar 2014 stellte MtGox jegliche Bitcoin Auszahlung bis auf weiteres ein. Kurz darauf gab MtGox die scheinbaren Beweggründe dahinter bekannt. Sie haben offensichtlich einen Fehler im Bitcoin-Protokoll gefunden, welcher es ermöglicht, gezielt eine Bitcoin Transaktion zu manipulieren. Eine Hiobsbotschaft die um die Welt ging und die Bitcoin Preise global eistürzen ließ.

Trotzdessen, dass sich diese Information -fast- binnen Sekunden als falsch erwieß, änderte es nichts am Gesamtfiasko. Der Fehler, auf den MtGox verwies, ist seit einer Ewigkeit bekannt und bereits seit 2011 im offiziellen Bitcoin Wiki hinterlegt.

Der virtuelle Handel von Bitcoins auf den Börsenschauplatz MtGox war trotz der Probleme weiterhin möglich und durch einige „angenehmere“ Nachrichten fühlte sich mancher User scheinbar, trotz aller Warnungen, angetan vom günstigen BTC Preis und zahlten weiterhin Geld bei MtGox ein. Das alles in der Hoffnung, dass MtGox die „Probleme“ gelöst bekommt und die BTCs auszahlen wird.

Wie sich heute zeigt gibt es aber einen ganz anderen Beweggrund hinter dem ganzen Spektakel. Wie dieser Artikel bei Coindesk erläutert, wurden MtGox über die vergangenen Monate, wenn nicht sogar Jahre, insgesamt 744,400 BTCs geklaut. Das entspricht etwa 6% ALLER JE MÖGLICHEN BITCOINS die im Umlauf kommen können. Eine schier unendlich Menge. Laut dem Coindesk Artikel sind es ca. 350 Millionen $ zum aktuellen Kurs.

Da wundert es natürlich niemanden mehr, dass die Massen aufschreien und von einer verschleierten Insolvenz seitens MtGox reden, wütend sind und innerlich damit kämpfen, Ihr Geld abzuschreiben.

Wie genau konnte das passieren?

Das werden sich nun vermutlich viele der leidigen Kunden fragen.
Tatsache scheint zu sein, dass sich ein oder mehrere gewiefte Hacker den Transaction Malleability Bug und die Unwissenheit der MtGox-Betreiber zu nutzen gemacht haben. Ich versuche mal auszudrücken, was sich dahinter verbirgt anhand dieses Bildes:

Der grüne Kasten ist die TransaktionsID und kann verändert werden ohne eine neue “Unterschrift” des Besitzers zu benötigen.

Dadurch ergibt sich die Möglichkeit dieselbe Transkation unter einer anderen TransaktionsID im Netzwerk zu verbreiten, sofer diese zuerst eingepflegt wird, als jene, die vom Marktplatz erstellt wird. Geschieht dies, bekommt der Angreifer seine Bitcoins unter einer anderen TransaktionsID vom Bitcoin Netzwerk augezahlt und kann eine Beschwerde beim Marktplatz einreichen.
Der Marktplatz wird im System die verbundene Transaktion raussuchen und festellen, dass die Blockchain ihre TransaktionsID nicht führt. Ist ja auch kein Wunder, die wurde ja auch überschrieben und wird nun unter einer anderen TransaktionsID geführt. Nun könnte der Support des Marktplattzes den Schluss ziehen, dass die Transaktion nicht ausgeführt wurde und dem Kunden seine Bitcoin entsprechend wieder gutschreiben.

Wenn ein Marktplatz also nicht die TransaktionsID zur Identifikation einer Auszahlungen nutzt, sondern die Inhalte der Transaktion (roter Kasten im Bild: Empfänder, BTC Menge, Zeitstempel) kann so etwas nicht mehr passieren. Würde der Support nach diesen Variablen suchen, kann die Auszahlung immer zugeordnet und ein solcher Angriff unterbunden werden.

Nostalgische Notizen und die bittere Wahrheit


Heute morgen habe ich in den Notizen meines Handy ein wenig, fast schon nostalgisch, herumgescrollt und gelesen, was mich und mein Leben ehemals so beschäftigte. Schließlich nutze ich mein iPhone (und das Image) seit der ersten Stunde und besitze dadurch noch Notizen von 2007. Manch Notiz erheiterte mich bereits so sehr, dass ich Tränen lachten musste 😀

Dennoch stieß ich auf den ein oder anderen Artikel/Notiz, die mich heute noch genau so beschäftigen wie an dem Tag, als ich sie zusammen fasste.

Dieser hier ist von 2011 und prangert unsere Lebesnweise an, wie wir mit unserem westlichen Lebensstil vergessen haben, wie es auf der anderen Seite der Welt aussieht.

Jeden Tag sterben 100.000 Menschen an Hunger oder deren unmittelbaren folgen.
Laut Weltagrarorganisation produziert die Weltwirtschaft Essen für knappe 12 Milliarden Menschen (es gibt ca. 7 Milliarden Menschen auf unseren Planeten).
Dass heißt, ein jedes Kind, welches an Hunger stirbt, ist ein aus Geldgier ermordetes Kind!

Moment, es geht noch weiter!
Aufgrund unserer EU-Agrarpolitik (Geiz ist geil) werden unsere gesamten Lebensmittel massiv subventioniert, nur damit wir ein Schnitzel für 2€ und eine Packung Tomaten für 0,70€ erwerben können.
Resultat daraus ist, dass europäisches Gemüse, trotz mehrerer tausend Kilometer Fahrtweg, in Senegal (Afrika, eines der ärmsten Länder der Welt) für 1/3 des einheimischen Preises erworben werden kann…!!
Resultierend hieraus, können sich die Menschen dort, trotz 18Std harter Feldarbeit in glühender Hitze, nicht selbständig ernähren. NUR aufgrund unserer Lebensmittelpolitik sind viele, sehr viele Menschen aus Afrika dazu genötigt, ihre Heimat zu verlassen und illegal in Europa einzureisen. Und das Ganze wiederum nur in der Hoffnung hier zu unmenschlichen Konditionen arbeiten zu können, damit diese nicht den Hunger tot erleiden.

Noch nicht genug?
Wir Europäer importieren Soja aus Ländern wie Brasilien, Bangladesh oder Rumänien, (alles Länder wo jährlich mehrere hundert bis tausend menschen an Hunger leiden und auch sterben) damit wir unsere Masttiere (Schweine, Hühner, Rinder, etc.) mit selben ernähren können.
Gleichzeitig besitzen und subventionieren wir Millionen Hektar Mais und Weizen, nur damit wir dieses direkt wieder vernichten können (Mais und Weizen, beides wichtige Grundnahrungsmittel, werden in der EU verbrannt um Strom zu erzeugen!!)

Kurz gefasst, wir nehmen hungernden Menschen deren Lebensgrundlage und Ihr täglich Brot, welches wir an unsere Tiere verfüttern, nur damit wir gleichzeitig einheimische Lebensmittel zur Stromerzeugung verbrennen können.

Vielen dank, Fortschritt, dass du es 1/6 der (Welt-)Bevölkerung ermöglichst im absoluten Überfluss zu leben, während die restlichen 5/6 an Hunger leiden, dreckiges, vor allem giftiges Wasser trinken müssen und nicht einmal von 1$ am Tag sich und Ihre Familien ernähren müssen.

SMOS aufsetzen, konfigurieren und die Zwangsdonation deaktivieren.


Worum geht es hier eigentlich?

Schon mal den Begriff Bitcoin gehört? Nein? Dann erspare Dir die Mühe und überspringe einfach dieses Kapitel – Außer Du möchtest was dazu lernen und deinen Horizont erweitern, dafür ist bekanntlich immer Gelegenheit.
Ich möchte mich hier auch gar nicht im einzelnen mit den Für- und Wider- der Sache auseinandersetzen oder gar das technische Gefransel dahinter entflechten, sondern denjenigen unter die Arme greifen, die sich bereits für das Dafür entschieden haben und ggf. etwas Unterstützung beim aufsetzen eines Systems (Rig) benötigen :-p

Ein Rig ist im Endeffekt ein Computer, der mehrere Grafikkarten besitzt und diese zum sogenannten minen verwendet.

In diesem Beispiel verwende ich ein Rig, welches aus folgenden Teilen besteht:

SMOS ist eine Linux Distribution, welche auf das wesentliche, was man zum Scrypt-Mining benötigt, minimiert und optimiert ist. Es basiert auf einer equivalenten und ausgereifteren Linux Distribution namens BAMT. BAMT ist bereits ein paar Tage älter und etabliert in der Szene, allerdings ist BAMT auf das SHA256-Mining spezialisiert, welches mit Grafikkarten heute nicht mehr ertragreich ist und für meinen Zweck nicht das Optimum bietet. Ein findiger Abstauber hat die Chance gewittert und ein paar Codezeilen und die meisten Symbole abgeändert. Seit dem vermarktet er es unter den Namen SMOS und versucht auf jegliche weise Spenden (Donations) abzugreifen. Dazu aber später mehr.

Vorbereitung, Installation und Konfiguration

Zunächst benehmen wir uns verhaltenskonform und laden uns hier die aktuelle SMOS Version herunter und entpacken sie. Zum Zeitpunkt dieses Artikels ist es v1.3.

wget http://www.smos-linux.org/SMOS-Linux1.3-2GB.zip
unzip -x SMOS-Linux1.3-2GB.zip

Danach müssen wir das Image auf den USB Stick schreiben. Überprüft den Laufwerskbuchstaben lieber ein mal mehr, als zu wenig. Es kann ansonsten zu einen Datenverlust führen.

Linux:

sudo dd if=/home/SMOS-Linux1.3-2GB.img of=/dev/sdc bs=1M 

Mac:

sudo diskutil unmountDisk /dev/disk3
sudo dd if=/path/to/SMOS-Linux1.3-2GB.img of=/dev/rdiskX bs=1m 
sudo diskutil eject /dev/disk3

Damit ist der USB-Stick Startbereit. Nun können wir ihn an das Rig anschließen und dieses starten.
Anmerkung: Bitte prüft im BIOS, ob die Startreihenfolge den USB-Stick als erstes bootet. Wenn nicht, ändert dieses entsprechend.

Nachdem das Rig nun gestartet ist, legt es auch direkt los. Aber wie? Schließlich haben wir noch keinerlei Pooldaten oder ähnliches eingepflegt. Ein Blick in die cgminer.conf könnte mehr verraten. Also habe ich kurzerhand über den Router die IP-Adresse des Computers in Erfahrung gebracht (in meinem Fall 192.168.0.23) und öffne eine neue Session in meinem Browser und gebe in der Adresszeile folgendes ein

192.168.0.23:8080

Anmerkung: In diesem Fall darf kein Proxy dazwischen sein, da wir ansonsten nicht innerhalb des Netzwerkes agieren können.

und gelange direkt auf die Startseite meines Rigs. Aber moment, die Seite verlangt ein Passwort. Ahja, klar. Ergibt Sinn:

donate

(Passwortdatei liegt in Klartext unter /home/password.txt bereit und kann geändert werden.)

Das Bild spiegelt eins meiner fertig konfigurierten Rig’s wieder und dient lediglich als Beispielbild. So oder so ähnlich sollte es nun bei Euch aussehen. Die Grafiken und Statistiken sind meines erachtens nach selbsterklärend, sollte es Fragen dazu geben, gern in die Kommentare 🙂

Unter den Grafiken hat mehrere elementare Möglichkeiten, wie z.B. das Rig neu zu starten oder das minen zu beenden.

Wir wählen CGMiner Config: Change um in die Konfigurationsdatei von den laufenden CGMiner zu gelangen.
Meine Konfiguration für drei Sapphire R9 280X sieht wie folgt aus:

{
"pools" : [
	{
		"url" : "stratum+tcp://us.clevermining.com:3333",
		"user" : "Bitcoin Wallet Adresse",
		"pass" : "x"
	},
	{
		"url" : "stratum+tcp://middlecoin.com:3333",
		"user" : "Bitcoin Wallet Adresse",
		"pass" : "x"
	}
],
"failover-only": true, 
"api-listen" : true,
"api-port" : "4028",
"api-allow" : "W:127.0.0.1,192.168.0.24",
"intensity" : "13",
"vectors" : "1",
"worksize" : "256",
"kernel" : "scrypt",
"lookup-gap" : "0",
"thread-concurrency" : "14336",
"shaders" : "0",
"gpu-engine" : "1060",
"gpu-fan" : "0-85",
"gpu-memclock" : "1500",
"gpu-memdiff" : "0",
"gpu-powertune" : "20",
"gpu-vddc" : "0.000",
"gpu-dyninterval" : "7",
"gpu-platform" : "0",
"gpu-threads" : "2",
"temp-cutoff" : "95",
"temp-overheat" : "85",
"temp-target" : "70",
"auto-fan" : true,
"expiry" : "120",
"hotplug" : "5",
"log" : "5",
"no-pool-disable" : true,
"queue" : "1",
"scan-time" : "30",
"scrypt" : true,
"temp-hysteresis" : "3",
"shares" : "0"
}

Wer meine vorherigen Artikel gelesen hat, dem fällt vielleicht auf, dass ich den API Zugriff seitens meines Raspberry Pi’s freigegeben habe. Dieses habe ich bei jeden meiner Rigs eingestellt, da ich so den Stand der Dinge Zentral über den Raspberry nachvollziehen kann. Wie das gelingt, beschreibe ich später näher.

Falls Ihr eine andere GPU nutzt, empfehle ich Euch einen Blick in die SMOS-Konfigurationsliste zu werfen und Euch ggf. daran zu orientieren oder gar zu richten.

Nachdem die Config bearbeitet wurde, klicken wir auf Update Config! und gehen zurück auf die Startseite. Dort angelangt müssen wir nun auf Mine Restart: Restart klicken, damit die Änderungen greifen. Nach einer kleinen Pause sollte das Rig wieder anlaufen und über Euren Pool laufen.

Die Zwangsdonation, Betrug der Nutzer und Raub der Erfinder!

Tja, wer jetzt denkt, „Fertig, Bier her!“, dem fällt spätestens nach ein paar Tagen auf, dass sein Rig seltsamerweise jede Nacht 15 Minuten aufhört für einen zu hashen. Wer jetzt seinen Internetprovider kontaktieren möchte, dem sei gesagt, dass er sich die Mühe ersparen kann.
Wie ich Eingangs bereits anriss, hat jemand ein bestehendes Betriebssystem (BAMT), welches etliche Stunden gedauert hat zu konfigurieren und compilieren, genommen, zwei bis drei Änderungen am System vorgenommen, ein neues Logo verpasst und umbenannt (SMOS). Dieser jemand, der eine kostenfreie Software fast ausschließlich nur umgelabled hat, ist nun der Meinung dafür entlohnt zu werden. Da die Masse dieses offensichtlich anders sah und ihn nicht den gewünschten Zuspruch in Form von Spenden zukommen ließ, entschied sich der findige Mann für eine offensivere Methode. Er implementierte eine 15 minütige Pause, in der Euer Rig nicht für Euch hashed, sondern für Ihn. Ja richtig. 15 Minuten am Tag klaut er jedem Nutzer von SMOS die Hashpower. Nicht nur weil eine Spende meiner Meinung nach Freiwillig sein sollte, wenn nicht gar sein muss, empfinde ich diesen Sachverhalt als äußerst unschön, sondern viel mehr, weil er ein bestehendes Produkt genommen hat, lediglich sein Logo anbrachte und nun der Meinung ist, unendlichen Zuspruch in Form von Spenden dafür zu erhalten.

Seitens des SMOS-„Entwicklers“ hat er sich einfacher Methoden bedient, die man ebenso simpel aushebeln kann. Er nutzt die Eigenschaften des Webservers gepaart mit Cronjob um seine Missetat eine jede Nacht zu verüben.
Zunächst verbinden wir uns via SSH als root-Nutzer mit den Rig.

ssh 192.168.0.23 -l root

Dort löschen wir zunächst die Dateien, die für das nächtliche Vorhaben notwendig sind.

cd /home/ 
rm .script.sh .update.sh .donate.conf

Nun löschen wir noch die entsprechenden Verweise in den Cronjobs.

crontab -e

Geschafft. Nun wird dieses Rig nie mehr für jemand anderen arbeiten 😉

Anonym im Internet mittels Raspberry Pi, Tor und Privoxy


In diesem Artikel möchte ich mich damit befassen, wie man sich und seinen Internetanschluss mittels eines Raspberry Pi’s anonymisieren und gleichzeitig die Online Werbung filtern bzw. ausblenden lassen kann.

Benötigt werden für dieses Projekt folgende Dinge:

Wer mag, kann natürlich noch ein Gehäuse für den Rapsberry Pi erwerben, dieser ist aber nicht zwingend notwendig.

Nachdem wir uns das Linux basierende Betriebssystem Raspbian heruntergeladen haben prüfen wir zunächst den Hashwert der Datei um sicherzustellen, dass diese korrekt heruntergeladen wurde.

sha1sum 2012-12-16-wheezy-raspbian.zip
514974a5fcbbbea02151d79a715741c2159d4b0a

Anschließend entpacken wir das Image.

unzip 2012-12-16-wheezy-raspbian.zip

und kopieren es auf die SD-Karte. Bitte ersetzt die 1 durch den korrekten Laufwerksbuchstaben der Speicherkarte, da es ansonsten zu einen Datenverlust führen kann!

Zunächst hängen wir den entsprechenden Datenträger aus.
Linux:

sudo umount /dev/sdb1

Mac OS X:

sudo umount /dev/disk1s1

und kopieren danach das Image auf die SD-Karte

sudo dd bs=4M if=2012-12-16-wheezy-raspbian.img of=/dev/disk1

Hardware anschließen, booten und den Rapsberry konfigurieren

Nachdem wir die Speicherkarte in den Raspberry Pi gesteckt und das Gerät mit dem heimischen Netzwerk gekoppelt haben, können wir es via SSH ansprechen und konfigurieren. Die IP-Adresse des Raspberry Pi’s ist in meinem Fall die 192.168.0.24 und fand ich über den Router heraus.

ssh 192.168.0.24 -l pi

Mit diesem Befehl wählen wir uns über das Netzwerk in den Raspberry Pi mit den Benutzer „Pi“ ein. Das Passwort lautet raspberry und sollte direkt geändert werden.

passwd

Nachdem dieser Elementare Schritt getan ist, können wir den Raspberry mittels

raspi-config

noch konfigurieren. Dieses ist selbsterklärend und bedarf keine nähere Erläuterung meinerseits.
Danach bringen wir das System noch auf den neusten Stand mittels,

sudo apt-get update
sudo apt-get upgrade

Tor installation und konfiguration

Zunächst installieren wir Tor und Tor-ARM

sudo apt-get install tor tor-arm

Während auf dem Raspberry Pi das Programm Tor installiert wird können wir uns Gedanken über die zu verwendenden Ports machen. Denn wenn sich der Tor-Server hinter einem Router befindet, müssen diese durch den Router zu dem Rapsberry Pi getunnelt werden. Filesharer und Gamer werden mit dieser Technik bereits vertraut sein. Im Regelfall verwendet Tor die Ports 9001 sowie 9030. Eine Übersicht, welche Ports für welche Dienste vorgesehen sind, findet sich bei Wikipedia. Ich habe mich für die Ports 9040 und 4439 entschieden und diese entsprechend im Router zum Raspberry Pi getunnelt. Fürs Interne SOCKS-Tunneling nutze ich den Port 9050, dazu später aber mehr.

Nach dem das erledigt ist, können wir die Tor Konfigurationsdatei bearbeiten

sudo nano /etc/tor/torrc

Auf dem ersten Blick erschlagen einen förmlich die ganzen Einstellungsmöglichkeiten. Die meisten sind für uns allerdings irrelevant und können ignoriert werden. Gern kann man auch alles löschen und durch folgendes ersetzen:

Log notice file /var/log/tor/notices.log
ControlPort 9051
ORPort 4439
Nickname AliasName
RelayBandwidthRate 100 KB
RelayBandwidthBurst 200 KB
DirPort 9040
ExitPolicy reject *:*
DisableDebuggerAttachment 0
AvoidDiskWrites 1
SocksPort 9050
SocksListenAddress 127.0.0.1
VirtualAddrNetwork 10.192.0.0/10
AutomapHostsOnResolve 1
TransPort 9040
TransListenAddress 127.0.0.1
DNSPort 53
DNSListenAddress 127.0.0.1

ORPort und DirPort sind die zuvor gewählten Ports, die man auch im Router freigegeben hat. Diese kann man prinzipiell, wie bereits zuvor erwähnt, frei wählen.

SocksPort, SocksListenAddress, VirtualAddrNetwork, DNSPort und DNSListenAddress sind für die spätere Netzinterne Tunnelung via Privoxy gedacht und können auch frei gewählt werden. Man sollte dieses lediglich bei der weiteren Konfigurierung beachten.

Der Nickname ist ebenso freiwählbar und sollte einmalig sein.
Hintergrund: Damit benennt man sein Tor-Relay, es entspricht also den Namen unter welchen sich das Tor-Relay im Tor-Netzwerk anmelden wird.

Mit ExitPolicy reject *.* legt ihr die Art des Knotens (Node) fest.
In diesem Fall handelt es sich um ein sogenanntes Relay ohne Exit-Node.

Mit den Einstellungen RelayBandwidthRate und RelayBandwidthBurst legt ihr die Traffic-Beschränkung eures Relays fest.

Die Einstellung DisableDebuggerAttachment ist dafür notwendig, um das Tor-Relay grafisch in ein Control-Panel (in unserem Fall arm) zu verpacken und bedienen.

AvoidDiskWrites dient dazu um die Schreibzugriffe zu reduzieren und schont das Speichermedium.

Eine detaillierte Übersicht über die Einstellungsmöglichkeiten findet ihr beim Torproject.

Nachdem Tor nun installiert, konfiguriert und eingerichtet ist, müssen wir es lediglich noch neu starten.

sudo /etc/init.d/tor restart

Privoxy installieren und konfigurieren

Zunäst installieren wir Privoxy mit den altbekannten Installationstool apt-get

sudo apt-get install privoxy

und fügen der Konfigurationsdatei mit dem Befehl

sudo nano /etc/privoxy/config

am Ende folgende Zeilen hinzu:

listen-address 192.168.0.24:8118
forward-socks5 / 127.0.0.1:9050 .

Der Punkt am Ende ist wichtig, damit Privoxy korrekt arbeitet. Diesen also bitte nicht vergessen (;
Nun starten wir auch diesen Dienst mittels

sudo /etc/init.d/privoxy restart

neu und haben es vollendet. Nun läuft auf dem Raspberry ein Tor-Relay, welches wir Netzwerkintern ansprechen können um unseren Internetverkehr zu anonymisieren. Damit dieses klappt, nutze ich Firefox, da der Proxy sehr simpel zu konfigurieren ist. In den Firefox Einstellungen navigiert man über Erweitert zu Netzwerk und klickt bei Verbindungen auf Einstellungen. Meine sehen wie folgt aus:

Sobald die Einstellungen gespeichert sind, kann man diese Prüfen, indem man die Internetseite Wie-ist-meine-IP.de ansteuert und auf der Startseite auf die IP-Adresse und den SOCKS achtet. Es sollte so ähnlich aussehen:

Damit wir noch die Rechner-Identität, wie das Betriebssystem verschleiern, nutzen wir eine hauseigene Funktion von Firefox. Dazu öffnen wir einen neuen Tab und öffnen folgende Seite

about:config

und erstellen einen neuen String mit den Namen

general.useragent.override

und lassen den Wert leer. Dadurch dürfte beim erneuten aufrufen der Seite die Identität nun verschwunden sein.

Ab jetzt surfen wir, so lange der Proxy in Firefox eingestellt ist und der Raspberry läuft, anonymisiert über das Tor-Netzwerk. Sicherlich ist die Geschwindigkeit nicht so schnell, wie zuvor (dieses ist über die torrc einstellbar), aber das ist mir eine Privatsphäre wert. Man sollte allerdings überlegen, was man womit abwickelt, denn die beste Lösung zur Anonymisierung ist sinnfrei, wenn man sich seinen privaten Facebook oder Twitter Account einloggt, Bankgeschäfte abwickelt oder eMails versendet. Zu diesem Zweck nutze ich weiterhin einen zweiten Browser (Google Chrome). Für alles andere wähle ich mich über den Proxy (Firefox) ein. Wer keine privaten eMails oder ähnliches auf den Gerät empfangen kann, hat die Möglichkeit den gesamten Internetverkehr über den Raspberry zu leiten. Dazu in einem anderen Artikel zur gegebenen Zeit mehr.

Die Aktivität eures Tor-Relays könnt ihr übrigens über den Raspberry jederzeit mit den Befehl

sudo -u debian-tor arm


aufrufen.

Den Proxy kann man natürlich für jede erdenkliche App nutzen, die einem einfällt und diese Option bietet.

Anregungen, Fehleranmerkungen oder ähnliches gern in die Kommentare!