Zum Hauptinhalt springen
S-EDV news
← Alle Anleitungen
📘 Anleitung Synology / NAS 30.05.2026 · 7 min Lesezeit

JDownloader anonym über Tor auf der Synology: Docker-Anleitung mit Container Manager

Mit einem Docker-Stack aus Tor-Gateway und JDownloader auf der Synology entsteht ein anonymer Download-Server: alle Verbindungen laufen über Tor, die eigene IP bleibt verborgen. Die Anleitung zeigt das Setup mit Container Manager – inklusive IP-Verifikation und Praxis-Hinweisen.

Synology-NAS als anonymer Download-Server – Symbolbild für JDownloader über Tor

JDownloader 2 ist seit Jahren das De-facto-Standardtool, um große Dateien von Filehostern, Mediatheken oder Wissenschafts-Archiven herunterzuladen. Wer den Download-Verkehr vollständig über das Tor-Netzwerk laufen lassen möchte – etwa für Privacy-Recherchen, Whistleblower-Workflows oder einfach um die eigene IP-Adresse aus den Server-Logs der Quellen zu entfernen – kann das auf der Synology sehr sauber mit zwei Docker-Containern lösen. Diese Anleitung führt durch das komplette Setup mit Container Manager unter DSM 7.2.

Was Tor leistet – und was nicht

Vor dem Setup ein paar ehrliche Hinweise, damit die Erwartungen passen:

  1. Tor verbirgt deine IP-Adresse gegenüber der Quelle, die die Datei ausliefert. Aus deren Sicht kommt der Download von einem Tor-Exit-Knoten irgendwo auf der Welt.
  2. Tor ist nicht für Bulk-Downloads optimiert. Realistisch sind 0,5–5 MB/s, oft auch weniger. Wer eine Gigabit-Leitung ausreizen möchte, ist mit einem klassischen VPN besser bedient.
  3. Tor.org rät von BitTorrent-Traffic ab, weil dieser das ganze Netzwerk belastet. Bei JDownloader geht es um HTTP/S-Downloads, also nicht um BitTorrent – die Belastung ist kleiner, aber jeder GB zählt. Bewusst und maßvoll nutzen.
  4. Tor schützt nicht vor schadhaften Quellen. Anonymität ersetzt keine Sorgfalt beim Umgang mit Downloads. Antiviren-Prüfung am Endgerät bleibt Pflicht.
  5. Rechtliche Verantwortung bleibt beim Nutzer. Anonymität ist kein Freibrief für illegale Quellen – Urheberrecht, Marken-, Persönlichkeitsrecht gelten unverändert.

Architektur in einem Satz

Zwei Container in einem isolierten Docker-Netzwerk: Der Tor-Gateway-Container stellt einen SOCKS5-Proxy auf Port 9050 bereit, der JDownloader-Container ist per Java-Proxy-Variable so konfiguriert, dass jeder ausgehende Verbindungsversuch durch diesen SOCKS5-Proxy läuft. JDownloader hat damit selbst keinen direkten Internetzugang mehr – alles geht über Tor.

Voraussetzungen

  1. Synology-NAS mit DSM 7.2 oder neuer und Container-Manager-Unterstützung.
  2. Paket Container Manager installiert.
  3. Mindestens 2 GB freier RAM, 4 GB sind komfortabler.
  4. Ein freier TCP-Port 5801 auf der Synology für das JDownloader-Web-UI.
  5. Ein eigener Volume-Ordner für Downloads (z. B. eine bestehende Freigabe namens Download).

Schritt 1: Ordner-Struktur anlegen

In der File Station innerhalb von /volume1/docker einen neuen Unterordner jdownloader-tor anlegen. Darunter zwei Unterordner für die persistenten Konfigurationen der beiden Container:

/volume1/docker/jdownloader-tor/
├── compose/
└── /volume1/docker/jdownloadertor/       (JDownloader-Config)

Wer ein eigenes Download-Verzeichnis nutzt, kann dieses statt /volume1/Download in den weiteren Schritten einsetzen.


Schritt 2: Eigene Benutzer-ID und Gruppen-ID ermitteln

Die Container müssen mit der richtigen User- und Group-ID laufen, damit Schreibrechte auf das Download-Verzeichnis stimmen. Auf der Synology gilt grundsätzlich: Die Gruppen-ID 65536 entspricht der Standardgruppe users. Die persönliche User-ID lässt sich auf zwei Wegen ermitteln:

  1. Per SSH einloggen und den Befehl id ausführen – die Zahl hinter uid= ist die gesuchte ID.
  2. Alternativ Systemsteuerung → Aufgabenplaner→ Aufgabeneinstellung → E-Mail eingeben und unten ins Feld "ID" --> Ausführen

Im weiteren Verlauf verwende ich beispielhaft USER_ID=1027 – diese Zahl muss durch die eigene ersetzt werden.


