Dieses Handbuch führt dich durch die Installation, den Betrieb und die Wartung des Snowflake-Proxys auf Linux-basierten Systemen. Der Betrieb eines Snowflake-Proxys ist ein einfacher Weg, um zu den Anti-Zensur-Bemühungen des Tor-Projekts beizutragen.

1. Installiere Go

Zunächst musst du den Go-Compiler installieren und konfigurieren, um den Standalone-Proxy aus dem Quellcode zu erstellen. Bitte melde dich mit einem Benutzerkonto mit sudo-Rechten oder direkt mit root an (im letzteren Fall lass den sudo-Teil in den folgenden Befehlen weg).

Wenn du Ubuntu oder Debian benutzt, kannst du Go installieren, indem du sudo apt install golang ausführst. Wenn du Fedora, Red Hat oder Amazon Linux mit sudo yum install golang oder sudo dnf install golang verwendest.

Du brauchst Go 1.21 oder eine neuere Version, um den Snowflake-Proxy auszuführen. Überprüfe deine Go-Version mit go version. Anderenfalls lade die Go binary von der offiziellen Webseite herunter und folge der Installationsanleitung.

2. Installiere Git und klone das Snowflake-Repository

Zweitens benötigst du den Git-Client, um den Snowflake-Quellcode herunterzuladen.

Wenn du Ubuntu oder Debian benutzt, kannst du git installieren, indem du sudo apt install git ausführst. Wenn du Fedora, Red Hat oder Amazon Linux mit sudo yum install git oder sudo dnf install git verwendest. Andernfalls konsultiere die Dokumentation deines Betriebssystems.

Bitte führe die folgenden Schritte mit dem Benutzerkonto aus, unter dem der Proxy ausgeführt werden soll. Verwende nicht root.

Es wird empfohlen, ein separates Snowflake-Konto mit eingeschränkten Rechten auf dem System zu erstellen.

Öffne dein Terminal und klone den Quellcode:

git clone https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git

3. Baue den Snowflake-Proxy

Nachdem du das Repository geklont hast, kannst du die Snowflake-Proxy Binärdateien mit dem folgenden Befehl bauen:

cd snowflake/proxy
go build

4. Starte den Snowflake-Proxy

Nachdem du dein Proxy fertig kompiliert hast, kannst du folgenden Befehl ausführen:

nohup ./proxy &

Anmerkung: Das Kommando nohup erlaubt es, dass das Programm im Hintergrund weiter ausgeführt wird, selbst nach Schließen des Terminals, und & schiebt das Kommando direkt in den Hintergrund.

Wenn du die Proxy-Ausgabe in eine Log-Datei speichern willst, um zum Beispiel deine Proxy-Nutzung einzusehen, kannst du diesen Befehl benutzen:

nohup ./proxy >snowflake.log 2>&1 &

5. Stelle sicher, dass der Proxy nach einem Neustart des Systems automatisch gestartet wird

Bearbeite deine Crontab, indem du folgendes Kommando ausführst:

crontab -e

Gib die folgende Zeile ein (Beispiel, passe die Pfade an deine Situation an)

@reboot nohup /home/snowflake/snowflake/proxy/proxy > /home/snowflake/snowflake/proxy/snowflake.log 2>&1 &

Bitte überprüfe, ob dies funktioniert, indem du das System neu startest und das Protokoll checkst. Anmerkung: Bei manchen Linux-Installationen könnte es sein, dass dies nicht funktioniert.

6. Halte deinen Snowflake-Proxy aktuell

Um deinen Snowflake-Proxy auf dem neuesten Stand zu halten, führe alle paar Wochen die folgenden Befehle aus (melde dich mit dem Benutzerkonto an, das du bei der Installation des Proxys verwendet hast):

kill -9 $(pidof proxy)
cd snowflake/
git pull
cd proxy
go build
nohup ./proxy >snowflake.log 2>&1 &