# qBittorrent met VPN op je Synology NAS (Docker, Gluetun en PIA)

Bron: https://www.duken.nl/qbittorrent-vpn-synology-docker
Bijgewerkt: 2026-11-02

> Maak in Container Manager een project met twee containers. Gluetun maakt de VPN-verbinding met PIA, en qBittorrent gebruikt het netwerk van Gluetun via network_mode service:gluetun. Al het torrentverkeer gaat dan verplicht door de VPN, de webinterface open je op poort 8090 van je NAS, en Gluetun zet de doorgestuurde PIA-poort automatisch in qBittorrent.

Wil je dat je NAS zelfstandig downloadt, zonder dat je pc aan hoeft te staan, en wil je dat al dat verkeer via een VPN loopt? Dan is **qBittorrent in Docker, gekoppeld aan een VPN-container**, de nette oplossing. In deze handleiding zetten we het op een Synology NAS met Container Manager. We hebben elke stap zelf uitgevoerd op een DS224+ en de screenshots komen van die installatie.

Wat je aan het einde hebt:

- qBittorrent draait op je NAS en is te bedienen via je browser, vanaf elke pc of telefoon in je thuisnetwerk.
- Al het torrentverkeer gaat **verplicht** door de VPN. Valt de VPN weg, dan heeft qBittorrent geen internet meer. Er lekt dus niets via je eigen IP-adres.
- Met **port forwarding** van PIA ben je bereikbaar voor andere peers, wat flink scheelt in snelheid.

> **Eerst even dit.** Downloaden uit illegale bron is in Nederland verboden, ook met een VPN. Een VPN beschermt je privacy, maar maakt iets wat niet mag niet legaal. Gebruik deze opzet voor legale downloads, zoals Linux-distributies, open-source software, public-domainfilms en je eigen bestanden.

## In het kort: qBittorrent met VPN op een Synology

1. Maak in File Station de mappen voor de instellingen en de downloads aan.
2. Maak in Container Manager een project met de docker-compose.yml uit deze handleiding.
3. Controleer in het logboek van Gluetun of de VPN verbonden is en welke poort PIA heeft doorgestuurd.
4. Log in op de webinterface van qBittorrent met het tijdelijke wachtwoord en stel een eigen wachtwoord in.
5. Zet "Bypass authentication for clients on localhost" aan, zodat Gluetun de poort kan doorzetten.
6. Zet qBittorrent vast op de VPN-interface tun0 en herstart het project.
7. Test met de torrentcheck van ipleak.net of qBittorrent het VPN-adres gebruikt.

## Hoe het werkt

*Schema: qBittorrent achter gluetun: geen netwerk zonder VPN. qBittorrent heeft geen eigen netwerk maar gebruikt via network_mode service:gluetun alleen het netwerk van de gluetun-container. gluetun maakt de WireGuard-verbinding met de PIA-server, die verbonden is met de zwerm. Valt gluetun weg, dan heeft qBittorrent geen netwerk en kan er niets lekken.*
We gebruiken twee containers:

1. **Gluetun** is de VPN-client. Hij maakt de verbinding met je VPN-dienst en heeft een eigen firewall die al het verkeer blokkeert dat niet door de tunnel gaat.
2. **qBittorrent** heeft geen eigen netwerk, maar gebruikt dat van Gluetun (`network_mode: service:gluetun`). Ook de webinterface loopt via Gluetun.

