• Archive
  • [Discussion] Installer ruTorrent sur Debian 9 {nginx & php-fpm}

Salutations, et merci à vous 2 pour vos réponses... mais malheureusement, rien n'y fait : je suis tjs bloqué tant que la 1e authentification n'est pas effectuée.

J'ai tenté différentes manoeuvres en me servant des 4 types de balises 'location' possibles ( = | ~ | ~* | ^ ~ ) mais ça ne change rien de concret.

Avant de commencer mes tests, j'ai commenté la ligne "root /var/www;" présente de base. Puis, si je mets ce code :

         location / {
                root /var/www;
                #include /etc/nginx/conf.d/php.conf;
                #include /etc/nginx/conf.d/cache.conf;
                # les 2 balises 'include' ne fonctionnent pas --> démarrage de NginX "failed". Je les ai donc supprimées
                satisfy any;
                allow all;
        }

J'accède bien à la page d'accueil, sans identification. Mais le formatage de la page ne fonctionne pas. Le code PHP ne semble pas lu. Et si je tente d'accéder à ruTorrent, j'arrive sur la même page d'accueil. Donc en gros, il ne lit pas les sous-répertoires.

Si je teste ce code :

         location = / {
                root /var/www;
                satisfy any;
                allow all;
        }

J'ai un "404 Not Found", quel que soit le répertoire ciblé.

Si je teste ce code :

         location ~ / {
                root /var/www;
                satisfy any;
                allow all;
        }

ça permet d'arriver sur la page d'accueil sans identification, et le formatage est correct. Je peux aussi accéder à une interface vierge de ruTorrent. Par contre, aucune demande d'authentification, et un joli message en prime me disant "Bad response from server: (200 [parsererror,getplugins]) SyntaxError: Unexpected token <"

Si je teste ce code :

         location ~* / {
                root /var/www;
                satisfy any;
                allow all;
        }

Mêmes symptômes que ci-dessus.

Enfin, si je teste ce code :

         location ^~ / {
                root /var/www;
                satisfy any;
                allow all;
        }

J'accède à la page d'accueil, sans identification et le formatage et bon. Idem si je tente d'aller sur ruTorrent : page d'accueil.

J'ai aussi testé avec uniquement "auth_basic off;", sans la variable 'location' ci-dessus, mais ça a le même effet que de commenter les 2 premières balises en question, soit mon symptôme de départ.

Donc pour le moment, je suis revenu à la configuration initiale, avec les 2 balises "auth_basic" décommentées et là j'accède à la page d'accueil avec demande d'identification (chose que je ne veux absolument pas !), et ruTorrent me demande une seconde identification, mais là j'ai bien accès aux interfaces de chaque utilisateur indépendamment. J'ai d'ailleurs été contraint de relancer le serveur dédié, car avec toutes ces modifications, NGiNX ne savait plus où donner de la tête...

Donc je ne sais pas où ça coince, mais ce qui est sûr, c'est que ça donne du fil à retordre, grrrr...

Je continue mes recherches.

Bien à vous !

Cordialement,

V.

Salutations,

de rien @virgo77 et merci pour le rappel @Nebukad car je l'avais oubliée (auth_basic off;). Je me sers souvent des commentaires (et au cas où je confirme, elle fonctionne aussi).

nano /etc/init.d/<username>-rtorrent
Par contre, je crois avoir découvert un problème avec ce fichier. Parce qu'a priori, la commande killall n'existe plus (avec Debian Stretch). Donc, si c'est vrai il va falloir corrigé la fonction rt_stop.

17 jours plus tard

Je suis en train de bidouiller le script debian 9 et je viens de voir que php7 continuait à me pourrir rutorrent-error.log à coup de warning à grande vitesse:

2017/09/08 08:41:00 [error] 19969#19969: *6 FastCGI sent in stderr: "PHP message: PHP Warning:  Declaration of rxmlrpcfix::run() should be compatible with rXMLRPCRequest::run($trusted = true) in /var/www/rutorrent/plugins/filemanager/xmlfix.php on line 0" while reading response header from upstream, client: 192.168.2.130, server: _, request: "POST /rutorrent/plugins/filemanager/flm.php HTTP/1.1", upstream: "fastcgi://unix:/run/php/php7.0-fpm.sock:", host: "192.168.2.155", referrer: "http://192.168.2.155/rutorrent/"

En retournant google, j'ai trouvé un truc qui marche, mais ne connaissant pas trop le sujet, je ne suis pas sûr que ce soit l'idée du siècle.

