Transmission, Clutch et Ubuntu Server
Transmission, Clutch et Ubuntu Server via Respawner
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