Schritt 1 (Aufgabeneinstellung )Synology Benutzer ID Schritt 1


E-Mail eingeben und unten ins Feld "ID"

Synology user ID Schritt 2

Ausführen

Synology User ID Schritt 3


Danach bekommst du eine E-Mail:


Der Aufgabenplaner hat eine geplante Aufgabe abgeschlossen.

Aufgabe: My UID and GID

Start: Sat, 30 May 2026 13:26:57 +0200

Ende: Sat, 30 May 2026 13:26:57 +0200

Aktueller Status: 0 (Normal)

Standardausgabe/Fehler:

uid=1026(sedv) gid=100(users) groups=100(users),101(administrators)


Von HomeNAS



Schritt 3: docker-compose.yml als Projekt anlegen

Im Container Manager auf Projekt → Erstellen klicken. Folgende Felder ausfüllen:

  1. Projektname: jdownloader-tor
  2. Pfad: /volume1/docker/jdownloader-tor/compose
  3. Quelle: YAML-Code erstellen


Synology Projekt Tor Jdownloader anlegen

In das YAML-Feld folgenden Compose-Code einfügen. Vor dem Speichern USER_ID und gegebenenfalls den Download-Pfad anpassen:

services:
  tor-gateway:
    image: dperson/torproxy:latest
    container_name: tor-gateway
    restart: unless-stopped
    environment:
      - TZ=Europe/Berlin
    ports:
      - "9050:9050"
      - "8118:8118"
    networks:
      tor_net:
        ipv4_address: 10.10.200.10

  jdownloader:
    image: jlesage/jdownloader-2:latest
    container_name: jdownloader-tor
    restart: unless-stopped
    depends_on:
      - tor-gateway
    environment:
      - TZ=Europe/Berlin
      - USER_ID=1027
      - GROUP_ID=65536
      - UMASK=0022
      - KEEP_APP_RUNNING=1
      - JAVA_TOOL_OPTIONS=-DproxySet=true -DsocksProxyHost=tor-gateway -DsocksProxyPort=9050
    volumes:
      - /volume1/docker/jdownloadertor:/config:rw
      - /volume1/Download:/output:rw
    ports:
      - "5801:5800"
    shm_size: "512mb"
    networks:
      tor_net:
        ipv4_address: 10.10.200.30

networks:
  tor_net:
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: 10.10.200.0/24
          gateway: 10.10.200.1

Die wichtigsten Stellen erklärt:

  1. JAVA_TOOL_OPTIONS setzt JDownloaders eigene Java-Laufzeitumgebung dauerhaft auf den SOCKS5-Proxy tor-gateway:9050. Damit ist jeder Download und jede Captcha-Anfrage automatisch durch Tor getunnelt – ohne dass in der JDownloader-Oberfläche manuell ein Proxy konfiguriert werden muss.
  2. depends_on sorgt dafür, dass der Tor-Container zuerst startet.
  3. Das eigene Bridge-Netz tor_net mit dem Subnetz 10.10.200.0/24 trennt den Stack sauber vom Synology-Standardnetz. Die Container erreichen sich über Namensauflösung (tor-gateway), die festen IPs dienen nur der Übersicht.
  4. Der Port 5801 auf dem Host bleibt erreichbar – darüber läuft das JDownloader-Web-UI.

Schritt 4: Stack starten

Mit Weiter bestätigen, die Web-Portal-Konfiguration leer lassen (der Stack braucht keine zusätzliche Anmeldung über Container Manager) und schließlich auf Fertig klicken. Container Manager lädt die Images, erstellt das Netzwerk und startet beide Container. Nach etwa einer Minute sollten beide Container im Reiter Container mit Status Wird ausgeführt auftauchen.

Schritt 5: Tor-Verbindung testen

Bevor JDownloader live geht, kurz prüfen, ob der Tor-Tunnel funktioniert. Per SSH auf der Synology:

docker exec jdownloader-tor curl -s --socks5-hostname tor-gateway:9050 https://check.torproject.org/api/ip

Die Antwort sollte ein JSON-Objekt mit dem Feld IsTor: true enthalten.

{"IsTor":true,"IP":"192.42.116.116"}

Damit ist gesichert, dass der JDownloader-Container den Tor-Tunnel verwendet. Falls SSH nicht aktiv ist, lässt sich derselbe Test im Container Manager über den Punkt Details → Terminal → Erstellen ausführen.

Schritt 6: JDownloader-Web-UI öffnen

Im Browser folgende Adresse aufrufen – NAS-IP durch die lokale IP-Adresse der Synology ersetzen:

http://NAS-IP:5801

Die noVNC-basierte Web-Oberfläche zeigt nach wenigen Sekunden die gewohnte JDownloader-Oberfläche. Beim ersten Start läuft der initiale JDownloader-Setup-Assistent – Sprache wählen, Lizenzbedingungen akzeptieren, fertig.