nano /etc/php/7.0/fpm/pool.d/www.conf

ajout en bas d'une ligne:

php_admin_value[error_reporting] = E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_DEPRECATED

et restart:

service php7.0-fpm restart

Calme plat après ça dans le log...
Votre avis sur la question les pros de nginx et php ?
Ex.

7 jours plus tard

Bonsoir,

j'ai suivie le tuto comme j'ai pu le tuto car j'ai du le faire à la main car j'ai migré mon serveur en version 9.1 de Debian et impossible de faire une installation propre. ce serveur. gère mon cloud....

j'ai donc suivi le tuto mais impossible d'installer libtorrent et torrent depuis le depot git, j'obtient le message suivant:

 root@nas:/tmp# git clone https://github.com/rakshasa/libtorrent.git
 Clonage dans 'libtorrent'...
 fatal: unable to access 'https://github.com/rakshasa/libtorrent.git/': gnutls_handshake() failed: Public key  signature verification has failed.
 root@nas:/tmp# git clone https://github.com/rakshasa/rtorrent.git
 Clonage dans 'rtorrent'...
 fatal: unable to access 'https://github.com/rakshasa/rtorrent.git/': gnutls_handshake() failed: Public key  signature verification has failed.

j'ai donc récuperer rutorrent comme j'ai pus j'ai finis la configuration sans la partie compilation de rtorrent.

j'accede bien a l'interface avec mon user paramètres mas lorsque je lance le chargement j'obtient invariablement le message d'erreur :

 Bad response from server: (502 [error,list]) <html>
 <head><title>502 Bad Gateway</title></head>
 <body bgcolor="white">
 <center><h1>502 Bad Gateway</h1></center>
 <hr><center>nginx</center>
 </body>
 </html>

avez vous une idée d'ou viens ces problèmes???

cordialement.

wget -c 'https://github.com/rakshasa/rtorrent/archive/master.zip' -O rtorrent_master.zip
wget -c 'https://github.com/rakshasa/libtorrent/archive/master.zip' -O libtorrent_master.zip

Bonsoir,

il existe une autre façon @palouf34 afin de les récupérer.
Et non car malgré quelques tentatives, a priori il n'y a aucun problème (pour le moment).

Cordialement.

merci pour le lien.

La compilation ne passe pas car impossible de faire le checkout feature-bind vue que cela vient pas du repos GIT.

voila les erreur que j'obtiens lors de la compilation de libtorrent:

bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../..  -I. -I./.. -I../.. -I/usr/include -I/usr/include  -pthread  -g -O2 -g -DDEBUG -Wall -fvisibility=hidden  -MT diffie_hellman.lo -MD -MP -MF .deps/diffie_hellman.Tpo -c -o diffie_hellman.lo diffie_hellman.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../.. -I. -I./.. -I../.. -I/usr/include -I/usr/include -pthread -g -O2 -g -DDEBUG -Wall -fvisibility=hidden -MT diffie_hellman.lo -MD -MP -MF .deps/diffie_hellman.Tpo -c diffie_hellman.cc  -fPIC -DPIC -o .libs/diffie_hellman.o
diffie_hellman.cc: In constructor ‘torrent::DiffieHellman::DiffieHellman(const unsigned char*, int, const unsigned char*, int)’:
diffie_hellman.cc:58:7: error: invalid use of incomplete type ‘DH {aka struct dh_st}’
   m_dh->p = BN_bin2bn(prime, primeLength, NULL);
       ^~
In file included from /usr/include/openssl/bn.h:32:0,
                 from diffie_hellman.cc:43:
/usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of ‘DH {aka struct dh_st}’
 typedef struct dh_st DH;
                ^~~~~
diffie_hellman.cc:59:7: error: invalid use of incomplete type ‘DH {aka struct dh_st}’
   m_dh->g = BN_bin2bn(generator, generatorLength, NULL);
       ^~
In file included from /usr/include/openssl/bn.h:32:0,
                 from diffie_hellman.cc:43:
/usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of ‘DH {aka struct dh_st}’
 typedef struct dh_st DH;
                ^~~~~
diffie_hellman.cc: In member function ‘bool torrent::DiffieHellman::is_valid() const’:
diffie_hellman.cc:77:30: error: invalid use of incomplete type ‘DH {aka struct dh_st}’
   return m_dh != NULL && m_dh->pub_key != NULL;
                              ^~
