Ajaxterm est un terminal dans une page web, accessible donc simplement par un navigateur web. Les avantages? Il est accessible de partout, quelque soit le proxy, pare-feu, antivirus, ou n’importe quelle protection mise en place, du moment que le http/https passe. Les inconvénients : c’est un peu lent, et pas sécurisé si vous ne passez pas par de l’https.
J’ai un peu galéré, mais j’ai fini par réussir à installer ajaxterm sur mon NAS Synology et à configurer son accès en https. Comme ça peut servir à d’autres (private : je vise personne :D ), voilà ma méthode.
Ajaxterm nécessite python pour fonctionner, donc il faut l’installer :
Téléchargez ajaxterm :
Extraire les fichiers :
Éditez le fichier ajaxterm.py et modifiez la ligne suivante en remplaçant localhost par l’IP de votre NAS :
Je ne sais pas pourquoi, je n’ai pas réussi sans cette manip. 127.0.0.1 ou localhost ne fonctionnent pas, il faut vraiment mettre l’IP de votre NAS sur votre LAN (192.168.0.X en général).
Copiez le dossier Ajaxterm-0.10 où bon vous semble, ajaxterm ne « s’installe » pas plus que ça. Tout ce qui est nécessaire est dans ce dossier, que vous pouvez mettre n’importe où.
Pour lancer ajaxterm, c’est tout simplement, dans le dossier Ajaxterm-0.10 :
A ce stade, vous pouvez normalement accéder à ajaxterm à l’adresse : http://ip.de.votre.nas:8022/
Etant donné qu’il y a déjà un apache d’installé sur les NAS Synology, configuré de manière (très) particulière, et qu’il sert à accéder à l’interface d’administration du NAS, on va éviter de le casser :)
J’ai opté pour l’installation d’un second apache, avec ipkg :
Ce nouvel apache ne sera pas accessible sur le port 80 puisque celui-ci est déjà utilisé par l’apache d’origine. Par contre, il est à l’écoute sur le port 8000, et vous devriez avoir accès à la célèbre page « It works! » à l’adresse http://ip.de.votre.nas:8000
Pour info, l’arrêt/relance de ce nouvel apache se fait avec les commandes suivantes :
Editez la configuration https d’apache : /opt/etc/apache2/extra/httpd-ssl.conf
Il faut apporter les modifications suivantes :
--------------------------------------------------------------------Listen 443Listen 4430 (vous pouvez mettre un autre port) --------------------------------------------------------------------<VirtualHost _default_:4430>NameVirtualHost *:4430 <VirtualHost *:4430> --------------------------------------------------------------------DocumentRoot "/opt/share/www"ServerName www.example.com:443ServerAdmin you@example.comErrorLog "/opt/var/apache2/log/error_log"TransferLog "/opt/var/apache2/log/access_log"ServerName localhost --------------------------------------------------------------------
Et ajouter les lignes suivantes juste avant la balise :
-------------------------------------------------------------------- ProxyRequests Off Order deny,allow Allow from all ProxyPass /ajaxterm/ http://ip.de.votre.nas:8022/ ProxyPassReverse /ajaxterm/ http://ip.de.votre.nas:8022/ --------------------------------------------------------------------
Une dernière chose : il est plus propre d’utiliser le certificat déjà présent sur le nas. C’est tout simple :
Relancez apache, et normalement c’est tout bon! Vous avez accès en https à votre ajaxterm à l’adresse suivante : https://ip.de.votre.nas:4430/ajaxterm/
– Ajaxterm semble ne pas fonctionner sous Firefox 3.6 sous Linux. Je n’ai pas encore trouvé pourquoi. Ca fonctionne par contre correctement sous Chrome et Firefox 4.0 sous Linux, et sous toutes les versions de Firefox sous Windows (en fait ça fonctionne sans doute dans toutes les autres configurations…)
– Je ne suis pas sur de la fiabilité de la configuration apache donnée ici. Elle fonctionne mais je ne vous garantie pas qu’elle est sure à 100% vu que je n’ai pas encore vraiment compris l’organisation particulière de la configuration d’apache installée avec ipkg.