Overblog
Editer l'article Suivre ce blog Administration + Créer mon blog

Transmission, Clutch et Ubuntu Server

Publié le par Philippe

Gravatar de RespawnerTransmission, Clutch et Ubuntu Server via Respawner

Depuis un paquet de temps maintenant, j’ai une Dedibox sous Ubuntu Server (actuellement en version 8.04 LTS). Comme je dispose d’une bande passante de 100 Mbit/s et qu’elle n’est pas exploitée au mieux possible, j’ai trouvé intéressant d’en faire profiter quelques utilisateurs des réseaux P2P (torrent). Attention, pas de tipiakage, je reste dans les bornes de la législation. Je compte entre autre participer au seed de notre distribution favorite, de la suite bureautique OpenOffice.org, et j’en passe. N’ayant pas d’interface graphique (pas de serveur X), je me suis immédiatement tourné vers une solution utilisant Transmission (sans l’interface GTK) et Clutch, son interface web dédiée. Comment j’y ai pensé ? J’ai relu ce billet.

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

 

http://planet.ubuntu-fr.org/tag/Torrent

Publié dans Linux

Pour être informé des derniers articles, inscrivez vous :
Commenter cet article