this post was submitted on 26 Jun 2026
662 points (96.1% liked)

Privacy

10145 readers
247 users here now

A community for Lemmy users interested in privacy

Rules:

  1. Be civil
  2. No spam posting
  3. Keep posts on-topic
  4. No trolling

founded 3 years ago
MODERATORS
 

The IT company Mullvad’s founder Daniel Berntsson is behind a giant donation to the populist Örebro Party, which advocates “comprehensive re-immigration” from Sweden. “It’s sad that it’s needed,” he told Flamman.

~ https://www.flamman.se/techprofil-ger-miljoner-till-orebropartiet/

you are viewing a single comment's thread
view the rest of the comments
[–] Jakeroxs@sh.itjust.works 2 points 2 days ago (1 children)

Gluetun itself already knows the forwarded port via NAT-PMP, this program just gets it from gluetun and assigns it in qbt via the qbt api and if it returns a 200 response it considers it confirmed, here's an example log:

waiting for qBittorrent WebUI...

qBittorrent WebUI is ready (authenticated).

port file did not contain an integer: /tmp/gluetun/forwarded_port

port file did not contain an integer: /tmp/gluetun/forwarded_port

gluetun provided forwarded port: 36884

syncing port 36884 to qBittorrent...

successfully updated qBittorrent to port 36884 (confirmed)

port file did not contain an integer: /tmp/gluetun/forwarded_port

port file did not contain an integer: /tmp/gluetun/forwarded_port

gluetun provided forwarded port: 39293

syncing port 39293 to qBittorrent...

successfully updated qBittorrent to port 39293 (confirmed)

[–] Valmond@lemmy.dbzer0.com 1 points 2 days ago (1 children)

Where is the Gluetun server running? I mean if you run it yourself you have to like forward all ports to it?

Thanks for the writeup!

[–] Jakeroxs@sh.itjust.works 1 points 2 days ago* (last edited 2 days ago)

So gluetun is for docker networks and lets you isolate traffic to/from other docker containers into a VPN, you run it and qbt inside docker containers with gluetun configured to your vpn, then qbt configured to route all its traffic through it.

Edit: I didn't have to port forward at all on my network for this to access it locally (I run it on a separate computer), because all the "outside" traffic in qbt is going through the vpn that has a forwarded port seeders/leachers can connect (which is dynamically updated as it changes with the aforementioned qbt port manager)

For example (truncated docker compose just the part related to above): services: qbittorrent-vpn: image: lscr.io/linuxserver/qbittorrent:latest container_name: qbittorrent-vpn depends_on: gluetun: condition: service_started restart: true restart: unless-stopped network_mode: "service:gluetun"

Then gluetun: services: gluetun: image: qmcgaw/gluetun container_name: gluetun restart: unless-stopped networks: - default cap_add: - NET_ADMIN devices: - /dev/net/tun - 8888:8888/tcp # HTTP proxy volumes: - /appdata/gluetun:/gluetun - /appdata/gluetun/tmp:/tmp/gluetun environment: TZ: $TZ VPN_SERVICE_PROVIDER: $GLUETUN_VPN_SERVICE_PROVIDER VPN_TYPE: $GLUETUN_VPN_TYPE # wireguard / openvpn WIREGUARD_PRIVATE_KEY: $GLUETUN_WIREGUARD_PRIVATE_KEY WIREGUARD_ADDRESSES: $GLUETUN_WIREGUARD_ADDRESSES VPN_PORT_FORWARDING: on VPN_PORT_FORWARDING_PROVIDER: protonvpn # or your provider VPN_PORT_FORWARDING_STATUS_FILE: /tmp/gluetun/forwarded_port # OPENVPN_USER: $GLUETUN_OPENVPN_USERNAME # OPENVPN_PASSWORD: $GLUETUN_OPENVPN_PASSWORD healthcheck: test: ["CMD", "/gluetun-entrypoint", "healthcheck"] interval: 5s timeout: 5s retries: 1 start_period: 10s

gluetun-qbittorrent-port-manager: image: jopiermeier/gluetun-qbittorrent-port-manager:latest network_mode: "service:gluetun" container_name: gluetun-port-manager depends_on: gluetun: condition: service_started restart: true qbittorrent-vpn: condition: service_started restart: true environment: - QBITTORRENT_USER= - QBITTORRENT_PASS= - QBITTORRENT_PORT=$QBITTORRENTVPN_PORT volumes: - /appdata/gluetun/tmp:/tmp/gluetun