--==--
Petite application destinée à visualiser les journaux système via un service HTTP (php, cgi, js avec Jquery et AJAX).
Pour ajouter ou supprimer des zones de visualisation, utiliser le '+' ou le '-' en haut à gauche de la page. L'outil permet de visualiser jusqu'à 5 fichiers différents.
Utiliser le 'R' pour forcer l'actualisation de toutes les zones de visualisation (liste de fichier et contenu d'un fichier). Toutes les minutes, la page recharge automatiquement les noms de fichiers et les zones de visualisation.
Le 'A' signifie que l'application s'actualiser automatiquement. Un clic sur le 'A', et il devient 'M'. A ce moment-là le navigateur attend une clic sur le 'R' pour actualiser toutes les zones d'affichage des fichiers.
Il suffit de cliquer sur un nom de fichier pour que celui-ci soit afficher dans la zone contenu.

crabs_httplog se paramètre à l'aide de variables SHELL qui sont lues par les cgi. Les variables utilisées sont les suivantes :
| ROOT | : | Racine des fichiers (les fichiers ne pourront pas être sous ce fichier |
| SEARCH | : | Commande shell permettant d'obtenir la liste de fichier (lancée depuis le dossier $ROOT) |
| CAT | : | commande utilisée pour visualiser un journal système |
Pour modifier le comportement par défaut, créez un fichier à la racine du site qui s'appelle httplogs.env et ajoutez-y les nouvelles valeurs de ces variables.
Par défaut crabs_httplog permet la visualisation des fichiers suivants :
| ROOT | : | /var/log/httpd |
| SEARCH | : | 'ls -1 *_log* | sort' |
| CAT | : | cat |
Contenu du fichier httplogs.env :
CAT="tail -200"
Les '"' sont importantes...
Attention, ici on fait une grosse faille de sécurité car nous mettons à dispostion de l'utilisateur du service http une commande qui permet de lire les fichiers avec les droits root (dont /etc/shadow). Le service est lui-même protégé sommairement contre '../'...
Le souci c'est que ces fichiers sont uniquement accessibles par le compte root...
Pour utiliser crabs_httplog afin de visualiser les fichiers messages et syslog, il vous faudra paramétrer comme suit :
Contenu du fichier httplogs.env :
ROOT=/var/log SEARCH='ls -1 messages* syslog* httpd/*log* | sort -t. -k2n' CAT=suid_cat
Copiez cat sous le nom suid_cat dans un dossier accesible par les cgi (PATH) et ajouter-lui le set-user-id bit.
Tout est dans le titre, mettre le contenu suivant dans le fichier .htaccess dans le dossier où crabs_httplogs est installé :
<Files ~ "\.env$"> Order allow,deny Deny from all <Files>
Il faut que Apache vous autorise à modifier sa configuration...