Table des matières

Mode "chroot"

La doc ci-dessous vous permettra d'installer WIMS en mode “chroot” sur Debian.

Wims est capable de fonctionner en mode chroot. Ce mode verrouille l'exécution du logiciel dans un dossier particulier, l'empêchant de remonter les dossiers, et limitant l'execution de programmes tiers à une liste définie.

Voir un article à ce propos : http://wimsedu.info/?p=320

L'installation de wims en mode chroot est fortement conseillée, d'une part par le niveau supplémentaire de sécurité qu'elle apporte, et d'autre part parce que l'installation est aussi plus facile et plus rapide à faire. (tous les logiciels tiers sont inclus dans le dossier chroot que l'on télécharge)

1. Pré-requis et logiciels tiers :

Mettre à jour apt-get et les packages existants :

apt-get update
apt-get upgrade --show-upgraded

Installer un Serveur Web

Par défaut, WIMS fonctionne avec Apache, ( et contient un script de configuration automatique de ce dernier.)

apt-get install apache2
/etc/init.d/apache2 restart

Mais vous pouvez choisir de travailler avec NGINX. nginx ne dispose pas nativement de cgi, il faut donc créer un wrapper cgi (cf http://wiki.nginx.org/SimpleCGI) ou l'utiliser comme proxy vers apache (ça accélère pas mal les choses en s'occupant de tout le statique et en ne laissant que le cgi à apache, ça économise aussi de la RAM en évitant de lancer un process/thread apache à chaque image/css).

Installer les logiciels tiers indispensables à WIMS :

apt-get install make g++ texlive-base units-filter flex bison liburi-perl libgd2-xpm-dev

Installer les logiciels tiers spécifiques à la version chroot

apt-get install binutils bzip2

Installer les logiciels tiers recommandés (seuls certains modules/ fonctionnalités ne seront pas utilisables sans ces paquets) :

apt-get install ldap-utils

Ici, ldap-utils ne sera utile que si vous comptez lier votre serveur WIMS à un annuaire LDAP.

2. Installation de WIMS

Cete partie est sensiblement identique à l'installation classique de WIMS. Seule l'instruction ./bin/setwimsd est remplacée par ./bin/setchroot

Commencez par créer un utilisateur "wims" :

adduser wims

(ceci crée automatiquement le dossier /home/wims)

Téléchargez WIMS

su wims
cd /home/wims
wget --no-check-certificate https://sourcesup.renater.fr/frs/download.php/XXX/wims-4.0X.tgz
tar xzf wims-4.0X.tgz
rm wims-4.0X.tgz

3. CHROOT

en tant qu'utilisateur wims :

wget https://wims.unice.fr/download/wims/chroot/wims-4.12.chroot64.linux.tar.bz2
tar -xjf wims-4.12.chroot64.linux.tar.bz2

Les programmes tiers inclus utilisent les versions suivantes :

 GP/PARI    2.7.6
 Maxima     5.38.1
 Octave     4.0.3
 GAP        4.8.4
 Yacas      1.5.0
 Macaulay2  0.9.2
 Scilab     5.5.2
 gnuplot     5.0 patchlevel 4
 Graphviz    2.38.0 
 Povray      3.02.Linux.gcc
 ImageMagick 7.0.2-4

En vous rendant (plus tard) dans les pages d'administration du serveur WIMS, vous pourrez alors vérifier que les différents logiciels graphiques et outils tiers fonctionnent. en comparant les version affichées avec les versions du chroot que vous avez téléchargé, vous vous rendrez vite compte si votre WIMS fonctionne bien en mode “chroot”.

Pour vérifier que votre dossier chroot est fonctionnel, vous pouvez vous y “logger” en tapant la commande suivante :

chroot /home/wims/chroot

Votre invite de commande se situera alors dans ce dossier, dans l'environnement chroot, avec un accès uniquement aux logiciels présents, et sans possibilité de naviguer dans les dossiers en dehors.

Installer WIMS (Fin)

./compile --mathjax --jmol --modules --shtooka --build-chroot
./bin/setwrapexec
./bin/setchroot 

la 2e commande (./bin/setchroot ) est importante. Sans elle, Wims ne fonctionnera pas vraiment en mode chroot.

./bin/apache-config
service apache2 restart

Et voila : votre Wims devrait être accessible depuis le navigateur web à l'adresse http://localhost/wims