Flood. Une interface moderne pour Rtorrent

Flood est une nouvelle webUI fonctionnant avec Node.js pour le client rtorrent, l'incontournable client torrent des GNU/Linux, jouant du coude-à-coude avec Transmission et Deluge. Une interface moderne et séduisante qui vous changera de Rutorrent!

A défaut de Rutorrent qu'on ne présente plus, Flood offre aujourd'hui une nouvelle interface plus moderne et séduisante, qui vous semblera en adéquation avec ce que vous avez pu voir ces 5 dernières années sur l'internet. Fonctionnant grâce à un serveur Node.js, Flood se veut épuré, ergonomique et simple d'utilisation.

Nous partirons du principe que Rtorrent est déja installé et fonctionnel.

Ca fonctionne si vous avez suivi le tuto Installation de Rutorrent multi-utilisateur sous Débian 8.

Installation de Flood

  • Ajout d'un utilisateur pour flood
adduser --disabled-password flood
  • Installation de nodejs
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
apt install -y nodejs
  • Clonage du dépot flood
cd /var/www/html  (par exemple)
git clone https://github.com/jfurrow/flood.git
  • Puis on prépare le fichier template :
cd flood
cp config.template.js config.js
  • On l'édite :
nano config.js
  • On modifie cette valeur :
floodServerHost: '0.0.0.0'
  • Et on compil Flood :
npm install
npm run build
  • On donne les bons droits.
chown -R flood:flood repertoire/de/flood
  • Test de lancement
cd flood
npm start

Vous pouvez tester Flood sur "votre_ndd:3000" et creer votre premier utilisateur et en configurant le type de connexion sur TCP et en mettant "localhost" à Rtorrent Host.

On fait également en sorte que Flood soit un service afin de faciliter sa maintenance (Marche / Arrêt) :

nano /etc/systemd/system/flood.service

On insère le code suivant :

#!/bin/sh

[Service]
WorkingDirectory=/répertoire/rtorrent/flood
ExecStart=/usr/bin/npm start
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=notell
User=flood
Group=flood
Environment=NODE_ENV=production

[Install]
WantedBy=multi-user.target
  • Et on active enfin le service :
systemctl enable flood
systemctl start flood

Voilà, votre seedbox est prête à faire feu et est joignable à l'adresse suivante : http://IP-DE-VOTRE-SERVEUR:3000

  • Configuration du reverse proxy avec Apache

Si vous possédez un nom de domaine et que vous préférez avoir http://VOTRE-DOMAINE.EXT au lieu de http://IP-DE-VOTRE-SERVEUR:3000 parce que ça fait plus propre mais également pour des raisons évidentes de sécurité, il faut maintenant configurer le reverse proxy.

Commençons par activer le module proxy_http pour apache :

a2enmod proxy_http

Puis créons un fichier host pour définir les paramètres de notre interface :

nano /etc/apache2/sites-available/flood.conf

Y insérer :

<VirtualHost *:80>
ServerAdmin contact@domain.tld
ServerName flood.domain.com
ServerAlias flood.domain.com

ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
</VirtualHost>

Activez le fichier host et redémarrez Apache :

a2ensite flood.conf
service apache2 reload

Voilà, votre seedbox est désormais accessible via l'adresse http://flood.domain.com

  • Passage en connexion sécurisé.

(A venir)

1 commentaire

  1. Thanks for sharing, this post is exactly what I looking for. Now I can do it. Thanks again, guy.

Écrire un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec une *

Quelle est le quatrième caractère du mot btl83 ? :