mardi, novembre 18 2008, 16:12
Transmission, Clutch et Ubuntu Server
Par Guillaume - Ubuntu - Lien permanent
Note : il faut avoir un serveur web de type Apache ou Lighttpd d’installé afin que l’interface web fonctionne correctement (pour moi c’est Apache).
Pour mettre en place cette solution, il n’y a rien de complexe. Il suffit de se connecter sur la machine (SSH pour moi) et d’installer les paquets transmission-cli et clutch.~$ sudo aptitude install transmission-cli clutch
Il faut bien entendu recharger la configuration de Apache (ou autre) pour prendre en compte Clutch.~$ sudo /etc/init.d/apache2 reload
Une fois que ceci est fait, on a déjà réalisé la plus grosse partie du boulot. J’ai remarqué quelques problèmes avec Clutch une fois l’installation finie. En effet, il est impossible de le recharger et d’y accéder correctement, les torrents ne sont pas téléchargé (tentative de connexion au tracker qui échoue, ou tout simplement ça stagne à 0%). Heureusement, il y a des solutions pour ceci.
Commençons par le problème de reload et d’accès. Ceci est dû à un problème de droit sur les dossiers que Clutch est censé utiliser. En effet, Transmission et Clutch sont lancés par l’utilisateur www-data alors que les dossiers ne sont accessibles complètement que par root, par conséquent un coup de chown suffit.~$ sudo chown -R www-data:www-data /var/cache/clutch/data
~$ sudo chown -R www-data:www-data /var/cache/clutch/daemon
~$ sudo /etc/init.d/clutch/restart
Normalement ça devrait suffir pour régler le problème de reload, celui d’accès mais aussi le fait que le téléchargement des torrents stagne à 0% malgré la connexion au tracker valide. Si le problème de rechargement n’est toujours pas résolu, il faut alors modifier le script qui s’occupe de ça.~$ sudo vim /etc/init.d/clutch
On cherche alors start) puis juste avant les ;;, on ajoute ceci.chown -R www-data:www-data /var/cache/clutch/daemon
On fait aussi la même chose pour le choix restart|force-reload).
On teste ensuite de nouveau le redémarrage de Clutch qui devrait fonctionner sans soucis.~$ sudo /etc/init.d/clutch restart
Tout administrateur d’un serveur se doit d’avoir configuré un firewall correctement pour éviter certaines attaques. Cependant, ici ça peut poser problème. En effet, il faut autoriser la connexion via le port que le tracker utilise. Comment le voir ? Il faut regarder l’URL et normalement le port y est indiqué. Les URLs sont de la forme http://www.le-site.domaine:port/announce. Il suffit alors d’autoriser l’utilisation du port dans le firewall. Pour moi par exemple,j’ai rajouté ceci dans mon script.# Torrent Transmission
iptables -t filter -A INPUT -p tcp --dport 51413 -j ACCEPT
# ----
iptables -t filter -A OUTPUT -p tcp --dport 6969 -j ACCEPT
echo - Autoriser Transmission : [OK]
Le port 51413 est celui qui est utilisé par Clutch (voir capture d’écran plus bas) et le port 6969 correspond à celui du tracker Ubuntu et OpenOffice.org. J’ai remarqué qu’il y avait un soucis avec les trackers utilisant le port 80 (celui utilisé par HTTP et donc Apache). Je n’ai pas trouvé comment résoudre ceci encore, si quelqu’un a une solution je suis preneur dans le cas échéant, je vais continuer à chercher.
Une fois le firewall configuré et Clutch opérationnel, on peut normalement accéder à Clutch sans problème via l’adresse http://IP_DU_SERVEUR/clutch/ (bien entendu on peut remplacer l’IP par un nom de domaine). On a alors accès à l’ajout de fichier torrent, à la configuraton de Clutch et on peut surveiller l’avancement en direct.
Par contre, une chose embêtante, tout le monde peut accéder à l’interface web et ajouter, supprimer des torrents. Pour palier à ce soucis, on va utiliser le fichier de configuration de Clutch qui n’est ni plus ni moins qu’un fichier que le serveur web (ici Apache) va lire. On ouvre donc ce fichier.~$ sudo vim /etc/clutch/clutch.conf
Et il faut décommenter les dernière lignes celles commençant par AuthType, AuthName, AuthUserFile et Require. AuthType Basic
AuthName "Transmission Clutch Interface"
AuthUserFile /etc/clutch/htpasswd
Require valid-user
Une fois que c’est fait, on enregistre et ferme (le populaire :wq). Et on va créer le fichier contenant les logins et mots de passe (chiffrés).~$ sudo htpasswd -c /etc/clutch/htpasswd nom_utilisateur
L’option -c permet de créer le fichier. Pour rajouter par la suite un utilisateur, on utilisera.~$ sudo htpasswd /etc/clutch/htpasswd nouvel_utilisateur
Enfin pour terminer, on redémarre Clutch et Apache.~$ sudo /etc/init.d/apache2 restart
~$ sudo /etc/init.d/clutch restart
Maintenant, l’accès à l’interface web de Transmission est sécurisée. Il ne reste qu’à en profiter.
Source : http://recurser.com/code/wiki/clutch/Getting_Started
15 commentaires
Euh, les chmod -R 777 sur des dossiers utilisés par une appli web, c’est peut être un peu brutal, non ?
chown -R root:www-data et chmod -R u=rwX,g=rwX,o= de tes dossiers serait plus judicieux, à mon avis.
Oups autant pour moi je me suis planté. C’était ce que j’avais fait initialement avant de faire des chown à la place. J’ai oublié de corrigé ça dans le billet. Désolé, je corrige.
un chown -R www-data\: dossier/ est encore mieux pourquoi donner l’acces a l’user root ?
Bonjour !
Juste pour dire que l’interface web existe maintenant dans transmission sous intrepid. On peut l’activer dans les préférences. Nul besoin d’installer apache2 et clutch
J’ai rien dis, j’avais mal lu ta problématique initiale: “sans serveur X”… Désolé :/
@tito : C’est pas grave
D’ailleurs, ça serait le pied s’il y avait un paquet intégrant directement Transmission (CLI uniquement) et Clutch. En gros le même paquet que Transmission actuellement mais sans l’interface graphique. Ca pourrait être très intéressant histoire de ne pas avoir à installer un serveur web type Apache pour ceux qui ne s’en servent pas plus que ça.
Ouahou !
Merci pour cette astuce !
J’utilise ntorrent sur mon serveur. Il est extrêmement pratique, mais aussi terriblement moche (une interface graphique sommaire en mode texte, merci ncurse :)). J’ai vaguement essayé d’installer des interfaces graphiques pour ntorrent mais ce fut un échec à chaque fois.
Ton article a l’air sympa, d’autant que Transmission est quand même très bien (et l’interface Web qui va avec a beaucoup de gueule je trouve !).
J’suis pas super fan des clients web pour des applications genre bittorrent.
Perso, j’utilise rtorrent dans un screen, et ça me convient.
Au fait, il existe aussi rufus comme client bittorrent avec une interface web, sauf qu’elle est anecdotique, pas super belle, et aussi ergonomique qu’un pavé.
Alors que les mecs ont faits du bon boulot avec l’interface web de transmission.
@+
PS : Est-ce normal que dès que je lis le nom du programme transmission, j’ai la chanson du même nom de Joy Division dans la tête ?
@davromaniak : Problème de conscience avec cette chanson ? :-P
Salut,
je vous conseillerais rtorrent avec wtorrent comme interface web
interface très jolie et agréable a utiliser
Ah zut, je me suis trompé, je voulais parler de rTorrent en client texte, évidemment…
@nonofr, si tu as un bon tutoriel pour installer et configurer wtorrent sous Ubuntu Hardy avec Apache, je suis preneur (le tuto proposé sur le site est assez particulier, et en plus il utilise lighttpd)
Effectivement, c’est très réussis. Je regarderai ce que ça donne à l’occasion.
Très intéressant ! Jusqu’ici j’utilisais rtorrent avec des scripts bash pour ajouter des torrents mais la solution Transmission & Clutch a l’air beaucoup plus utilisable.
Bonjour,
je n’arrive pas à installer clutch sous intrepid server, et je ne trouve pas les fichiers de conf de transmission cli.
Y a t’il un dépot à ouvrir ?
Merci à vous pour ce tuto qui va surement beaucoup m’aider.
Clutch se trouve dans les Universe. Mon serveur est sous Hardy personnellement.