bud77 Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 Je me demandais si il existait un package ou autre truc du genre, permettant d'avoir un shell "inclus" dans l'interface web DSM Ou si quelqu'un a lu/vu quelque chose du genre pouvant se faire "intégrer" au DSM Merci pour votre aide 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 (modifié) Trouvé et testé ceci: http://phpshell.sourceforge.net/ C'est très basique, le shell s'exécute dans le contexte du compte http (nobody) J'avais vu des machins plus sophistiqués (avec une applet java ), notemment au sein de webmin. Faut chercher encore un peu [edit] et voila: http://javassh.org/space/start [edit #2] Celui-la, c'est pas tout a fait ce que tu demandes: comme l'applet java s'éxécute sur le client, faut que ce dernier ait accès au synology en ssh ou telnet. [edit #3] Trouvé! http://code.google.com/p/shellinabox/ télécharger le source (shellinabox-2.13.tar.gz a partirde http://code.google.c.../downloads/list) extraire l'archive dans un répertoire de travail: cd <rep> tar xvzf <download dir> shellinabox-2.13.tar.gz cd shellinabox-2.13 compiler (necessite le package ipkg optware-devel): ./configure --prefix=<cible> # (cible: racine ou sera installé la commande, exemple --prefix=/volume1/site/, commande dans /volume1/site/bin) make make install et ensuite <cible>/bin/shellinaboxd -s "/:LOGIN" & Ne reste plus qu'a pointer le navigateur sur http://<ip du syno>:4200 pour voir le prompt de login: fserv login: root Password: BusyBox v1.16.1 (2012-04-13 04:26:57 CST) built-in shell (ash) Enter 'help' for a list of built-in commands. @fserv> ls tmp @fserv> Doc en ligne: http://code.google.c...hellinaboxd_man Modifié le 19 avril 2012 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 J'avais trouvé le shellindabox et quelques autres Le truc c'est que je peux pas utiliser d'autre port que le , et je suis absolument pas familier des vhosts ni des config apache Et mon "rêve" serait de pouvoir tout centraliser dans l'interface DSM Je vais voir ce que je trouve d'autre, avec mes maigres compétences web Merci pour ton aide Raoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Diaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 Il y a GateOne qui est bien mieux à mon avis. Nounours44 bosse sur un SPK... 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 Client SSH en html5 ... çà laisse rêveur Mais je crois me souvenir que Nours avait eu quelques déconvenues avec la méthode de fonctionnement du programme 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 Client SSH en html5 ... çà laisse rêveur Ça sera le même problème que pour l'applet java: va forcément s'exécuter dans le contexte du navigateur. Shellinabox est un serveur http (optionnellement https) qui donne accès à distance au shell (ou toute autre commande en mode terminal) dans un navigateur. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 (modifié) J'avais trouvé le shellindabox et quelques autres Le truc c'est que je peux pas utiliser d'autre port que le , et je suis absolument pas familier des vhosts ni des config apache Et mon "rêve" serait de pouvoir tout centraliser dans l'interface DSM Je crois que ton reve n'est pas inaccessible: (réalisé sans trucage bien entendu) Modifié le 19 avril 2012 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 Alors là ... Raoul !!!!!!!!!!!!!!! J'étais déjà en train de regarder les posts sur le VPN, voir si j'aurais pu compenser ou pas Mais alors là ! Dit m'en plus !!!!! Tu as été modifié un de tes scripts rsync si je vois bien, dont tu as un "bouton" dispo sur le DSM ? IPKG + sources ... çà a l'air packageable .... dis nous tout !!!!! 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CaptainIgloo Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 (modifié) C'est vrai quoi ! Dis nous ?????? OOPS : http://www.synology-...-Box-auf-der-DS http://forum.synology.com/enu/viewtopic.php?f=27&t=42093 Modifié le 19 avril 2012 par CaptainIgloo 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 C'est vrai quoi ! Dis nous ?????? OOPS : http://www.synology-...-Box-auf-der-DS :wub: :wub: :wub: Juste merci ! 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 (modifié) Tu as été modifié un de tes scripts rsync si je vois bien, dont tu as un "bouton" dispo sur le DSM ? IPKG + sources ... çà a l'air packageable .... dis nous tout !!!!! D'abord compiler shellinabox comme je l'ai indiqué, Je dois ajouter quelques détails complémentaires: Le package ipkg openssl-dev est requis pour le support ssl La commande "configure" doit être: LDFLAGS="-L/opt/lib" CPPFLAGS="-I/opt/include" ./configure --prefix=/site (changer le "prefixe" a sa sauce) générer un certificat ssl autosigné pour shellinabox (à faire dans le répertoire des sources) mkdir -p <prefixe>/etc/shellinabox/ bash ./make-chained-cert.sh ><prefixe>/etc/shellinabox/certificate.pem [/code] dans un fichier de conf http inclus a partir de "/usr/syno/apache/conf/httpd.conf-user" mettre [xml] <IfModule !proxy_module> LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_connect_module modules/mod_proxy_connect.so LoadModule proxy_http_module modules/mod_proxy_http.so </IfModule> <Location /shell> ProxyPass http://localhost:4200/ Order deny,allow deny from all # ce qui suit est un exemple, chaqun configure la sécurité a son gout allow from 192.168.1.0/24 </Location> [/xml] lancer le démon shellinabox comme ceci: [CODE]<prefixe>/bin/shellinaboxd --localhost-only --cert <prefixe>/etc/shellinabox --background[/code] dans tout ce qui precede <prefixe> est à chaque fois à remplacer par le répertioire choisi au moment du configure rédémarrer le serveur apache-user Ceci permet déja d'accéder au shell sur le port : http://<addresse syno>/shell Pour l'intégration au menu DSM, cela fera l'objet d'un post ultérieur Modifié le 19 avril 2012 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 C'est vrai quoi ! Dis nous ?????? OOPS : http://www.synology-...-Box-auf-der-DS http://forum.synolog...hp?f=27&t=42093 En effet, quasiment identique, manque juste le support de SSL 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 Le SSL du shell , est-il vraiment utile si ma connection au DSM lui même est déjà en SSL ? 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 (modifié) Le SSL du shell , est-il vraiment utile si ma connection au DSM lui même est déjà en SSL ? Ben oui car la sous-fenetre shell utilise son propre flux http, indépendant de la fenetre DSM. En remplacant, dans le tuto de http://www.synology-forum.de "type":"legacy", par "type": "url",[/code] l'application étant alors lancée dans sa propre fenetre, on peut constater que l'url est "http" et pas "https" Modifié le 19 avril 2012 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 Bigre, alors que je n'y m'y attendais pas du tout je m’aperçois que le plein écran est supporté par shellinabox. "vi" fonctionne! en fait on dispose d'une emulation xterm, y compris la couleur! 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 Ben oui car la sous-fenetre shell utilise son propre flux http, indépendant de la fenetre DSM. En remplacant, dans le tuto de http://www.synology-forum.de "type":"legacy", par "type": "url",[/code] l'application étant alors lancée dans sa propre fenetre, on peut constater que l'url est "http" et pas "https" Sur ce tuto, il lance le service SIAB depuis le DSM. J'ai donc supposé que la connexion du SAIB se faisait sur le localhost qui l'héberge Mais tu indiques l'inverse, et que donc le flux n'est pas secure. Dans ce cas, je comprends pas comment on a 2 connexion vers le même port . Ou alors j'ai mal compris, et SIAB tourne sur un autre port, que le DSM affiche, et là, c'est moins top pour moi Je suis un peu perdu, donc si je suis pas clair, hésite pas à me le dire 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 (modifié) Mais tu indiques l'inverse, et que donc le flux n'est pas secure. Dans ce cas, je comprends pas comment on a 2 connexion vers le même port . C'est le proxy qui permet cela. Grace aux les lignes suivantes dans le config apache: <Location /shell> ProxyPass http://localhost:4200/ </Location> Les connexions http arrivant avec l'url http://<addresse du syno>/shell sont "proxyfiées"/"tunnellées" (quel terme utiliser ???) en sur le port 4200 local. SIAB, sous réserve qu'il ait été compilé avec le support SSL et n'ait pas été lancé avec le switch "--disable-ssl-menu", passe automatiquement de http en https, c'est pourquoi on peut laisser "http://" dans la conf ci dessus. Tu remarquera d'ailleurs que je lance SIAB avec l'argument "--localhost-only". Comme cela le démon n'écoute que sur l'ip de loopback (127.0.0.1) et on est obligé de passer par le proxy pour s'y connecter. Ceci permet de mettre des restrictions d'ip grace aux directives "allow from" d'apache au lieu de le faire via le firewall. Modifié le 19 avril 2012 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 J'ai pas encore compilé justement, j'attendais tes infos Bon, ben je pense que j'ai toutes les infos nécessaires, j'ai de quoi m'occuper ce week-end 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 Bon, au final, j'ai quelques questions de noob Je dois bien générer le certif avant la compilation ? La commande pour la génération indique "bash prog..." je peux pas juste faire un "./prog ..." ? (je dois installer bash en plus ?) Pour la compilation, je dois juste faire "LDFLAGS="-L/opt/lib" CPPFLAGS="-I/opt/include" ./configure --prefix=/site " avec un --enable_ssl en plus si j'ai bien compris ? Et pour le prefix, je peux le laisser vide ? Ca pointera bien vers /usr/local ? 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 (modifié) Bon, au final, j'ai quelques questions de noob Tes posts précédents ne m'on pas donné l'impression d'un noob mais bon... Je dois bien générer le certif avant la compilation ? non, le certif n'est nécessaire que lors de l'exécution donc à faire avant de lancer le démon et une seule fois La commande pour la génération indique "bash prog..." je peux pas juste faire un "./prog ..." ? (je dois installer bash en plus ?) "./prog" ne marcherait pas parce que le script contient le shebang "#!/bin/bash -e" alors que le bash optware est dans /opt/bin. Mais tu peux aussi le lancer avec le shell standard "sh" ("sh <prog>, je viens de vérifier) Pour la compilation, je dois juste faire "LDFLAGS="-L/opt/lib" CPPFLAGS="-I/opt/include" ./configure --prefix=/site " avec un --enable_ssl en plus si j'ai bien compris ? Le "enable-ssl" est automatique des que configure détecte la présence de openssl. Donc pas necessaire, car LDFLAGS et CPPFLAGS servent à ça justement. Mais assure-toi de bien avoir installé le package ipkg openssl-dev. Et pour le prefix, je peux le laisser vide ? Ca pointera bien vers /usr/local ? J'ai pas vérifié mais c'est ce qui est utilisé par défaut en général De toutes manières ça ne mange pas de pain de mettre un --prefix=/usr/local explicite Modifié le 19 avril 2012 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 Compilation en cours .... après le 5e essai, j'ai fini pas comprendre qu'il me manquait "coreutils" (notamment le TR) Je te tiens au courant, et encore merci pour ton aide TRES précieuse 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 Compilation en cours .... après le 5e essai, j'ai fini pas comprendre qu'il me manquait "coreutils" (notamment le TR) C'est pour ça que j'avais indiqué d'installer le "meta package" "optware-devel" qui contient tout les outils nécessaires pour compiler. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 C'est pour ça que j'avais indiqué d'installer le "meta package" "optware-devel" qui contient tout les outils nécessaires pour compiler. J'avais complètement pas vu cette ligne En tout cas, programme compilé et se lance correctement Je tatonne la config pour l'inclure dans le DSM 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 19 avril 2012 Partager Posté(e) le 19 avril 2012 (modifié) Je tatonne la config pour l'inclure dans le DSM Essaie d'abord de le tester en dehors de l'interface, c'est plus simple. L'inclusion dans DSM est a mon avis pas essentielle. Pouvoir l'attaquer via le port grace au proxy me semble suffisant pour commencer. [edit] si tout est bien configur Modifié le 19 avril 2012 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
bud77 Posté(e) le 19 avril 2012 Auteur Partager Posté(e) le 19 avril 2012 Alors, hors DSM, tout marche nickel tant que j'active pas le SSL (aussi bien port 4200 que la redirection /shell) Dès que je passe avec le --cert /chemi/certif.pem, l'url est bien redirigée en httpS, mais j'ai une belle erreur (Code d'erreur : ssl_error_no_cypher_overlap) Dans mon navigateur, j'ai tenté d'activer le "ssl3.rsa_rc4_40_md5" mais toujours rien Je vais regarder si je peux pas générer un certif "différent" 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.