webui-aria2

Il y a 3 outils pour télécharger des fichiers en ligne de commande qu’il faut connaitre sur GNU/Linux : wget, curl, aria2. Un excellent article en Anglais sur les différences entre wget et curl en passant.

Aria2 est un gestionnaire de téléchargement en ligne de commande supportant HTTP/HTTPS, FTP, SFTP, BitTorrent, Metalink.

Aria2 s’installe sur n’importe quelle distro GNU/Linux aisément via le paquet aria2. Sous Debian on fera donc apt-get install aria2 pour l’installer. Il se pilote via la commande aria2c, la documentation est ici.

webui-aria2

Je ne vais pas vous mentir, j’ai horreur de gérer des téléchargements en ligne de commande. C’est là où intervient une application web minimaliste dans son fonctionnement mais absolument redoutable : webui-aria2.

En vérité c'est pas que pour télécharger des iso que je m'en sers

J’avais un besoin, je désirais lancer des téléchargements sur mon server@home alors que j’étais à l’extérieur de chez moi. Au début je me connectais en SSH et puis je lançais une commande wget. C’était pénible, je n’avais pas la visibilité sur l’avancement du téléchargement, les ports peuvent être bloqués sur des Wi-Fi publics etc.

Et là webui-aria2 est apparu sur son cheval blanc dans le soleil couchant. Redoutable.

L’idée est très simple, vous lancez aria2 en tant que démon sur votre server@home. Vous vous connectez ensuite dessus et vous lui envoyez des instructions/téléchargements grâce à webui-aria2. La particularité de webui-aria2 c’est qu’il se lance sur votre poste actuel (ce n’est pas un site à installer sur apache/nginx) donc de n’importe où.

Concrètement je suis sur mon poste Windows au boulot, je dézippe le dossier webui-aria2, je met les paramètres pour me connecter à mon serveur aria2 dans le fichier configuration.js puis je clique sur index.html et je commence à ajouter les téléchargements que je veux. Ce qui est très cool c’est donc que ça s’utilise sur Windows, GNU/Linux, Android (testé, très mal foutu mais fonctionnel) et que le seul besoin que vous avez c’est un navigateur (et une connexion internet).

Passons à la mise en place et commençons par notre server@home évidemment sous Debian.

--enable-rpc : On active l’écoute du serveur JSON-RPC/XML-RPC
--rpc-listen-all : On active les requêtes entrantes JSON-RPC/XML-RPC sur toutes les interfaces réseaux
--rpc-secret=7iQzqgg6Soe5MqpWGaLODhAbNcFwkFEaQYCQhCAtDrIZ : Notre jeton d’authentification secret afin de nous connecter au serveur aria2 (7iQzq…tDrIZ ayant été généré avec la commande openssl)
--daemon : On lance aria2 en démon
pkill aria2c : Tuer simplement aria2c si besoin

Par défaut le serveur JSON-RPC/XML-RPC écoute sur le port 6800, vous pouvez évidemment le modifier (--rpc-listen-port=PORT avec un port compris entre 1024-65535). Il faut impérativement faire une redirection/ouverture de ports sur votre box internet. Pour ma part je fais une redirection de port, j’utilise le port 443 (HTTPS) que je redirige vers mon server@home sur le port 6800. Pour rappel les ports 80 et 443 sont souvent les seuls ouverts dans les Wi-Fi publics.

On peut également utiliser un fichier de configuration avec les options dedans ce qui donnera aria2c --conf-path=aria2.conf --daemon. Je vous invite à sécuriser ce fichier avec chmod 600 aria2.conf.

Certaines personnes souhaiteront peut-être en faire un service qui se lance au démarrage, ce n’est pas mon cas mais ça se trouve aisément sur le net. Le fonctionnement est très simple comme ça, j’apprécie. On en a terminé pour le server@home, simple et rapide non ?

Maintenant sur notre poste local évidemment sous Xubuntu.

1/ On télécharge et on dézippe webui-aria2 wget https://github.com/ziahamza/webui-aria2/archive/master.zip && unzip master.zip
2/ On édite le fichier configuration.js, on modifie le host (host: 'laurent-napias.com'), le port (port: 443) et on renseigne le token (token: '7iQzqgg6Soe5MqpWGaLODhAbNcFwkFEaQYCQhCAtDrIZ'). Ci-dessous je n’ai pas mis la totalité du fichier mais seulement le bout qui nous intéresse

3/ On clique sur index.html (qui va donc s’ouvrir avec notre navigateur par défaut) puis Add, By URIs pour ajouter les adresses des téléchargements

Voilà. C’est simple, c’est beau, c’est efficace, c’est encore et toujours du libre. Et je fais le SAV si vous avez besoin.

Bisous.

