WAPT-webui est une console développée en VueJS pour administrer WAPT .
Nous utilisons quotidiennement WAPT mais pour nous la console actuelle comporte certains inconvénients :
- requiert un PC sous Windows
- requiert l'installation de la console sur tous les postes des administrateurs et donc...
- difficile de centraliser la console
Nous sommes deux administrateurs système Linux/GNU et nous souhaitions pouvoir nous affranchir de la dépendance à Windows pour administrer WAPT.
WAPT-webui est entièrement développé en VueJS et utilise l'API REST proposé par WAPT (comme le fait la console actuelle).
-
Le tableau de bord est une vue qui permet d'un seul coup d'oeil de consulter plusieurs informations.
- La répartition des postes par statut (OK,CRITICAL,TO-UPDATE).
- La répartition des différents systèmes d'exploitation du parc géré par WAPT.
- Des tableaux avec les 5 derniers postes qui ont joint le serveur WAPT suivant leur statut (ERROR,OK,TO-UPDATE).
- Inventaire des postes : état des paquets, informations sur les paquets à mettre à jour ou en erreur, états des postes...
Nous sommes actuellement dans une version de développement. Vous ne retrouverez pas l'ensemble des fonctionnalités proposées par la console WAPT officielle.
Gardez à l'esprit que des changements importants (UI, techniques...) peuvent subvenir jusqu'à la sortie d'une version 1.0.
WAPT-webui est compatible avec Google Chrome et Firefox. Nous n'avons pas effectué de tests avec Internet Explorer donc n'hésitez pas à ouvrir une issue en cas de problème.
Télécharger la dernière version du projet
# Créer un dossier pour le virtualhost
mkdir -m 0700 /var/www/wapt-webui
chown www-data: /var/www/wapt-webui
# Télécharger la dernière version du projet
wget -O /var/www/wapt-webui/wapt-webui.tar.gz https://github.com/Agumayasd/wapt-webui/releases/download/0.1.0/wapt-webui-0.1.0.tar.gz
# Décompresser l'archive
cd /var/www/wapt-webui
tar xzf wapt-webui.tar.gz && rm -f wapt-webui.tar.gz
# Permissions
cd /var/www/wapt-webui
chown -R www-data: /var/www/wapt-webui
find . -type f -exec chmod 0400 {} \;
find . -type d -exec chmod 0500 {} \;
Pour spécifier le serveur WAPT à utiliser il faut modifier le fichier app.js comme ci-dessous (attention à ne spécifier que le domaine) :
URL="https://wapt.mydomain.com"
sed -i "s#WAPT_SERVER_URL#$URL#g" /var/www/wapt-webui/static/js/app.*.js
Il faut modifier la configuration de votre virtualhost (Apache2 ou Nginx) pour permettre l'utilisation de l'API Wapt par Javascript. Voir les sections CORS et Basic-auth ci-dessous.
# CORS wapt-webui
add_header 'Access-Control-Allow-Origin' "$http_origin" always;
add_header 'Access-Control-Allow-Credentials' 'true' always;
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS' always;
add_header 'Access-Control-Allow-Headers' 'Accept,Authorization,Cache-Control,Content-Type,DNT,If-Modified-Since,Keep-Alive,Origin,User-Agent,X-Requested-With' always;
# required to be able to read Authorization header in frontend
add_header 'Access-Control-Expose-Headers' 'Authorization, Authentication' always;
# Disable WWW-Authenticate for wapt-webui
proxy_hide_header 'WWW-Authenticate';
Nous n'avons pas fait de test sur apache2 donc si vous rencontrez des problèmes vous pouvez ouvrir une issue.
Si vous avez une configuration fonctionnelle: vous pouvez contribuer :)
Il est nécessaire de désactiver l'en-tête HTTP WWW-Authenticate pour éviter que les navigateurs affichent une fenêtre d'authentification basique. Cette solution n'est pas conforme avec les standards W3 (401 Unauthorized) mais pour le moment nous n'en avons pas d'autres.
Pour NGINX il est nécessaire d'ajouter cette ligne dans la configuration du virtualhost :
proxy_hide_header 'WWW-Authenticate';
Nous n'avons pas fait de test sur apache2 donc si vous rencontrez des problèmes vous pouvez ouvrir une issue.
Si vous avez une configuration fonctionnelle: vous pouvez contribuer :)
N'hésitez pas à ouvrir des issues pour poser des questions.