QNAP [TUTO] - Container Station - Transmission via VPN par Haugene

orducom1

Padawan
30 Janvier 2017
81
0
6
Toulouse, France
Pourquoi ce tuto ?
Ce tuto a pour objectif d'expliquer étape par étape et dans la langue de Moliere comment procéder pour mettre en oeuvre le plus simplement possible la solution de Haugene/Transmission-VPN. Ce tuto va se construire avec votre aide car je n'ai pas la science infuse ... Nous nous poserons les bonnes questions et les réponses seront reprise ici pour constituer le premier :?: tuto participatif ;)
_______________________________________________________________________________________________________

Prerequis
1 - Installer Container Station via le magasin d'application Qnap AppCenter :


img1.png


2 - Avoir un compte actif chez l'un des fournisseurs de VPN dans la liste que vous trouverez ici
https://www.forum-nas.fr/viewtopic.php?f=55&t=6537&p=43519#p43519
Vous noterez que le service VyprVPN est proposé. Ce fournisseur est partenaire Qnap et propose des offres de souscription.
Pour ma part, j'ai un compte chez PureVPN

A SUIVRE ...
 
A suivre oui, je me permets d'ajouter ce site https://thatoneprivacysite.net/vpn-section/ et lui https://privacytoolsio.github.io/privacytools.io/#vpn pour aider au choix du VPN si besoin ;)
 
Super ! merci pour vos encouragements :)

Si certains d'entre vous ont un retour d'expérience à faire pour aider à la réalisation de ce tuto ... ne pas hésiter :P

Essayez d'être aussi précis que possible dans vos explications ... dans ce qui a marché et ce qui a foiré afin de ne pas refaire les même erreurs ;)
 
Super, j'ai déjà essayer ce soft et j'ai abandonné car j'arriver bien a télécharger mes l'upload ne se faisait pas.

Je joint le lien vers un site qui m'a servit par le paramétrage.

http://www.babash.fr/2015/12/07/transmission-a-travers-un-vpn/

bon courage.
 
C'est ce que je croyais aussi que les uploads ne se faisaient pas ... néanmoins sur le tracker T41* qui suit les ratios afin de bannir les raclures qui ne jouent pas le jeu du partage, je peux voir que mon ratio reste stable.

Sur l'application Docker les uploads (en vert) continuent une fois que les downloads sont terminés :

Capture d’écran 2017-04-06 à 11.26.04.png

Je pense que c'est l'appli web de Haugene qui bug ... je vais approfondir cela et voir avec lui sur sont Git.

* modification modérateur
 
Salut les copains

Est-ce que quelqu'un peut tester la commande suivante pour lancer le container ?
En rouge, les valeurs à adapter selon votre contexte

docker run --privileged -d -v /share/CACHEDEV1_DATA/Download/:/data \
-e "OPENVPN_PROVIDER=TON_PROVIDER_VPN" \
-e "OPENVPN_USERNAME=TON_COMPTE_VPN" \
-e "OPENVPN_PASSWORD=TON_MDP_VPN" \
-e "OPENVPN_CONFIG=SERVEUR_DE_CONNEXION_VPN" \
-e "LOCAL_NETWORK=X.X.0.0/24" \
-p 9091:9091 haugene/transmission-openvpn

Merci pour vos retours :)
 
QNAP a un partenariat avec VyprVPN --> 1 Gb de téléchargement gratuit et sans obligation !
Il suffit d'installer VyprVPN et de créer un compte chez eux ...
Procédure simple, rapide et suffisante pour faire 3 - 4 tests :)
 
C'était une bonne initiative. Pour ma part, j'ai tenté de l'utiliser... mais avec RA4W. Et la connexion ne s'initialise pas.
Je précise que mon VPN fonctionne sur une VM Debian, mais dans le cas de ce container malheureusement, nein...
 
Idem j'ai essayé mais en vain avec ProtonVPN, il faut filer tout à la main vu que c'est pas inclus et c'est galère. Je suis passé sur Download Station couplé à QVPN pour ouvrir le vpn (on peut choisir l'interface utilisée par Download Station dans l'app center) et ça marche pas mal pour le moment...
 
