Installation et configuration d'AWStats – Nawhack.fr

NAWHACK

Blog d'informatique sécurité et réseaux.



Installation et configuration d'AWStats

Illustration de l'article

Développé en Perl et sous licence GPL, AWStats est un analyseur de log pour serveur web, FTP, mail etc... Il génère des vues graphiques et des statistiques d'accès à vos serveurs web.

Il permet d'afficher le nombre de visites, de visiteurs uniques, de pages, de hits, de transfert, par domaine/pays, hôte, heure, navigateur, OS, … Il peut être lancé grâce à des scripts CGI ou en ligne de commande.

Le but de ce billet est d’introduire l’installation et la configuration d’AWStats 7.0 et son patch.

En effet, il existe un patch bien pratique : Multiple Month. Ce patch permet de "switcher"  entre les différents mois, chose qui n'est pas prévue par défaut dans Awstats. On peut ainsi consulter les statistiques et rapports des mois précédents de façon dynamique.

1) Télécharger et décompresser Awstats (dernière version 7.0) :

cd /tmp
wget http://prdownloads.sourceforge.net/awstats/awstats-7.0.tar.gz
tar xvzf awstats-7.0.tar.gz

2) On copie les différents fichiers / scripts :

cp -rf wwwroot/cgi-bin/* /usr/awstats/cgi-bin/
cp -rf wwwroot/classes /usr/awstats/classes/
cp -rf wwwroot/css /usr/awstats/css/
cp -rf wwwroot/icon/* /usr/awstats/icon/
cp -rf wwwroot/js /usr/awstats/
cp -rf tools/*.pl /usr/awstats/cgi-bin/

3) On change le propriétaire des fichiers exécutable :

chown www-data /usr/awstats/cgi-bin/*.pl

4) On crée le dossier où seront stockés les fichiers de configuration awstats de chacun des sites :

mkdir /etc/awstats
cp -f wwwroot/cgi-bin/awstats.model.conf /etc/awstats/

5) Modification du fichier de configuration :

cd /etc/awstats 
cp awstats.model.conf awstats.monsite.tld.conf

Indiquer le format des logs : LogType=W LogFormat=1

Indiquer le répertoire des logs : LogFile="/var/log/apache2/monsite.tld-access_log" 

Indiquer le nom de domaine : SiteDomain="monsite.tld" 

Indiquer la langue : Lang="fr"

Lisez la doc technique pour en savoir plus sur le fichier de configuration.

6) On créer le dossier où seront stockés les fichiers de cache de traitement :

mkdir /var/lib/awstats
chmod 700 /var/lib/awstats

7) Il ne reste plus qu’à lancer le script de traitement des logs  :

perl /usr/awstats/cgi-bin/awstats_updateall.pl now -awstatsprog=/usr/awstats/cgi-bin/awstats.pl -configdir=/etc/awstats/

8) On ajoute la commande dans le crontab :

0 1 * * * perl perl /usr/awstats/cgi-bin/awstats_updateall.pl now -awstatsprog=/usr/awstats/cgi-bin/awstats.pl -configdir=/etc/awstats/

Le script sera éxécuté tous les jours à 1h du matin.

Installation du patch Multiple Month :

Vous pouvez télécharger le patch sur ici sudolinux.com ou sur sourceforge.net

Application du patch :

cp -f awstats-7.0b1.971-static.patch /usr/awstats/cgi-bin/
patch -p0 < awstats-7.0b1.971-static.patch

Modification de la ligne 9783 :

printf "  document.forms['FormDateFilter'].action = \"awstats%s\" + year + \"-\" + month + \".html\";\n", (! $HTMLOutput{'main'}) ? ".".join(',',keys %HTMLOutput)."-" : "-";

par

printf "  document.forms['FormDateFilter'].action = \"awstats.pl\";\n", (! $HTMLOutput{'main'}) ? ".".join(',',keys %HTMLOutput)."-" : "-";

Cela permet d’utiliser les rapports dynamiquement et non des rapports statiques pour chaque mois.

Voici pour la configuration d'Awstats. Il ne reste plus qu'a configurer le serveur web !


  • le 08/10/2012
  • par Nawhack