Dit is betrouwbaarder dan een VPN-app met een kill-switch-vinkje: qBittorrent *kan* simpelweg niet buiten de tunnel om. Draai je Docker niet op een Synology maar op een Linux-server of Raspberry Pi? Dan werkt dezelfde opzet via de opdrachtregel, zie [qBittorrent met VPN in Docker](https://www.duken.nl/qbittorrent-vpn-docker). Gluetun ondersteunt tientallen VPN-diensten. Wij gebruiken [Private Internet Access](https://www.duken.nl/go/pia?src=qbittorrent-nas), omdat PIA port forwarding aanbiedt en Gluetun die poort automatisch kan doorgeven aan qBittorrent.

## Wat heb je nodig?

- Een Synology NAS met een **Intel- of AMD-processor** (plus-modellen zoals de DS224+, DS423+ en DS923+) en het pakket **Container Manager** (Pakketcentrum).
- Een VPN-abonnement. Voor PIA heb je je **gebruikersnaam (p1234567) en wachtwoord** nodig. Dat is je PIA-login, geen aparte VPN-sleutel.
- Het IP-bereik van je thuisnetwerk, bijvoorbeeld `192.168.1.0/24`. Je vindt het IP-adres van je NAS onder **Configuratiescherm > Netwerk > Netwerkinterface**. Vervang het laatste getal door `0/24`.

## Stap 1: mappen aanmaken

Open **File Station** en maak de volgende mappen aan:

- `docker/qbittorrent-vpn` met daarin twee submappen: `gluetun` en `qbittorrent`. Hier komen de instellingen.
- Een map voor je downloads, bijvoorbeeld `media/downloads`.

![File Station met de map qbittorrent-vpn en de submappen gluetun en qbittorrent](https://www.duken.nl/images/qbittorrent-vpn-01-mappen-aanmaken.webp)

## Stap 2: project aanmaken in Container Manager

Open **Container Manager**, ga naar **Project** en klik op **Maken**.

- **Naam van project:** `qbittorrent-vpn`
- **Pad:** kies de map `docker/qbittorrent-vpn` uit stap 1
- **Bron:** `docker-compose.yml aanmaken`

Plak de configuratie hieronder in het tekstvak:

```yaml
services:
  gluetun:
    image: qmcgaw/gluetun:latest
    container_name: gluetun
    cap_add:
      - NET_ADMIN
    devices:
      - /dev/net/tun:/dev/net/tun
    environment:
      - VPN_SERVICE_PROVIDER=private internet access
      - VPN_TYPE=openvpn
      - OPENVPN_USER=JOUW_PIA_GEBRUIKERSNAAM
      - OPENVPN_PASSWORD=JOUW_PIA_WACHTWOORD
      - SERVER_REGIONS=Netherlands
      - VPN_PORT_FORWARDING=on
      - VPN_PORT_FORWARDING_UP_COMMAND=/bin/sh -c 'wget -O- --retry-connrefused --post-data "json={\"listen_port\":{{PORTS}}}" http://127.0.0.1:8090/api/v2/app/setPreferences 2>&1'
      - FIREWALL_OUTBOUND_SUBNETS=192.168.1.0/24
      - TZ=Europe/Amsterdam
    ports:
      - 8090:8090
    volumes:
      - ./gluetun:/gluetun
    restart: unless-stopped

  qbittorrent:
    image: lscr.io/linuxserver/qbittorrent:latest
    container_name: qbittorrent
    network_mode: service:gluetun
    depends_on:
      gluetun:
        condition: service_healthy
    environment:
      - PUID=1026
      - PGID=100
      - TZ=Europe/Amsterdam
      - WEBUI_PORT=8090
    volumes:
      - ./qbittorrent:/config
      - /volume1/media/downloads:/downloads
    restart: unless-stopped
```

Pas deze regels aan voor je eigen situatie:

| Regel | Wat vul je in? |
|---|---|
| `OPENVPN_USER` en `OPENVPN_PASSWORD` | Je PIA-gebruikersnaam en -wachtwoord |
| `SERVER_REGIONS` | Een PIA-regio **met** port forwarding, zoals Netherlands, DE Frankfurt of Switzerland. De VS-regio's ondersteunen het niet. |
| `FIREWALL_OUTBOUND_SUBNETS` | Het IP-bereik van je thuisnetwerk. Zonder deze regel kun je de webinterface niet openen. |
| `PUID` en `PGID` | `1026` en `100` passen bij de eerste gebruiker op de meeste Synology's. Krijg je later schrijffouten, kijk dan via SSH met `id jouwgebruiker` wat jouw waarden zijn. |
| `/volume1/media/downloads` | De downloadmap uit stap 1 |

We gebruiken poort **8090** voor de webinterface, omdat 8080 op een Synology vaak al door een ander pakket wordt gebruikt.

![De docker-compose.yml in Container Manager](https://www.duken.nl/images/qbittorrent-vpn-02-compose-plakken.webp)

Klik op **Volgende**. De optie voor Web Station kun je overslaan. Controleer de samenvatting, laat **Start het project zodra het is aangemaakt** aangevinkt en klik op **Voltooid**.

![Samenvatting van het nieuwe project](https://www.duken.nl/images/qbittorrent-vpn-03-samenvatting.webp)

Container Manager downloadt nu beide images en start de containers. Dat duurt een minuut of twee. Eerst start Gluetun, en pas als de VPN-verbinding staat ("Healthy") start qBittorrent. Je bent klaar als er `Exit Code: 0` staat.

![Het project is gestart: gluetun is Healthy, daarna start qbittorrent](https://www.duken.nl/images/qbittorrent-vpn-04-project-gestart.webp)

![Beide containers draaien in het project](https://www.duken.nl/images/qbittorrent-vpn-05-project-containers.webp)

## Stap 3: controleren of de VPN werkt

Ga naar **Container**, open **gluetun** en klik op het tabblad **Logboek**. Zoek naar deze regels:

- `Public IP address is ...` met een land dat bij je PIA-regio past. Dat is het IP-adres waarmee je NAS nu het internet op gaat.
- `port forwarded is 29061` (jouw getal is anders). Dat is de poort die PIA voor je heeft opengezet.

Bij de eerste start zie je waarschijnlijk ook `403 Forbidden` bij `up command`. Dat klopt: Gluetun probeert de poort in qBittorrent te zetten, maar qBittorrent laat dat nog niet toe. Dat lossen we op in stap 5.

## Stap 4: inloggen op de webinterface

Nieuwere versies van qBittorrent maken bij de eerste start een **tijdelijk wachtwoord** aan. Open de container **qbittorrent** en kijk in het **Logboek** naar de regel *A temporary password is provided for this session*.

![Het tijdelijke wachtwoord staat in het logboek van de qbittorrent-container](https://www.duken.nl/images/qbittorrent-vpn-07-qbittorrent-wachtwoord.webp)

Ga in je browser naar `http://IP-VAN-JE-NAS:8090` en log in met gebruikersnaam `admin` en dat tijdelijke wachtwoord.

![Inlogscherm van de qBittorrent WebUI](https://www.duken.nl/images/qbittorrent-vpn-08-webui-login.webp)

Stel daarna meteen je eigen wachtwoord in via **Tools > Options > WebUI > Authentication** en klik onderaan op **Save**. Het tijdelijke wachtwoord verandert namelijk bij elke herstart.

## Stap 5: port forwarding automatisch laten doorzetten

Ga in hetzelfde scherm (**Options > WebUI**) naar **Bypass authentication for clients on localhost** en vink het aan. Gluetun draait in hetzelfde netwerk als qBittorrent, dus zo mag Gluetun de doorgestuurde poort instellen zonder wachtwoord. Voor apparaten in je thuisnetwerk blijft het wachtwoord gewoon nodig.

![Bypass authentication for clients on localhost aanzetten](https://www.duken.nl/images/qbittorrent-vpn-09-localhost-bypass.webp)

Klik op **Save**.

## Stap 6: qBittorrent vastzetten op de VPN (extra zekerheid)

Ga naar **Options > Advanced** en zet **Network interface** op **tun0**. Dat is de VPN-tunnel van Gluetun. De firewall van Gluetun houdt al het verkeer buiten de tunnel al tegen, maar zo heb je twee sloten op de deur.

![Network interface op tun0 in de geavanceerde instellingen](https://www.duken.nl/images/qbittorrent-vpn-10-netwerkinterface-tun0.webp)

Klik op **Save**. Start daarna het project één keer opnieuw: **Container Manager > Project > qbittorrent-vpn > Actie > Opnieuw starten**. In het logboek van Gluetun zie je nu `HTTP request sent, awaiting response... 200`: de poort staat in qBittorrent.

![Gluetun zet de doorgestuurde poort in qBittorrent, met antwoord 200](https://www.duken.nl/images/qbittorrent-vpn-06-gluetun-portforwarding.webp)

Je kunt het ook in qBittorrent controleren onder **Options > Connection**: de luisterpoort is daar gelijk aan de poort uit het logboek van Gluetun.

## Stap 7: testen op IP-lekken

Nu het belangrijkste: welk IP-adres zien andere torrentgebruikers? Dat test je met de gratis torrentcheck van ipleak.net.

1. Ga op een pc naar [ipleak.net](https://ipleak.net) en klik bij **Torrent Address detection** op **Activate**.
2. Kopieer de magnetlink (rechtsklik op *this Magnet Link* > Link kopiëren).
3. Klik in qBittorrent op het kettingicoon (**Add torrent links**), plak de link en klik op **Download**.

![De magnetlink van ipleak.net toevoegen in qBittorrent](https://www.duken.nl/images/qbittorrent-vpn-11-ipleak-magnet.webp)

Na een halve minuut verschijnt op ipleak.net het IP-adres dat qBittorrent naar buiten laat zien, plus de poort.

![ipleak.net ziet het PIA-adres en de doorgestuurde poort](https://www.duken.nl/images/qbittorrent-vpn-12-ipleak-resultaat.webp)

Dit moet **het VPN-adres** zijn, met de doorgestuurde poort erachter. Je eigen IP-adres zie je bovenaan dezelfde pagina, omdat je browser niet via de VPN gaat. Die twee horen dus **verschillend** te zijn. In qBittorrent zie je hetzelfde adres onder het tabblad **Trackers** bij *Detected IP*.

![In qBittorrent toont de tracker hetzelfde VPN-adres](https://www.duken.nl/images/qbittorrent-vpn-13-tracker-detected-ip.webp)

Kijk ten slotte naar de statusbalk onderaan qBittorrent. Een **groene wereldbol** betekent dat je verbonden bent én van buitenaf bereikbaar via de doorgestuurde poort. Bij **DHT** staat een aantal nodes.

![Statusbalk: groene wereldbol en DHT-nodes](https://www.duken.nl/images/qbittorrent-vpn-14-statusbalk-verbonden.webp)

Verwijder de testtorrent daarna weer. Klaar: je NAS downloadt nu volledig via de VPN.

## Problemen oplossen

**De webinterface opent niet.**
Controleer `FIREWALL_OUTBOUND_SUBNETS`. Dit moet het bereik van je thuisnetwerk zijn (bijvoorbeeld `192.168.1.0/24`), niet het IP-adres van je NAS. Kijk ook of Gluetun op *Gezond* staat. Zolang de VPN niet verbonden is, start qBittorrent niet.

**Gluetun blijft herstarten of geeft `AUTH_FAILED`.**
Je PIA-gebruikersnaam of -wachtwoord klopt niet. Let op: de gebruikersnaam begint met een kleine **p**. Pas het aan via **Project > qbittorrent-vpn > YAML-configuraties**, en daarna **Actie > Opnieuw starten**.

**Oranje vlammetje in plaats van een groene wereldbol, of DHT blijft op 0 nodes.**
Na het opnieuw starten van het hele project kan het gebeuren dat qBittorrent net iets eerder klaar is dan de VPN-verbinding. Herstart dan alleen de container **qbittorrent** (Container > qbittorrent > Actie > Opnieuw starten), of zet onder **Options > BitTorrent** DHT even uit en weer aan. Binnen een minuut verschijnen er nodes.

**`403 Forbidden` in het logboek van Gluetun.**
*Bypass authentication for clients on localhost* staat nog uit (stap 5).

**Schrijffouten of downloads die blijven hangen op 0%.**
De `PUID`/`PGID` past niet bij de eigenaar van je downloadmap. Log in via SSH en voer `id jouwgebruikersnaam` uit, vul die getallen in en herstart het project.

**Ik wil een andere VPN-dienst gebruiken.**
Gluetun ondersteunt onder meer NordVPN, Surfshark, ProtonVPN en Mullvad. Je past dan `VPN_SERVICE_PROVIDER` en de inloggegevens aan. Automatische port forwarding werkt alleen bij diensten die het aanbieden, zoals PIA en ProtonVPN.

## Veelgestelde vragen

### Is downloaden via een VPN legaal?
Een VPN gebruiken is legaal in Nederland. Downloaden uit illegale bron is dat niet, met of zonder VPN. Gebruik deze opzet voor legale content, zie ook [legaal torrenten](https://www.duken.nl/legaal-torrenten).

### Waarom niet gewoon de PIA-app op je pc?
Dan moet je pc altijd aan staan. Een NAS verbruikt veel minder stroom, draait 24/7, en door de Docker-opzet kan qBittorrent nooit buiten de VPN om.

### Waarom is port forwarding belangrijk?
Zonder doorgestuurde poort kun je alleen zelf verbindingen opzetten, en niet met peers die ook achter een firewall zitten. Met port forwarding ben je voor iedereen bereikbaar, met meer peers en hogere snelheden als gevolg. Meer uitleg: [port forwarding met PIA](https://www.duken.nl/port-forwarding-pia).

### Merk ik iets van de VPN in de snelheid?
Iets, afhankelijk van de server. Kies een regio dichtbij, zoals Netherlands of DE Frankfurt. Op onze [statuspagina](https://www.duken.nl/status) testen we dagelijks de snelheid van verschillende PIA-servers.

### Werkt dit ook op een NAS met een ARM-processor?
Gluetun en de qBittorrent-image van LinuxServer bestaan ook voor ARM64. Op oudere Synology-modellen met een ARM-chip is Container Manager echter niet beschikbaar.