Déjà 12 avis pertinents dans webui-aria2

bonjour, j’ai un soucis j’ai apparemment bien mis en place aria2 avec le token , mais j’ai ceci à l’affichage :

http://img11.hostingpics.net/pics/297739Capturedu20160601211717.png

j’utilise nginx + php 7 :

## début config aria2 ##

location ^~ /webui-aria2-master {
root /var/www;
include /etc/nginx/conf.d/php.conf;
include /etc/nginx/conf.d/cache.conf;
auth_basic « aria2 »;
auth_basic_user_file « /etc/nginx/passwd/rutorrent_passwd_user »;
}

## fin config aria2 ##

Quel autre modification doit-je faire ?

    j’ai bien lu pour  » (ce n’est pas un site à installer sur apache/nginx) donc de n’importe où. » mais serait t’il possible de le rendre compatible sous nginx.
      Salute,

      En fait ce qu’il faut comprendre c’est que webui-aria2 ne fonctionne pas comme ça. Il ne sera donc pas possible de le rendre « compatible sous nginx ». webui-aria2 n’est qu’une interface graphique pour communiquer avec aria2 et cette interface graphique : c’est une page web. Cette page web doit donc être lancé en local et va aller se connecter sur aria2 (une fois que tu as rempli les paramètres évidemment).

      Je t’envoie un mail car j’ai eu du mal à comprendre la logique justement.

      Tcho !

        c’est une page web comme tu dis, donc il est tout a fait possible d’avoir ça en accessible avec un nom de domaine depuis l’extérieur avec un serveur web
Bah, je l’ai fais, donc c’est bien accessible depuis l’extérieur, donc depuis n’importe quel pc, du moment que je me connecte sur la bonne adresse, et à mon avis c’est ça, sa question, donc tu peux très bien rendre cette page web accessible sur le web, et pas que en local, et en faite ça parait juste logique, tu peux rendre n’importe quelle page web accessible à internet, et pas seulement laisser ça en local.
Après je comprend très bien ta façon de faire, t’inquiète pas.
    Salute,

    Je vais t’envoyer un mail car les échanges dans les commentaires peuvent prendre du temps.

    Tcho !

Salut, vraiment instructif comme tuto, par contre j’avais aussi installé aria2 via apt-get et ça m’avait installé la version 1.15 (au lieu de la 1.18 ou +), donc j’ai dû repasser par les sources et les compiler pour avoir la dernière version.

Hormis ça, j’ai un autre soucis, peut-être pourriez-vous m’aider ? :)

Quand je tape :
aria2c –enable-rpc –rpc-listen-all –rpc-secret=maclefsecrete –daemon

J’obtiens l’erreur suivante :
aria2c : option non reconnue « –rpc-secret=maclefsecrete »
Usage: aria2c [OPTIONS] [URI | MAGNET | TORRENT_FILE | METALINK_FILE]…
See ‘aria2c -h

J’ai bien sûr essayé sans la clef secrète et ça marche sans soucis, mais bon niveau sécurité c’est pas fou.

Est-ce que vous auriez une idée du problème ?

Merci.

    Salute,

    Je fais des suppositions, je ne connais pas ton niveau. C’est bien des tirets et double tirets que tu utilises ? Tu as essayé avec 1234 comme clef secrète --rpc-secret=1234 ?

    Tcho !

      Salut,

      Tu fais bien, je m’intéresse que depuis récemment au monde de Linux donc je pourrais rapidement être perdu.

      Et oui ce sont bien les bons tirets à chaque fois, en image : https://dl.dropboxusercontent.com/u/61641764/pb_aria2.png

      Une piste d’un ami mais je suis pas sûr que ça résolve le soucis. En fait j’ai la version 1.18 (avant 1.15) mais les dernières sources montrent la version 1.27. Je vais essayer de l’installer pour voir et je reviens vers toi.

      Merci pour ton aide :)

          Re-salut,

          Oui c’est bien OpenMediaVault et j’ai « résolu » le soucis en installant la version 1.26 d’aria2. Pour info si d’autres ont ce problème, j’avais tenté la version 1.20 aussi et même erreur. Puis tenté la 1.27 mais je n’arrivais pas à compiler (problème de dépendances probablement) donc j’ai essayé la version 1.26 et plouf ça a fonctionné…

          Il semblerait donc que l’option –rpc-secret ne soit pas disponible dans les vieilles versions ?

          En tout cas merci pour ton tuto et pour tes réponses rapides, ça fait plaisir :)

          Hello,

          L’important est que ce soit résolu mais à mon avis ça venait (indirectement) de OpenMediaVault. Je suis en 1.18.8 qui date de 2014 sur Debian et no problemo.

          Tcho !

La discussion est malheureusement close.