QNAP [Tuto] Installation de Wireguard Client et rutorrent sur un NAS QNAP ( Container Station )

EVO

Administreur
Membre du personnel
25 Novembre 2019
9 388
1 877
293
/var/run/docker.sock





!! ATTENTION, CE TUTO N'EST PAS ENCORE FONCTIONNEL !!





[Tuto] Installation de Wireguard Client et rtorrent/rutorrent sur un NAS QNAP

FOURNI SANS GARANTIE ! EN COURS DE RÉDACTION ! 🚧😅

Pourquoi ce tutoriel ? :giggle:
A la demande général de @osmoze30 🤪

Cette stack docker-compose contient les logiciels :
- Wireguard ( en mode client )
- rtorrent/rutorrent


Ce tutoriel n'est pas là pour vous apprendre à télécharger des fichiers illégaux, tous messages à ce sujet seront supprimés.
Disclamer :
Le but de ce tuto sera de rendre cette installation facile et accessible a tous, bien que loin d’être un expert, n’hésiter pas à répondre à ce sujet avec vos interrogations, .. Pour ceux qui sont plus a l'aise avec ce genre d'installation, n'hésiter pas a proposer des améliorations, ou des conseils, ...

Sommaire :
1/ Création des dossiers
2/ Configuration du client Wireguard
3/ Création des conteneurs
4/Accès à rutorrent


Aller go :)




1/ Création des dossiers

Pour ce tutoriel je vous tout faire dans le dossier par défaut "Container". Je vais donc créer les dossiers nécessaire au fonctionnement de nos conteneurs.

Dans le dossier partagés Container, on va donc créer 2 dossiers : rutorrent et wireguard

Dans le dossier rutorrent, créer 3 sous-dossiers : data, passwd et downloads
Dans le dossier wireguard, créer 1 sous-dossier config , et un sous-sous-dossier wg_confs

Dans l'image si dessous, on peut voir dans le menu de gauche ce que cela donne :
1733955223371.png

2/ Configuration du client Wireguard
Pour établir la connexion au VPN, votre fournisseur VPN a du vous fournir un fichier .conf contenant votre configuration. Ce fichier doit être renommer avec le nom "wg0.conf" et à placer dans /wireguard/config/wg_confs.

Il ressemble probablement a cela :
1733954917169.png

Nous allons juste avant [Peer] rajouter deux lignes, qui sont là pour permettre l’accès local au interface des conteneurs :
Code:
PostUp = DROUTE=$(ip route | grep default | awk '{print $3}'); HOMENET=192.168.0.0/16; HOMENET2=172.16.0.0/12; ip route add $HOMENET2 via $DROUTE; ip route add $HOMENET via $DROUTE;iptables -I OUTPUT -d $HOMENET -j ACCEPT;iptables -A OUTPUT -d $HOMENET2 -j ACCEPT; iptables -A OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT
PreDown = HOMENET=192.168.0.0/16; HOMENET2=172.16.0.0/12; ip route del $HOMENET2 via $DROUTE; ip route del $HOMENET via $DROUTE; iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT; iptables -D OUTPUT -d $HOMENET -j ACCEPT; iptables -D OUTPUT -d $HOMENET2 -j ACCEPT

On retrouve dans ces lignes HOMENET=192.168.0.0/16 qui représente votre réseau local, et HOMENET2=172.16.0.0/12, le réseau Docker. C'est bien sur a adapté si votre réseau n'est pas "standard".

Votre fichier va donc ressembler a ceci :
1733954926447.png


3/ Création des conteneurs
Ouvrez Container Station et rendez-vous dans le menu Applications.

Cliquez sur "Créer" :

Puis donner un nom a l'application ( par exemple vpn-torrent ), et copier le code YAML si dessus :
1733955598193.png

Code:
version: "3.9"
      
services:
  vpn:
    image: lscr.io/linuxserver/wireguard
    container_name: vpn
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    environment:
      - PUID=1000
      - PGID=100
      - TZ=Europe/Paris
    volumes:
      - /share/Container/wireguard/config:/config
      - /lib/modules:/lib/modules
    ports:
     - 8282:8080 # WebUI rutorrent
    sysctls:
     - net.ipv4.conf.all.src_valid_mark=1
    restart: unless-stopped

  rtorrent-rutorrent:
    image: crazymax/rtorrent-rutorrent:latest
    container_name: rutorrent-crazymax
    depends_on:
      - vpn
    environment:
     - PUID=1000
     - PGID=100
     - TZ=Europe/Paris
    network_mode: "service:vpn"
    volumes:
      - /share/Container/rutorrent/data:/data
      - /share/Container/rutorrent/passwd:/passwd
      - /share/Container/rutorrent/downloads:/downloads
    ulimits:
      nproc: 65535
      nofile:
        soft: 32000
        hard: 40000
    restart: unless-stopped

Ce que vous devez modifier, a deux endroits dans le compose :
- PUID=1000 >> Remplacer 1000 par l'ID de votre utilisateur - Voir : [Mémo] Connaitre l'UID ( ou ID ou PUID ) d'un utilisateur sur un NAS QNAP

Apres, avoir adapté au besoin de PUID au deux endroits dans le code, valider la création de l'application en cliquant sur "Créer".

Cest parti !
1733955678071.png

Quand c'est terminé, cliquez sur vpn-torrent pour lister les deux conteneurs qui compose l'applications :
1733955731291.png
1733955746336.png

Si tout est au vert, c'est déja bon signe :)

