Schlagwort: Tor Project

  • TOR Relay Einrichten

    TOR Relay Einrichten

    Seit ich das Hörbuch von Edward Snowden gehört habe, dachte ich mir „was ein interessantes Netz“. Das „DarkNet“ hat in den Medien immer so einen erschrecken schlechten Ruf bekommen. Dabei ist dies Netzwerk für viele Menschen der einzige Weg über die Landesgrenzen hinaus zu kommunizieren.

    Für mich selbst stand die technische Herausforderung ganz oben. Ich dachte immer, dass das einrichten eines Relays extrem aufwendig ist. Blödsinn. Wenige Klicks, wenn man weiß wie.

    Ich habe meine Installation mit geschrieben und wollte sie dir mitgeben.

    Installation

    Ich habe mein Relay auf einer Proxmox Umgebung am laufen und dort als VM. Vermutlich geht auch ein LXC. Da kann es aber sein, dass dir ggf. einige Anwendungen fehlen. Das musst du dann selbst im Blick haben.

    Die Installation soll auch auf einen Raspberry Pi möglich sein. Ich habe mich allerdings hier für das System Debian Bookworm entschieden. Es ist zu der jetzigen Zeit das aktuelle System.

    Ist die VM erstellt, kann es auch schon losgehen.

    ## Die Befehle habe ich als sudo abgesetzt
    su
    
    ## System einmal frisch machen
    apt update && apt upgrade -y
    
    ## Nun wird auch schon TOR und nyx installiert. 
    ## nyx ist später das Überwachungsprogramm
    apt install tor nxy -y

    Konfiguration

    Vor der Konfiguration wird ein HASH benötigt welches wir später benötigen. Also in die Zwischenablage Kopieren

    tor --hash-password SICHERES-PASSWORT-EINTRAGEN

    Nun geht es in die TOR Konfiguration unter

    nano /etc/tor/torrc

    Hier gibt es ein paar wenige Punkte die man einstellen sollte und andere kann. Zur Aktivierung das # entfernen. Die Erklärung ist mit zwei ##’s gesetzt.

    Dies sind meine aktivierten Punkte:

    Log notice file /var/log/tor/notices.log
    Log notice syslog
    RunAsDaemon 1
    DataDirectory /var/lib/tor
    ControlPort 9051
    HashedControlPassword HIER DEIN HASH EINTRAGEN
    CookieAuthentication 1
    
    ## Dieser Port muss im Router freigegeben werden und ist somit ein Pflichtfeld
    ORPort 9001
    
    ## Hier kommt der Name deines Relays hin. Nach diesem kannst du später auch suchen:  
    https://metrics.torproject.org/rs.html#simple
    Nickname NAME-DEINES-RELAY
    
    ## Hier kann man in den klammern ein bisschen verschlüsselt die eMail hinterlegen. Da Die Mail veröffentlicht wird, wird vermutlich diese getarnt durch die Farbe weiß (0xFFFFFFFF)
    ContactInfo 0xFFFFFFFF Random Person <nobody AT example dot com>
    
    ## Das ist die Bandbreite die du zur verfügung stellen möchtest. Ich habe hier 2,5MB/s zur verfügung gestellt. 5MB/s nur unter kurzen Spitzen. Es besteht auch die Möglichkeit ein Limit einzutragen (wieviel GB pro Tag z.B.)
    RelayBandwidthRate 2500 KB  # Throttle traffic to 100KB/s (800Kbps)
    RelayBandwidthBurst 5000 KB # But allow bursts up to 200KB/s (1600Kbps)
    
    DirPort 9030
    
    ## Dieser Punkt ist tatsächlich der wichtigste. Er bezeichnet ob dein Server als Exit Knoten funktionieren darf. In Deutschland ist die Gesetzeslage eine kritische und wir vom TOR Projekt nicht empfohlen. 
    ExitPolicy reject *:*

    Damit ist die Konfiguration von TOR schon fertig. Nun muss der PORT noch im Router freigegeben werden. In der Fritzbox unter Internet – Freigaben. Bei mir war es der ORPort 9001.

    TOR Update

    Das TOR Projekt hat eine eigene Debian Quelle die immer die neusten Paketquellen beinhaltet. Die Paketquellen von Debian sind leider, was das TOR Projekt angeht veraltet. Die Installation von deren Webseite war recht einfach wenn man alle Pakete dafür installiert hat. Hatte ich natürlich nicht.
    Einmal die Anleitung vom TOR Projekt: https://support.torproject.org/de/apt/tor-deb-repo/

    Ich arbeite mich mal fixer durch die Webseite:

    ## Voraussetzung: Verifiziere die CPU-Architektur
    ## Das Paket-Repository bietet die Programmdateien amd64, arm64 und i386
    ## Prüfen mit
    dpkg --print-architecture
    
    ## Installiere apt-transport-https
    apt install apt-transport-https
    
    ## Ermittle dein System
    lsb_release -c
    
    ## Erstelle die Datei tor.list
    nano /etc/apt/sources.list.d/tor.list
    
    ## und füge hier folgende Einträge ein
    ## unter <DISTRIBUTION> muss die Debian Version die oben ermittelt wurde (lsb_release -c) eingetragen werden und das ohne die Klammern
    deb     [signed-by=/usr/share/keyrings/deb.torproject.org-keyring.gpg] https://deb.torproject.org/torproject.org <DISTRIBUTION> main
    deb-src [signed-by=/usr/share/keyrings/deb.torproject.org-keyring.gpg] https://deb.torproject.org/torproject.org <DISTRIBUTION> main
    
    ## bei mir sah es so aus
    deb     [signed-by=/usr/share/keyrings/deb.torproject.org-keyring.gpg] https://deb.torproject.org/torproject.org bookworm main
    deb-src [signed-by=/usr/share/keyrings/deb.torproject.org-keyring.gpg] https://deb.torproject.org/torproject.org bookworm main
    
    ## GPG-Schlüssel
    ## Nun wird eine GPG-Schlüssel benötigt. Ich hatte das nötige Programm auf meinem Debian noch nicht installiert. Zu installieren mit
    apt install gnupg2
    
    ## Nun wird der GPG-Schlüssel vom TOR Projekt herunter geladen
    wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | tee /usr/share/keyrings/deb.torproject.org-keyring.gpg >/dev/null
    
    ## ein Update
    apt update
    
    ## und zuletzt die Installation weiterer Pakete
    apt install tor deb.torproject.org-keyring

    Da ich meinen TOR Relay in Proxmox am laufen habe und ich diesen immer mal neu starte, habe ich mir überlegt, mein TOR automatisch starten zu lassen.

    systemctl enable tor

    Optional kann man es auch manuell starten mit

    systemctl tor

    Monitoring

    Durch starten des Programms nyx kann man sehen was gerade passiert. Es wird ein paar Minuten dauern bis dein Relay vom TOR Netzwerk gefunden wurde. Ich habe auf einer Webseite mal was von 3 Stunden gelesen.
    Irgendwann steht unter flags: Running, V2Dir, Valid