From 3bc42b7bd56d3907c4f367b7ba0156262318a6eb Mon Sep 17 00:00:00 2001 From: bolbol Date: Sun, 5 Jul 2026 01:01:17 +0000 Subject: [PATCH] docs: runbook VPS Contabo WireGuard+qBittorrent natif (05/07) --- ...vps-contabo-wireguard-qbittorrent-natif.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 hermes-nyora/vps-contabo-wireguard-qbittorrent-natif.md diff --git a/hermes-nyora/vps-contabo-wireguard-qbittorrent-natif.md b/hermes-nyora/vps-contabo-wireguard-qbittorrent-natif.md new file mode 100644 index 0000000..a33aab0 --- /dev/null +++ b/hermes-nyora/vps-contabo-wireguard-qbittorrent-natif.md @@ -0,0 +1,31 @@ +# VPS Contabo — WireGuard + qBittorrent en installation native Ubuntu (pas de Docker) + +**Date** : 2026-07-05 +**Instance** : hermes-nyora +**Tags** : nyora, vps, contabo, wireguard, qbittorrent, kill-switch, natif + +## Contexte +Seedbox perso (Ahmed) sur VPS Contabo Cloud VPS 20 SSD, tunnel VPN KeepSolid (France) obligatoire pour que qBittorrent n'expose jamais l'IP réelle du VPS. + +## Décision : natif, pas Docker +Le premier jet prévoyait `linuxserver/wireguard` + `linuxserver/qbittorrent` en `network_mode: service:wireguard`. Remplacé par une installation native Ubuntu — plus simple à sécuriser avec un kill-switch iptables directement sur l'hôte, sans dépendance à l'ordre de démarrage des containers Docker. + +## Architecture +- `wg0` natif (`wireguard-tools`, `wg-quick up wg0`), activé au boot (`systemctl enable wg-quick@wg0`) +- `qbittorrent-nox` natif, tourne sous un user dédié (`qbtuser`, pas root) +- Table de routage dédiée (`ip rule` + table 51820) force tout le trafic de `qbtuser` via `wg0` +- Kill-switch iptables : `REJECT` tout trafic sortant du user `qbtuser` qui ne passe pas par `wg0` ou `lo` +- Service systemd `qbittorrent-nox.service` avec `BindsTo=wg-quick@wg0.service` + `Requires=` → qBittorrent ne démarre/reste jamais actif sans le tunnel + +## Piège évité +La clé privée WireGuard (`B4837_fr_wg.conf`) s'est retrouvée en permissions 777 sur le NAS (au lieu de 600 comme documenté) — n'importe quel process/container avec accès au mount aurait pu la lire. Toujours vérifier les permissions réelles après écriture d'un fichier de credentials, ne pas se fier au commentaire dans le handoff. + +## Fichiers +- `hermes-nyora/data/workspace/contabo-vps/setup-wireguard.sh` +- `hermes-nyora/data/workspace/contabo-vps/setup-qbittorrent.sh` +- `hermes-nyora/data/workspace/contabo-vps/HANDOFF.md` + +## Ordre d'exécution sur le VPS +1. `sudo bash setup-wireguard.sh` +2. `sudo bash setup-qbittorrent.sh` (vérifie que `wg0` est up avant de continuer) +3. Changer le mot de passe WebUI par défaut (admin/adminadmin)