Ben pour ma part, j'ai testé une dizaine de torrents pour le moment ainsi, ça tourne bien. Accès en HTTPS possible de l'extérieur (contrairement à Transmission) et j'ai vérifié avec mon routeur, le flux torrent est bien encapsulé dans le tunnel vpn, on le voit pas, alors que l'UI reste accessible sur l'accès standard. Niveau ressource, en ram ça bouffe pas beaucoup et le CPU est pas à genoux (mon petit TS-120 suivait pas dans cette conf il agonisait :oops: )
Donc pour le moment je reste la dessus, mais si des gens font un beau tuto container+transmission+vpn à l'occaz je peux tester ;)
 
Salut à tous, je découvre seulement aujourd'hui ce post.
Je ne sais pas si ça peut aider mais je vous met ma config qui marche depuis maintenant un petit moment.

Alors mon VPN est un VPN perso sur un VPS donc la config peut changer un peu d'un VPN acheté.

Bon à savoir aussi, j'ai tellement fait d'essai qu'il est possible que j'ai mis des options qui sont inutiles ou contradictoire. D'ailleurs je suis à l'écoute de tout conseil pour optimiser ma config.

Bref, pour ma part l'ensemble fonctionne bien, je n'ai pas de soucis particulier. Je n'ai pas un gros transfert d'upload, j'ai seulement 5Mb/s chez moi en montant avec en plus la limitation du VPN.

Voici ma config :

Code:
docker run --privileged -d \
-v /CHEMIN/VERS/DOSSIER/DATA/:/data \
-v /CHEMIN/VERS/DOSSIER/DOWNLOAD/:/data/completed \
-v /CHEMIN/VERS/DOSSIER/WATCH/:/data/watch \
-v /CHEMIN/VERS/CONFIG/PERSO/OPENVPN/client.ovpn:/etc/openvpn/custom/default.ovpn \
-e "OPENVPN_PROVIDER=CUSTOM" \
-e "OPENVPN_USERNAME=pasimportant" \
-e "OPENVPN_PASSWORD=onsentapeaussi" \
-e "TRANSMISSION_PORT_FORWARDING_ENABLED=true" \
-e "TRANSMISSION_RPC_AUTHENTICATION_REQUIRED=true" \
-e "TRANSMISSION_RPC_ENABLED=true" \
-e "TRANSMISSION_RPC_USERNAME=login" \
-e "TRANSMISSION_RPC_PASSWORD=password" \
-e "TRANSMISSION_BLOCKLIST_ENABLED=true" \
-e "TRANSMISSION_BLOCKLIST_URL=http://john.bitsurge.net/public/biglist.p2p.gz" \
-e "OPENVPN_OPTS=--inactive 3600 --ping 10 --ping-exit 60" \
-e "LOCAL_NETWORK=192.XXX.X.XXX" \
-p 9091:9091 \
--dns 50.116.40.226 \
--dns 104.238.153.178 \
--restart=always \
--name Transmission-OpenVPN_Perso \
haugene/transmission-openvpn

Je vais essayer de donner quelques explications mais pas sûr d'être assez clair !

