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

@funcard Salut à toi, désolé d'apprendre que ça ne semble pas fonctionner pour toi alors que tu sois parti d'une installation propre.
Perso, j'ai fait une install propre sous Debian 9.1, en serveur dédié Kimsufi (le KS-2E, qui était en promo il y a quelques semaines), et je n'ai rencontré aucun soucis, d'autant que j'ai fait une configuration un peu particulière. Par contre, j'ai effectivement constaté les 'warning' durant les phases de compilation (make) de rTorrent & LibTorrent mais ça ne semble pas avoir d'impact puisqu'au final, mon ruTorrent fonctionne impeccablement bien.
J'ai aussi essayé de faire des ajouts/suppressions (comme toi) pour voir si je rencontrais le même pb de plantage (des fois que !), mais tout fonctionne normalement. Je ne sais donc pas où ça coince et je ne pourrai pas t'aider plus, ne m'y connaissant pas suffisamment dans Linux.

En gros, ma configuration se présente ainsi :
- 1 partition principale '/' ;
- 1 partition principale '/root' ;
- 1 partition principale 'swap' ;
- 1 partition logique '/user1' ;
- 1 partition logique '/user2'.
Pas de '/home' à proprement parler. Cette configuration m'a permis de séparer les utilisateurs pour que chacun ne voit pas ce que l'autre télécharge. Je me suis peut-être fourvoyé en faisant cela alors que j'aurais très bien pu ne créer qu'une seule partition '/home' avec chaque user dedans, mais je voulais justement me lancer dans la séparation des partitions et voir si j'avais bien capté le fonctionnement de Linux et des points de montage. Perso, ça roule bien comme ça, et j'espère que ça va durer dans le temps. ^^

Une petite précision tout de même dans la configuration des partitions chez Kimsufi :
Tu peux préparer ton disque manuellement. J'ai donc fait comme ci-dessous, pour faire que les 3 partitions principales soient côte-à-côte, et les 2 '/userx' à la suite :
- le '/' est en position "1" ;
- le '/root' est en position "2" ;
- le 'swap' est en position "4" ;
- '/user1' & '/user2', respectivement en "5" & "6", car si tu en laisses une en position "3", elle va s'intercaler entre '/root' et le 'swap'.
Pour moi, cette disposition me paraît plus "logique" et plus "propre" : on place le système d'abord, puis les utilisateurs à la suite. Mais je me trompe peut-être. Qu'en penses les pros !?

Sinon, je te souhaite bon courage dans l'installation ! Tu vas y arriver, t'inquiètes 🙂 Moi aussi ça ne fonctionnait pas du 1er coup au début, mais en insistant, et en faisant un minimum attention à ce que l'on fait, ça finit par se faire tout seul.

Ah, et dernière chose : j'ai remarqué qu'une fois le tutoriel terminé, la connexion à l'interface web ne fonctionnait pas. J'avais un message me disant que les paramètres $cgi blablabla étaient incorrects. J'ai juste rebooté le serveur, ce qui a réglé le pb.

Voili voilou

