Table of Contents

Rutorrent

rutorrent est un front-end, une webUI (une interface graphique quoi) pour le client bittorrent rtorrent.

Installation

# récupération des dernières version du logiciel et des plugins
curl -LO http://dl.bintray.com/novik65/generic/rutorrent-3.6.tar.gz
curl -LO http://dl.bintray.com/novik65/generic/plugins-3.6.tar.gz
 
# extraction
tar zxf rutorrent-3.6.tar.gz
tar zxf plugins-3.6.tar.gz
 
# déplacement dans la racine du serveur web et gestion des droits
# "dude" doit être l'utilisateur de rtorrent
sudo chown -R dude:www-data /var/www/rutorrent
sudo chmod -R 770 /var/www/rutorrent
 
# installation des dépendances des plugins :
# moi il me manquait ceux-ci
aptitude search unzip unrar
# mais si vous voulez utiliser tous les plugins, installer aussi celles-là :
aptitude install ffmpeg mediainfo php5-cli

Communication rtorrent - rutorrent

Il existe différentes façons de faire communiquer les 2 ; j'ai choisi d'utiliser les XML-RPC over SCGI (par défaut).

# installation du module SCGI pour Apache
aptitude install libapache2-mod-scgi
 
# ajouter cette ligne dans le fichier de conf d'apache (/etc/apache2/apache2.conf)
SCGIMount /RPC2 127.0.0.1:5000
 
# activer le module Apache SCGI
a2enmod scgi
 
# Disable the RPC and HTTPRPC plugins  dans la configuration de rutorrent 
vi /var/www/rutorrent/conf/plugins.ini
# ajouter
[httprpc]
enabled = no
[rpc]
enabled = no

Créer un alias Apache pour rutorrent, et restreindre les accès : dans notre cas on n'y accèdera que depuis le localhost :

vi /etc/apache2/conf.d/rutorrent
Alias /rutorrent /var/www/rutorrent
<Directory /var/www/rutorrent>
        Order allow,deny
        Allow from localhost 127.0.0.0/8 ::1 localhost.localdomain
        Options None
</Directory>

Bloquer - au cas où - le port d'acoute des RPC :

# règle générique ; à adapter à votre environnement
iptables -I INPUT 1 -p tcp -dport 5000 -j DROP

Activer les SCGI pour rtorrent :

vi ~/.rtorrent.rc
scgi_port = 127.0.0.1:5000

Redémarrer Apache et rtorrent si besoin

service apache2 restart

Se connecter avec notre navigateur en local (ou faire un tunnel SSH.. ;) ) sur http://localhost/rutorrent. Surveiller les logs !

Dans rtorrent, le warning suivant peut apparaitre :

The SCGI socket is bound to a specific network device yet may still pose a security risk, consider using 'scgi_local'.

il vous indique qu'il faut protéger votre port 5000.

Liens