docker run –privileged -d \ => Permet d'exécuter le conteneur en mode privilège (très important)
-v /CHEMIN/VERS/DOSSIER/DATA/:/data \ => Remplacer /CHEMIN/VERS/DOSSIER/DATA/ par le chemin du dossier data
-v /CHEMIN/VERS/DOSSIER/DOWNLOAD/:/data/completed \ => Remplacer /CHEMIN/VERS/DOSSIER/DOWNLOAD/ par le chemin du dossier ou seront les torrents terminé
-v /CHEMIN/VERS/DOSSIER/WATCH/:/data/watch \ => Remplacer /CHEMIN/VERS/DOSSIER/WATCH/ par le chemin du dossier qui contiendra les torrents à "écouter"
-v /CHEMIN/VERS/CONFIG/PERSO/OPENVPN/client.ovpn:/etc/openvpn/custom/default.ovpn \ => Remplacer /CHEMIN/VERS/CONFIG/PERSO/OPENVPN/client.ovpn par le chemin du fichier de configuration d'OpenVPN en .ovpn
-e "OPENVPN_PROVIDER=CUSTOM" \ => Mettre CUSTOM pour un VPN perso
-e “OPENVPN_USERNAME=pasimportant” \ => On met ce qu'on veut, fichier de config sans mot de passe mais obligatoire pour l'installation
-e “OPENVPN_PASSWORD=onsentapeaussi” \ => On met ce qu'on veut, fichier de config sans mot de passe mais obligatoire pour l'installation
-e “TRANSMISSION_RPC_ENABLED=true” \ => On indique true, permet d'activer mot de passe dans l'interface
-e “TRANSMISSION_RPC_USERNAME=login” \ => On indique un login
-e “TRANSMISSION_RPC_PASSWORD=password” \ => On indique un mot de passe
-e “TRANSMISSION_BLOCKLIST_URL=http://john.bitsurge.net/public/biglist.p2p.gz” \ => On indique un lien d'une blocklist. (Je ne me souvient plus ou j'ai eu la mienne...)
-e “OPENVPN_OPTS=–inactive 3600 –ping 10 –ping-exit 60” \ => Permet de redemarrer le conteneur en cas de déconnexion
-e “LOCAL_NETWORK=192.168.0.0/24” \ => Permet d'accéder à l'interface sans proxy
-p 9091:9091 \ => Le port écouté par le conteneur
–dns 50.116.40.226 \ => Changement de DNS (trouvé sur OpenNIC : https://www.opennicproject.org/)
–dns 104.238.153.178 \ => Changement de DNS (trouvé sur OpenNIC : https://www.opennicproject.org/)
–restart=always \ => Permet de redemarrer le conteneur en cas de déconnexion (suite)
--name Transmission-OpenVPN_Perso \ => Nom que vous donnerez à votre image
haugene/transmission-openvpn => Le conteneur appelé

Personnellement comme Haugene l'indique dans son Github, j'ai besoin d'ajouter un proxy Nginx pour pouvoir accéder à l'interface :

Code:
docker run -d \
--link Transmission-OpenVPN_Perso:transmission \
-p 9095:8080 \
--name Nginx-TransOVPN-OVH \
haugene/transmission-openvpn-proxy

--link Transmission-OpenVPN_Perso:transmission \ => permet de lier cette image à la précédente. Remplacer Transmission-OpenVPN_Perso par le nom que vous avez donné à l'image précédente.

Je peux donc accéder à mon interface via http://ipnas:9095 ou http://nomdedomaine.fr:9095

Voilà, j'espère que ça peut aider.

Je préfère le rappeler, je ne suis pas un pro loin de là donc mon fichier de config peut être (très) perfectible !
 
Une question bête : comment on utilise ce format ("docker run --XXX options) sur Container Station ? :? J'ai des menus de créations d'images, ect ... avec des champs, on est forcé de le faire ainsi ?
 
C'est parce que tu utilises docker avec l'interface graphique de container station. Les commandes données sont par le terminal via ssh.

Normalement tu dois pouvoir mettre les mêmes options en passant par l'interface graphique.

Pour certaines options c'est dans Environnement, pour le port dans Réseau, etc

Par contre je ne sais pas comment faire le --link par l'interface graphique.

Je ne peux pas regarder maintenant, je ne suis pas devant mon écran.
 
C'est parfait merci ! Je bataillais avec le GUI de Container Station mais en ssh c'est beaucoup mieux merci :) Je sais pas pourquoi j'y ai pas pensé :oops:
Du coup j'ai remis Transmission via VPN plutôt que Download Station, il est bien mieux (plus souple, paramétrable).
La seule chose qui m'a posé soucis la c'était que dans le .ovpn il est spécifié auth-user-pass et du coup ça foirait l'authentification. Sans c'est bon !
 
Oui, à tes options j'ai rajouté les variables PUID et PGID d'un user limité, pour éviter de tourner Transmission en root.
Il faut faire gaffe à ce que certaines options du OPENVPN_OPTS soient pas en conflit avec des options du .ovpn sinon il les prend pas.
Enfin pour le lancement je sais pas pourquoi ça se connectait pas après le reboot, donc j'utilise pas le restart de container station, j'ai fais un script au boot le "docker run ..."

Ça tourne au poil 8-)