4/ Accès à rutorrent

Pour rutorrent, c'est le port 8282 qui est déclaré dans le YAML de l'application. Donc l'adresse sera sous la forme : http://IP_DE_LA_MACHINE:8282
Exemple : Si l'adresse IP de votre machine est 192.168.1.10, alors l'adresse d'accès sera :

Pour la configuration de rutorrent, je vous encourage a regarder le point 4 de ce tutoriel : https://www.forum-nas.fr/threads/tu...rr-rutorrent-qbittorrent-sonarr-radarr.16625/

2024-12-11 - Création
 
Dernière édition:
  • J'adore
  • J'aime
Réactions: Riad78 et osmoze30
Merci beaucoup à toi!!!
Quelle réactivité, c'est génial !

Je test ça dès demain et je te ferai un retour. 😉
 
Salut !

C'est installé, mais je l'ai fais depuis le bureau et je n'ai pas ouvert les ports de ma Freebox en partant de chez moi pour pouvoir configurer rutorrent...

Du coup, je vais attendre ce midi pour finaliser l'installation. J'ai trouvé l'installation assez simple via ton tuto, merci beaucoup !

Il manque juste en préambule un lien vers le tuto pour installer container station. Pour un noob comme moi, il m'a fallu quelques minutes pour comprendre et pour aller le chercher.

Edith:
J'ai voulu d'abord créer une règle dans le parefeu pour ouvrir le port 8282 utilisé par rutorrent. Lorsque je le fais, j'ai ce message d'erreur :
1733994512077.png
 
J'ai voulu d'abord créer une règle dans le parefeu pour ouvrir le port 8282 utilisé par rutorrent. Lorsque je le fais, j'ai ce message d'erreur :
On ne voit pas les regles que tu souhaite mettre en place. Mais pas besoin d'ajouter de regle si tu as suivi https://www.forum-nas.fr/threads/tuto-1ère-configuration-de-qufirewall.19082/

Ps : Si le but est d'exposer rutorrent sur internet, il faudra le protéger par mot de passe voir point 4/c https://www.forum-nas.fr/threads/tu...rr-rutorrent-qbittorrent-sonarr-radarr.16625/
 
Je souhaite ouvrir le port 8282 dans le pare feu, puisqu'il semble que ce soit celui utilisé par rutorrent, ce n'est pas nécessaire?

J'ai bien suivi le tuto pour la 1ère configuration du firewall, mais je pensais qu'il me fallait ouvrir les ports de chaque application.
Effectivement, j'aimerai pouvoir accéder depuis l'extérieur à rutorrent pour lancer des téléchargements lorsque je suis en déplacement. Je te l'accorde, ce sera très marginal, ça en vaut la peine ?
 
e souhaite ouvrir le port 8282 dans le pare feu, puisqu'il semble que ce soit celui utilisé par rutorrent, ce n'est pas nécessaire?
Le pare-feu est déjà configuré pour accepter toutes les connexions locales, donc rien de plus a faire a ce niveau.

C'est a modifier par exemple en cas d'accès vpn et/ou externe.

Pour l'accès a rutorrent, un accès via vpn me semble bien plus sécurisé et pourra te servir a autre chose aussi, je pense que exposer l'interface de rutorrent n'est pas une bonne idée. Dit toi que moins tu expose de service, moins tu as de risque de failles de secu 😉
 
Je l'avais mal nommé, mais même en le nommant bien, ça ne fonctionne pas.

Il faut juste le mettre dans le dossier wireguard-> config -> wg_confs c'est ça ?
 
Ca ne veut toujours pas...

J'ai ça dans conteneur :

1734008178907.png


Et j'ai ça dans applications, c'est normal ?

1734008211723.png

En l'état, j'arrive sur une page d'erreur "impossible d'accéder à cette page" quand j'essaye de me connecter à rutorrent via l'ip 192.168.1.222:8282. :(
 
Ok j'avais redémarrer dans "conteneurs", donc ça venait peut être de là. Je viens de redémarrer comme il faut depuis le bureau, je verrais ce soir si ça fonctionne et je te dirais ça.
 
  • J'aime
Réactions: EVO
Bon ben... Ca ne fonctionne toujours pas.

J'ai même redémarrer le NAS et ça ne fonctionne toujours pas !
Du coup, j'ai tout supprimé et tout recommencé... Et toujours pareil, ça ne fonctionne pas ! Ou est ce que j'ai pu faire une erreur ? J'ai vérifié mon ID, c'est bien 1000. Est ce que cela peut venir de cette ligne dans ton tuto :
On retrouve dans ces lignes HOMENET=192.168.0.0/16 qui représente votre réseau local, et HOMENET2=172.16.0.0/12, le réseau Docker. C'est bien sur a adapté si votre réseau n'est pas "standard".

Si cela peut venir de là, comment je peux savoir ça? Parce que pour ma part je n'ai jamais rien touché au niveau de mon réseau.

1734026186877.png
 
Il faut que tu partage les journaux des conteneur pour essayer de comprendre.

Partage moi ton wg0 aussi mais en MP, ou alors masque les cles dedans

Concernant le réseau pour moi c'est OK vu l'IP locale de ton nas
 
Le client vpn ne démarre pas correctement :
1734028574836.png

Ton wg0 me semble correct, il faut que j'essaye chez moi, mais c'est peut etre un soucis de compatibilité coté QNAP. J'utilise ce montage docker sur un autre OS que QTS actuellement.