Bon courage, et au plaisir ! V.

    virgo77 J'ai eu le même problème que ce que tu évoque. L'interface me indiquant un problème de communication avec rtorrent, j'ai regardé si le processus rtorrent était en route ainsi que le xmlrpc. L'un se lançait et apparaissait dans les processus (xmlrpc), l'autre n'apparaissait pas (rtorrent). Du coup j'ai testé différente chose pour réussir à faire fonctionner l'ensemble.

    Il existe notamment ce topic enfin si jamais vous voulez creuser ou que cela réapparaît un jour.

      Bonsoir, il manque une chose à ce super script, de quoi refaire l'install quand on est un boulet comme moi, et qu'au lieu d'effacer le dossier sickrage, j'ai effacé rutorrent . Du coup le script ne fonctionne plus bien sur, je vais devoir réinitialiser.

      Bonjour,
      Quelqu’un pourrait-il fournir une copie des fichiers de configuration d’nginx ainsi que les .confs employés pour rutorrent parce que j’ai soit une error 404 ou 500 etc, au niveau du Webui.
      Un truc simple pour un seul utilisateur, sans mot de passe. Merci.

        Bonjour,
        Je viens de tester le script essentiel sur un kimsufi (KS-2E) tout semble OK
        Je ne suis pas rentré dans les détail encore.

        Par contre quelles sont les différence entre le script normale et essentiel?
        Merci et good job 🙂

          Filou Salut, tu les as sur le GitHub.
          Stolker Si tu retrouves le sujet initial des scripts tu y trouveras la réponse. C'est pas de l'humour ni une vanne, j'ai juste plus envie de chercher pour les autres.

            Aerya
            Merci, quelle est l'adresse Github à étudier ?

            Bon ben c'est bien ma chance.
            J'ai suivi pas à pas le tutoriel et à la fin quand je me log à https://62..../rutorrent, j'obtiens :

            Ce site est inaccessible
            
            62.***.**.*** n'autorise pas la connexion.
            
            Essayez les suggestions ci-dessous :
            Vérifier la connexion
            Vérifier le proxy et le pare-feu
            Vérifiez votre connexion internet.
            Vérifiez tous les cables, redémarrez votre routeur, modem ou tout autre appareil réseau utilisé.
            
            Permettre à Opera d'accéder au réseau dans les réglages de votre pare-feu ou de votre anti-virus.
            S'il est déjà répertorié en tant que programme autorisé à accéder au réseau, essayez de le supprimer de la liste, puis de le rajouter.
            
            Si vous utilisez un serveur proxy…
            Vérifiez vos réglages proxy ou contactez votre administrateur réseau pour être sûr que le serveur proxy fonctionne. Si vous ne pensez pas que vous devriez utiliser un serveur proxy : Allez dans le menu principal > Paramètres > Modifier les paramètres du proxy… > Réglages LAN et désélectionnez "Utiliser un serveur proxy pour votre LAN".

            Mon serveur est sur Online.

            Bon maintenant il s'affiche, mais avec cette erreur :

            [12.08.2017 17:47:01] 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.

            Voici mon rtorrent.rc :

            scgi_port = 127.0.0.1:5001
            encoding_list = UTF-8
            port_range = 45000-65000
            port_random = no
            check_hash = no
            directory = /home/manon/torrents
            session = /home/manon/.session
            encryption = allow_incoming, try_outgoing, enable_retry
            schedule = watch_directory,1,1,"load.start=/home/manon/watch/*.torrent"
            schedule = untied_directory,5,5,"stop_untied=/home/manon/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 manon &}
            schedule = espace_disque_insuffisant,1,30,close_low_diskspace=500M

            Que faire ? Tout m'a l'air exact.

            De plus quand j'essaie de redémarrer nginx, j'ai aussi cette erreur :

            nginx: [emerg] "server" directive is not allowed here in /etc/nginx/sites-enabled/seedbox.conf:55

            Mon seedbox.conf :

            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 "seedbox";
            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 = /MANON {
                    include scgi_params;
                    scgi_pass 127.0.0.1:5001;
                    auth_basic "seedbox";
                    auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd_manon";
                }
            
            server {
            listen 80 default_server;
            server_name _;
            
            
            charset utf-8;
            index index.html index.php;
            
            auth_basic "seedbox";
            auth_basic_user_file "/etc/nginx/passwd/password";
            
            root /var/www;
            
            location /seedbox-manager {
                try_files /seedbox-manager/$uri /seedbox-manager/index.php$is_args$args;
            }
            }
            
            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;
            }
            }

              Wagner Il existe notamment ce topic enfin si jamais vous voulez creuser ou que cela réapparaît un jour.
              obelix1502 Que faire ? Tout m'a l'air exact.[...]

              En fait, il existe énormément de topic sur ce sujet... Alors je vais compléter (un brin) : celui-ci regroupe la plupart des pistes (~95%). Néanmoins, je n'ai pas évoqué les plugins de ruTorrent pour 2 raisons :

              • les chances sont assez faible

              • D'une part, il faut savoir que je m'en sers seulement (d'environ) un tiers. D'autre part, c'est trop complexe car il y a eu divers bugs (comme cela varie selon le plugin : _task, FileManager, httprpc, etc). Alors non je ne compte pas les rajouter à l'avenir, ni revenir là-dessus (autrement dit je souhaite passer à autre chose).

              À noter, il serait possible de le simplifier. Par exemple, nous pouvons déclarer la directive root une seule fois. C'est également vrai pour celle du charset (index, etc).
              Lorsqu'on déclare plusieurs block Server, il faut les placer à la suite (voici un exemple) :

              user www-data;
              [...]
              events
              {
              }
              http
              {
              	## Très souvent, les gens ont plutôt recours à la directive include.
              	## D'un autre point de vue, selon les personnes c'est plus compliqué de gérer plusieurs fichiers (au lieu d'un seul tel que le nginx.conf).
              	server
              	{
              		location
              		{
              		}
              	}
              	server
              	{
              		location
              		{
              		}
              	}
              }
              

              Bonsoir,
              J'arrive maintenant à la page d'accueil avec comme message : Lien incorrect avec rTorrent. Vérifier qu'il est bien en cours d'exécution
              Comme indiqué dans la faq j'ai tapé :
              su phil
              rtorrent
              et là : Error in option file: ~/.rtorrent.rc:2: SCGI already enabled.
              Merci encore pour votre aide ... :-(

              Bonsoir,

              il n'y aurait pas @Filou un doublon (variable scgi_port) ? Sinon juste un extrait devrait nous orienter vers la solution.

              ## Pour visualiser les 5 premières lignes :
              cat /home/phil/.rtorrent.rc | head -n 5

              J'ai fait une deuxième réinstallation et toujours les mêmes erreurs. 😞

              Je remercie énormément ex_rat.

              Je possède un serveur Debian 9 sur online (mise à niveau depuis le 8).
              Deux jours que je m'évertuais à installer manuellement la bête et j'avais les erreurs citées plus haut.
              Après la lecture de tout le post, je me suis seulement aperçu qu'il avait mis en ligne un nouveau script d'installation.
              Il fonctionne parfaitement. Rien à dire. Me suis logué de suite et tout était fonctionnel.
              Bravo à toi. 😆😍

              Bonsoir,
              Apres réinstallation complète et des jours et des jours d’essais, j’ai réussi enfin à télécharger mon premier torrent.
              Merci au passage pour l’aide précieuse de vos tutoriels.
              Deux choses me tarabustent encore :
              1) pourquoi deux « auth_basic_user_file »
              2) Dans les config.php de rutorrent et des utilisateurs, avez-vous documenté : » "php" => '/usr/bin/php7.0', » ??
              Merci …

              7 jours plus tard

              Bonjour à tous... je reviens vers vous pour avoir une explication sur un symptôme un peu bizarre, que j'ai rencontré ce WE pour me connecter à ruTorrent, et pour lequel j'ai mis un de temps à comprendre. Je m'explique :

              Ci-dessous, l'erreur en question :

              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.

              Ce message, tout le monde le connaît maintenant, et vient souvent d'un défaut d'écriture d'une ligne dans un des fichiers CONF que l'on modifie. Seulement voilà, ce n'est absolument plus le cas quand on est sous Debian 9 ! En effet, le défaut vient d'une petite information qui semble anodine, mais vachement "OBLIGATOIRE", contenue dans le fichier de configuration situé sous '/etc/nginx/sites-enabled/' : la double authentification !

              server {
              [...]
                  error_page 500 502 503 504 /50x.html;
                  >>> auth_basic "seedbox"; <<<<
                  >>> auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd"; <<<<
                  root /var/www;
              [...]
                  location = /USER1 {
                      include scgi_params;
                      scgi_pass 127.0.0.1:5001;
                      auth_basic "Welcome, User1!";
                      auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd_user1";
                  }
              }

              Sans les 2 premières lignes 'auth_basic', on est marron et on n'accède plus à ruTorrent du tout, et l'erreur citée ci-dessus nous apparaît. Et cela, que l'on soit avec une configuration NoSSL (80) ou SSL (443). Pourtant, jusqu'à la version de Debian 8.7, je commentais ces 2 lignes et je n'avais jamais de soucis pour accéder à ruTorrent qui ne me demandait alors plus qu'une seule authentification.

              Le pb dans tout ça est que, si l'on souhaite faire un petit site web à la racine de '/var/www/', on devra alors s'identifier aussi. Et c'est pas terrible comme situation, surtout si chaque visiteur (anonyme) se retrouve le bec dans l'eau avec des identifiants qu'il ne connaît pas. Donc, pour l'instant j'ai décommenté les 2 lignes en question, et je peux à nouveau accéder à ruTorrent. Mais est-ce qu'il existe une solution pour corriger cette anomalie ? Peut-être que la configuration de NGiNX a changé depuis Debian 9 !

              Dans l'attente de vous lire.

              Bien cordialement,

              V.

                location ~ /rutorrent
                {
                	auth_basic	"Welcome, User1!";
                	auth_basic_user_file /etc/nginx/passwd/rutorrent_passwd_user1.htpasswd;
                	## Il n'est pas nécessaire de mettre des guillemets (dans le chemin mais l'erreur ne doit pas venir de là. What if ?)... 
                	## Une autre solution existe grâce à cette ligne : 'satisfy any;'.
                	## Pour obtenir plus de détails : http://nginx.org/en/docs/http/ngx_http_core_module.html#satisfy
                }
                

                Bonjour,

                non il n'y a eu aucun changement @virgo77 (et c'est vrai quelque soit la version de Debian). Cet exemple le démontre très bien car normalement, il n'y a (ou aura) qu'une seule demande (d'identification et nulle part ailleurs).
                D'autant plus, cela fait des années que j'ai des commentaires. Alors non je n'ai pas rencontré cette erreur depuis très très très longtemps.
                D'un autre point de vue, (à titre de rappel) nous pouvons aussi retirer ces lignes. Ensuite, nous pouvons les remettre (par étapes) car dès fois cela permet de dénicher une autre petite erreur. Certes, Nginx est assez fiable mais il lui reste encore des progrès à faire là-dessus.

                Bien cordialement.

                Salut @Wagner et merci pour ton retour... en effet, ton explication semble plus juste que la mienne... ayant testé sous IE11, je n'ai qu'une seule demande d'authentification ; mais elle se présente dès l'accès au site http://domain.tld/ ! Et c'est ça qui m'ennuie, parce que je ne veux pas de demande d'authentification dès la page d'accueil ; uniquement en accédant à ruTorrent. Etrangement, sous Firefox ou Opera, j'ai une double demande d'identification : 1 en accès à la page d'accueil du site, et 1 en allant sur ruTorrent.

                Regardes :
                Dans le tuto récent "https://mondedie.fr/d/9655-beta-installer-rutorrent-sur-debian-9-nginx-php-fpm", si tu cherches la balise 'auth_basic', tu trouveras 4 lignes dans le fichier "/etc/nginx/sites-enabled/seedbox.conf" : les deux premières concernent l'accès au site http(s)://domain.tld/, et les deux autres sont pour l'utilisateur "<USERNAME>" qui ira sur http(s)://domain.tld/rutorrent/.
                Moi, jusqu'à maintenant, et en suivant les tutos d'ici, je mettais un dièse devant les deux premières ligne 'auth_basic' et je pouvais accéder correctement au site http(s)://domain.tld/ sans identification. Et si j'allais sur ./rutorrent/, alors j'avais la demande d'authentification. Mais sous Debian 9, le fonctionnement semble différent car, si je commente les deux premières lignes, j'ai bien accès au site http(s)://domain.tld/ normalement, mais je n'ai plus accès à ./rutorrent ! Ce dernier m'affiche alors le message indiquant que le lien ne fonctionne pas bla bla bla... Je viens de faire l'essai, sous IE11, Firefox et Opera et le constat est le même.

                Il y a, selon moi, bel et bien une modification dans le fonctionnement de NGiNX sous Debian 9. Je ne peux malheureusement pas dire quoi. Aussi, j'aimerais bien savoir pourquoi j'ai ce pb-là, aujourd'hui, alors qu'auparavant je n'avais pas de soucis. Au pire, je réinstalle mon petit serveur dédié sous Debian 8.x et je verrai bien, vu que Debian 8 semble maintenu jusqu'à fin Avril 2020 (selon ce que j'ai lu sur le site de debian).

                Mon dilemme est donc là : dois-je attendre une solution, ou dois-je redescendre sous Debian 8... Zat Iz Ze Kouestieun! 😒

                Au plaisir, bonne soirée, et à demain !

                V.

                nginx -t;
                /etc/init.d/nginx restart;
                /etc/init.d/php7.1-fpm restart;
                

                Salut,

                de rien @virgo77 et je ne serais le dire car au quotidien, je m'en sers d'un seul (de navigateur). Néanmoins, j'ai bien compris et il doit y avoir une solution... Tu n'as pas besoin de redescendre car j'ai impression qu'il faut juste la trouver.
                Il n'y aurait pas un autre fichier ? Ou alors une erreur ? Ce serait un problème lié au navigateur (cookies, cache, etc) ?

                Au plaisir, merci bonne soirée également.