In file included from /usr/include/openssl/bn.h:32:0,
                 from diffie_hellman.cc:43:
/usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of ‘DH {aka struct dh_st}’
 typedef struct dh_st DH;
                ^~~~~
diffie_hellman.cc: In member function ‘bool torrent::DiffieHellman::compute_secret(const unsigned char*, unsigned int)’:
diffie_hellman.cc:95:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   return m_size != -1;
          ~~~~~~~^~~~~
In file included from diffie_hellman.cc:43:0:
diffie_hellman.cc: In member function ‘void torrent::DiffieHellman::store_pub_key(unsigned char*, unsigned int)’:
diffie_hellman.cc:106:39: error: invalid use of incomplete type ‘DH {aka struct dh_st}’
   if ((int)length >= BN_num_bytes(m_dh->pub_key))
                                       ^
In file included from /usr/include/openssl/bn.h:32:0,
                 from diffie_hellman.cc:43:
/usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of ‘DH {aka struct dh_st}’
 typedef struct dh_st DH;
                ^~~~~
diffie_hellman.cc:107:19: error: invalid use of incomplete type ‘DH {aka struct dh_st}’
     BN_bn2bin(m_dh->pub_key, dest + length - BN_num_bytes(m_dh->pub_key));
                   ^~
In file included from /usr/include/openssl/bn.h:32:0,
                 from diffie_hellman.cc:43:
/usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of ‘DH {aka struct dh_st}’
 typedef struct dh_st DH;
                ^~~~~
In file included from diffie_hellman.cc:43:0:
diffie_hellman.cc:107:63: error: invalid use of incomplete type ‘DH {aka struct dh_st}’
     BN_bn2bin(m_dh->pub_key, dest + length - BN_num_bytes(m_dh->pub_key));
                                                               ^
In file included from /usr/include/openssl/bn.h:32:0,
                 from diffie_hellman.cc:43:
/usr/include/openssl/ossl_typ.h:104:16: note: forward declaration of ‘DH {aka struct dh_st}’
 typedef struct dh_st DH;
                ^~~~~
Makefile:422 : la recette pour la cible « diffie_hellman.lo » a échouée
make[3]: *** [diffie_hellman.lo] Erreur 1
make[3] : on quitte le répertoire « /tmp/libtorrent/src/utils »
Makefile:573 : la recette pour la cible « all-recursive » a échouée
make[2]: *** [all-recursive] Erreur 1
make[2] : on quitte le répertoire « /tmp/libtorrent/src »
Makefile:503 : la recette pour la cible « all-recursive » a échouée
make[1]: *** [all-recursive] Erreur 1
make[1] : on quitte le répertoire « /tmp/libtorrent »
Makefile:412 : la recette pour la cible « all » a échouée
make: *** [all] Erreur 2

je suppose que je ne dois pas allez plus loin dans le tuto tant que cette lib n'est pas compiler correctement.

cordialement.

D'ac de rien, je viens de regardé et j'espère avoir trouvé une solution :

wget -c 'https://github.com/rakshasa/rtorrent/archive/feature-bind.zip' -O rtorrent_master_feature-bind.zip
wget -c 'https://github.com/rakshasa/libtorrent/archive/feature-bind.zip' -O rtorrent_master_feature-bind.zip

Cordialement.

merci pour ces autres lien mais libtorrent plante toujours sur la même erreur....

Argh je suppose que cela doit venir de l'une des dépendances mais laquelle ?
Il y a eu un souci lors de l'installation (de xmlrpc-c, etc) ? Il ne manque rien ? À moins que cela soit la version ?

voici la version de xmlrpc-c-config : 1.33.14
j'ai bien fait le update demandé et je n'ai eut aucune erreur d'installation. Juste fail2ban mais cela n'as pas d'impact sur cette installation, du moins il me semble.

Sinon je ne vois pas quel autre dépendance il manquerais.

j'ai finis mais après le reboot je me connecte bien a l'interface mais j'ai toujours cette erreur dans le journal

Lien incorrect avec rTorrent. Vérifier qu'il est bien en cours d'exécution. Vérifier la configuration de $scgi_port et de $scgi_host dans config.php et scgi_port dans le fichier de configuration de rTorrent.

pourtant rtorrent semble tourné correctement.

ps fax|grep rtorrent
  2101 pts/2    S+     0:00              \_ grep rtorrent
  1333 ?        Ss     0:00 SCREEN -dmS christr87-rtorrent rtorrent
  1336 pts/0    Ssl+   0:00  \_ rtorrent[code]

