Skip to main content

Tors Snowflake Proxy unter DietPi installieren

Es soll Länder geben, die ihren Bürgern den Zugang zum Internet verwehren oder ihn zensieren. Das Tor-Projekt ist vermutlich den meisten bekannt, vom Snowflake-Proxy hörte ich heute aber zum ersten Mal.

Es handelt sich dabei und eine Art, den eigenen, unzensierten Interentzugang anderen zur Verfügung zu stellen. Eine Möglichkeit ist die Verwendung eines Browser-Plugins, was aber bedeuten würde, dass ich meinen Computer 24/7 laufen lassen müsste. Na ja, Strompreise und so.

Da mein Raspberry Pi 4 aber ohnehin 24/7 läuft, habe ich meinen Snowflake-Proxy auf diesem installiert.

Die einfachste Methode ist die über Docker. Das Projekt stellt ein Docker-Image zur Verfügung, einfacher geht’s wirklich nicht.

Mittels

sudo dietpi-software install 134 162 185

installieren wir Docker Compose (134), Docker (162) und Portainer (185, völlig optional) auf dem Raspberry.

Wer lieber den “offiziellen” Weg gehen möchte, findet die Instruktionen für Docker hier und die für Docker Compose hier.

Portainer braucht ihr wirklich nicht zu installieren, ist aber auf jeden Fall einen Blick wert. Nach der Installation lauscht die Software auf Port 9002 auf eurem Pi.

Richtet des Komforts halber nun euren Systemuser so ein, dass er dockern darf.

sudo usermod -aG docker dietpi

Ein kurzer Logout und Login und schon darf euer User Docker nutzen.

Nachdem Docker und docker compose nun installiert sind, braucht es nur noch einen Download des Docker-Compose-Files mittels

wget https://gitlab.torproject.org/tpo/anti-censorship/docker-snowflake-proxy/raw/main/docker-compose.yml
docker-compose up -d snowflake-proxy

Docker Compose lädt nun alles erforderliche herunter und übernimmt die Einrichtung für euch.

Wenn ihr Portainer installiert habt, solltet ihr unter http://EUERPI:9002/#!/2/docker/containers den Container sehen. Ohne Portainer könnt ihr den Status einfach mittels

docker ps

abfragen.

Die Ausgabe dazu:

CONTAINER ID   IMAGE                                  COMMAND        CREATED          STATUS          PORTS                                                           NAMES
IDEURESCONTA   thetorproject/snowflake-proxy:latest   "/bin/proxy"   4 minutes ago    Up 4 minutes                                                                    snowflake-proxy

Wenn das in etwa so aussieht, wie bei mir, hat alles geklappt.

Auf meinem Pi 4 mit 4 GB RAM ist die RAM-Auslastung nur unwesentlich angestiegen, die Grundlast liegt bei etwa 0.2.

Weitere Infos zum Docker-Image gibt’s im GitLab des Tor-Projekts.

Wenn ihr jetzt noch schauen wollt, was so netzwerktechnisch auf eurem Mini-Rechner abgeht, lege ich euch iftop ans Herz.

sudo apt install iftop -y

Startet es dann mit sudo iftop.

Um das übertragene Datenvolumen ganz allgemein im Auge zu behalten, bietet sich das kleine Tool vnstat an.

Installiert wird es via

sudo apt install vnstat

Damit das Tool im Hintergrund läuft und beim Systemstart auch mitgestartet wird, richten wir es noch wie folgt ein:

sudo systemctl enable vnstat
sudo systemctl start vnstat

Nach einer Weile des Wartens werden die Statistiken soweit mit Daten befüllt sein, dass der Output in etwa so aussehen dürfte.

                      rx      /      tx      /     total    /   estimated
 docker0:
       2022-09           0 B  /       216 B  /       216 B  /     --
         today           0 B  /       216 B  /       216 B  /     --

 eth0:
       2022-09    163,40 MiB  /  160,94 MiB  /  324,34 MiB  /  420,23 MiB
         today    163,40 MiB  /  160,94 MiB  /  324,34 MiB  /  325,47 MiB

Wenn ihr nicht unbegrenzten Traffic habt, behaltet den Wert im Auge und lasst euch ggf. per E-Mail über das Überschreiten von Schwellenwerten informieren.