Schritt 7: JDownloader konfigurieren

Zwei Einstellungen sind vor dem ersten Download empfehlenswert:

  1. Download-Verzeichnis: Unter Einstellungen → Allgemeine Einstellungen → Standard-Download-Ordner auf /output setzen. Das ist im Container der Pfad, der auf /volume1/Download der Synology zeigt.
  2. TOR verbinden: Unter (0)Einstellungen → (1)Verbindungsmanager → (2)Proxy-Typ auf Socks5 Proxy setzen (3) Host: tor-gateway und dann den (4)Port auf 9050.

Tor jDownloader Einstellungen mit Port


MyJDownloader (optional): Wer JDownloader von unterwegs steuern möchte, kann sich kostenlos bei my.jdownloader.org registrieren und das Konto in den JDownloader-Einstellungen verknüpfen. Wichtig: MyJDownloader läuft über die JDownloader-Cloud und macht die Steuerung von außen sichtbar – die Downloads selbst bleiben anonym über Tor.

Schritt 8: Anonymität verifizieren

Die zuverlässigste Verifikation läuft direkt im JDownloader-Container und nutzt das offizielle Check-API des Tor-Projekts. Per SSH auf der Synology folgenden Befehl ausführen:

docker exec jdownloader-tor curl -s --socks5-hostname tor-gateway:9050 https://check.torproject.org/api/ip

Die Antwort ist ein kompaktes JSON-Objekt:

{"IsTor":true,"IP":"185.220.101.34"}

Zwei Werte sind entscheidend:

  1. IsTor: true – damit bestätigt der Tor-Projekt-Server direkt, dass die Anfrage über einen Tor-Exit-Knoten reinkam.
  2. IP ist die aktuelle Exit-Node-Adresse, auf keinen Fall die eigene öffentliche IP des Anschlusses.

Wer den Befehl mehrfach in kurzer Folge ausführt, bekommt unterschiedliche Exit-Node-IPs zu sehen. Das zeigt die normale Tor-Circuit-Rotation und ist zugleich ein guter Indikator, dass der Tunnel sauber durchschaltet. Liefert die Antwort dagegen IsTor: false oder eine IP aus dem eigenen Provider-Range, ist der SOCKS5-Tunnel nicht aktiv – in diesem Fall die Compose-Datei prüfen und den Stack mit docker compose down und docker compose up -d komplett neu starten.

Updates und Wartung

Beide Images werden regelmäßig aktualisiert. Update-Routine im Container Manager:

  1. Im Reiter Projekt das Projekt jdownloader-tor öffnen.
  2. Auf Aktualisieren klicken – Container Manager zieht neue Images und ersetzt die laufenden Container.
  3. Anschließend mit Schritt 5 erneut prüfen, ob der Tor-Tunnel noch funktioniert.

Der persistente Ordner /volume1/docker/jdownloadertor sollte in den Hyper-Backup-Job aufgenommen werden. Damit lässt sich der gesamte JDownloader-Zustand inklusive Account-Manager und Kontingenten im Notfall wiederherstellen.

Troubleshooting

  1. JDownloader öffnet sich, aber Downloads laufen nicht an: Tor-Gateway hat noch keine stabile Circuit-Verbindung. Container tor-gateway kurz neu starten, eine Minute warten.
  2. Captchas funktionieren nicht: Manche Captcha-Provider blockieren Tor-Exit-Nodes komplett. In diesem Fall hilft nur, einen anderen Filehoster zu wählen oder den Download manuell zu starten.
  3. IsTor: false bei der Verifikation: Die Variable JAVA_TOOL_OPTIONS ist nicht korrekt gesetzt – Compose-Datei prüfen, Stack neu starten.
  4. Permission denied im Download-Ordner: USER_ID/GROUP_ID stimmen nicht. Mit id per SSH die echten Werte ermitteln und in der Compose-Datei einsetzen.
  5. Sehr langsame Downloads: Das ist erwartbares Verhalten von Tor. Mehr in den oberen Praxis-Hinweisen.

Fazit

Mit zwei Containern und einer Compose-Datei lässt sich JDownloader auf der Synology sauber durch das Tor-Netzwerk tunneln. Die Lösung ist persistent, überlebt Reboots und braucht im Alltag keine weitere Pflege außer regelmäßigen Updates. Wer maximale Anonymität ohne Cloud-VPN-Abo braucht und mit der reduzierten Geschwindigkeit leben kann, hat hier ein robustes Setup.


Weitere Synology- und Container-Anleitungen in den Kategorien Synology / NAS und Docker.

Quellen: The Tor Project, jlesage/jdownloader-2 auf Docker Hub, dperson/torproxy auf Docker Hub