avez vous une idée. brillante ???

au temps pour moi j'ai fais une bétise sur un paramètre de port...
mais après correction + reboot => tout rentre dans l'ordre.

me reste plus qu'a. mettre en place les autres modules sickrage et radar/sonar.

merci pour le coups de pouce Wagner

Tout d'abord, un grand merci a tous les contributeurs des différents tuto et scripts de ce sites, je suis un utilisateur comblé 🙂
J'ai testé cette nouvelle version du script sur deux debian 9 ( Kimsufi + Online) et je n'ai pas rencontré de souci lors de son exécution.

C'est lors de l'utilisation du serveur que je rencontre des soucis :
Premier pb Fail2ban :
Cf mon post : https://mondedie.fr/d/5295-Discussion-Securisation-Logs-nginx-lighttpd/546
Pour résumé, lorsque dans les logs de fail2ban j'ai les lignes suivantes plus aucun blocage d'ip ne se fait. Je suis obligé de redémarré le service. Jusqu'à l'apparition des ces erreurs ;/ Et je ne trouve aucune solution.

Second pb Communication Sickrage (NAS) <==> Seedbox
Depuis l'installation de ma seedbox avec cette nouvelle version du script + Debian 9, la communication entre Mon Sickrage et ma seedbox ne se fait plus correctement. Le test de communication lors du paramétrage de la connexion sur Sickrage se fait correctement, mais lors de l'envoi du fichier torrent vers ma seedbox il y a un souci :
2017-09-18 20:23:52 WARNING SEARCHQUEUE-DAILY-SEARCH :: rTorrent: Unable to send Torrent
2017-09-18 20:23:52 WARNING SEARCHQUEUE-DAILY-SEARCH :: Error while sending torrent:

Et je ne vois pas d'erreur sur ma seedbox. Mais je cherche toujours. Par contre, entre Radarr et ma Seedbox tout marche correctement. Si quelqu'un à des idées je suis preneurs !!!!

un mois plus tard

Bonjour tout le monde,

Depuis hier je suis dans une impasse. Suite au téléchargement d'un torrent j'ai l'erreur suivante:
"No connection to rTorrent. Check if it is really running. Check $scgi_port and $scgi_host settings in config.php and scgi_port in rTorrent configuration file."

Le service tourne correctement et les fichiers de configuration n'ont pas été modifié au préalable.

reboot server et restart du service n'ont rien donné :/

Si quelqu'un a une piste, je suis preneur 🙂

Pour info, sur le même serveur, j'ai seedbox-manager, plex server et sickrage qui tournent sans souci (installés avec les tutos trouvés sur ce site).

Merci d'avance

ex_rat Le script "Essential" est à jour aussi, j'attends un peu pour pousser l’ensemble sur github...

Full
apt-get update && apt-get upgrade -y
apt-get install git-core -y
cd /tmp
wget http://www.ratbox.nl/md/rutorrent-bonobox.tar.gz
tar xzfv rutorrent-bonobox.tar.gz
cd rutorrent-bonobox
chmod a+x bonobox.sh && ./bonobox.sh

Je viens de relancer l'installation de mon serveur sous Debian 9, je teste ton installation @ex_rat .

Je vous tiens informé de tout.

Bon, bah @ex_rat, je te remercie, ça à l'air de fonctionner, on verra à la longue.

Merci encore pour tes scripts !

24 jours plus tard

Bonjour, j'apporte ma pièce dans le sujet, je suis bloqué après un redémarrage du serveur avec ça :

[08.11.2017 14:47:19] Lien incorrect avec rTorrent. Vérifier qu'il est bien en cours d'exécution. Vérifier la configuration de $scgi_port et de $scgi_host dans config.php et scgi_port dans le fichier de configuration de rTorrent.

Erreur très courante du coup, je cherche un peut et voilà tout ce que j'ai fait

server {
    listen 80 default_server;
    server_name _;

charset utf-8;
index index.html index.php;
client_max_body_size 10M;

access_log /var/log/nginx/rutorrent-access.log combined;
error_log /var/log/nginx/rutorrent-error.log error;

error_page 500 502 503 504 /50x.html;

auth_basic "Private";
auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd";

root /var/www;

location = /50x.html {
    root /usr/share/nginx/html;
}

location = /favicon.ico {
    access_log off;
    log_not_found off;
}

location /rutorrent {
    try_files $uri $uri/ /index.html;
}

location ~ ^/rutorrent/(conf|share)/(.+)$ {
    deny all;
}

location ~ \.php$ {
    fastcgi_index index.php;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}

location ~* \.(jpg|jpeg|gif|css|png|js|map|woff|woff2|ttf|svg|eot)$ {
    expires 30d;
    access_log off;
}

    location = /BIC {
    include scgi_params;
    scgi_pass 127.0.0.1:5001;
    auth_basic "Private";
    auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd_bic";
}

}

Je regarde aussi mon .rtorrent

scgi_port = 127.0.0.1:5001
encoding_list = UTF-8
port_range = 45000-65000
port_random = no
check_hash = no
directory = /home/bic/torrents
session = /home/bic/.session
encryption = allow_incoming, try_outgoing, enable_retry
schedule = watch_directory,1,1,"load.start=/home/bic/watch/*.torrent"
schedule = untied_directory,5,5,"stop_untied=/home/bic/watch/*.torrent"
trackers.use_udp.set = yes
dht.mode.set = off
protocol.pex.set = no
min_peers = 40
max_peers = 100
min_peers_seed = 10
max_peers_seed = 50
max_uploads = 15
execute = {sh,-c,/usr/bin/php /var/www/rutorrent/php/initplugins.php bic &}
schedule = espace_disque_insuffisant,1,30,close_low_diskspace=500M

-Mon dossier .session est vide
- Mon erreur dans les logs

2017/11/08 14:26:36 [error] 519#519: *1 FastCGI sent in stderr: "PHP message: PHP Notice:  Use of undefined constant buildtorrent - assumed 'buildtorrent' in /var/www/rutorrent/plugins/create/conf.php on line 4" while reading response header from upstream, client: 192.168.1.13, server: _, request: "POST /rutorrent/plugins/create/action.php HTTP/1.1", upstream: "fastcgi://unix:/run/php/php7.0-fpm.sock:", host: "192.168.1.18", referrer: "http://192.168.1.18/rutorrent/"

2017/11/08 14:28:40 [error] 519#519: *1 FastCGI sent in stderr: "PHP message: PHP Notice:  Use of undefined constant buildtorrent - assumed 'buildtorrent' in /var/www/rutorrent/plugins/create/conf.php on line 4
PHP message: PHP Notice:  Use of undefined constant buildtorrent - assumed 'buildtorrent' in /var/www/rutorrent/plugins/create/conf.php on line 4" while reading response header from upstream, client: 192.168.1.13, server: _, request: "GET /rutorrent/php/getplugins.php HTTP/1.1", upstream: "fastcgi://unix:/run/php/php7.0-fpm.sock:", host: "192.168.1.18", referrer: "http://192.168.1.18/rutorrent/"

2017/11/08 14:28:40 [error] 519#519: *1 FastCGI sent in stderr: "PHP message: PHP Notice:  Use of undefined constant buildtorrent - assumed 'buildtorrent' in /var/www/rutorrent/plugins/create/conf.php on line 4" while reading response header from upstream, client: 192.168.1.13, server: _, request: "POST /rutorrent/plugins/create/action.php HTTP/1.1", upstream: "fastcgi://unix:/run/php/php7.0-fpm.sock:", host: "192.168.1.18", referrer: "http://192.168.1.18/rutorrent/"

-Mon fichier de l'erreur:

#/var/www/rutorrent/plugins/create/conf.php


<?php
// configuration parameters

$useExternal = 'buildtorrent';          // Valid choices:
                                // false - use internal realization (may be too slow for large files)
                                // "transmissioncli" - use program transmissioncli (see http://www.transmissionbt.com/)
                                // "transmissioncreate" - use program transmissioncreate (see http://www.transmissionbt.com/)
                                // "createtorrent" - use program createtorrent (see http://www.createtorrent.com)
                                // "mktorrent" - use program mktorrent (see http://mktorrent.sourceforge.net)
                                // "buildtorrent" - use program buildtorrent (see http://claudiusmaximus.goto10.org/cm/torrent.html)
$pathToCreatetorrent = '/usr/bin/buildtorrent'; // Something like /bin/createtorrent, or /bin/transmissioncli. If empty, program will be found in PATH.

$recentTrackersMaxCount = 15;
 

Voilà, j'aurais une erreur php, mais je ne vois pas d'ou elle proviens tout correspond bien. Merci pour vos aide

    bic que te renvoie

    whereis buildtorrent