SARG – Générateur de rapports d’analyse Squid et outil de surveillance de la bande passante Internet

SARG est un outil open source qui vous permet d’analyser les fichiers journaux de Squid et de générer de beaux rapports au format HTML avec des informations sur les utilisateurs, les adresses IP, les sites les plus consultés, l’utilisation totale de la bande passante, le temps écoulé, les téléchargements, les sites web auxquels l’accès est refusé, les rapports quotidiens, hebdomadaires et mensuels.

Le SARG est un outil très pratique pour visualiser la quantité de bande passante Internet utilisée par chaque machine sur le réseau et pour surveiller les sites web auxquels les utilisateurs du réseau accèdent.

Install Sarg Squid Log Analyzer in Linux

Dans cet article, je vous guiderai sur la manière d’installer et de configurer SARGGénérateur de rapports d’analyse Squid sur les systèmes RHEL/CentOS/Fedora et Debian/Ubuntu/Linux Mint.

Installer Sarg – Analyseur de journaux Squid sous Linux

I assume that you already installed, configured and tested Squid server as a transparent proxy and DNS for the name resolution in caching mode. If not, please install and configure them first before moving further installation of Sarg.

Important: Veuillez vous rappeler qu’il est inutile d’installer SARG sur le système sans la configuration de Squid et de DNS. Il ne fonctionnera pas du tout. Il est donc demandé de les installer d’abord avant de procéder à l’installation de Sarg.

Suivez ces guides pour installer DNS et Squid sur vos systèmes Linux :

Installer un serveur DNS en cache
  1. Installer un serveur DNS en cache uniquement dans RHEL/CentOS 7
  2. Installer le serveur DNS Cache Only sur RHEL/CentOS 6
  3. Installer le serveur DNS Cache Only sur Ubuntu et Debian
Installer Squid en tant que proxy transparent
  1. Configuration du proxy transparent Squid sous Ubuntu et Debian
  2. Installer le serveur de cache Squid sur RHEL et CentOS

Étape 1 : Installation de Sarg à partir de la source

Le paquet ‘sarg‘ n’est pas inclus par défaut dans les distributions basées sur RedHat, donc nous devons le compiler et l’installer manuellement à partir de l’archive source. Pour cela, nous avons besoin de quelques paquets prérequis supplémentaires à installer sur le système avant de le compiler à partir de la source.

Sous RedHat/CentOS/Fedora
# yum install –y gcc gd gd-devel make perl-GD wget httpd

Une fois que vous avez installé tous les paquets requis, téléchargez la dernière archive source de Sarg ou vous pouvez utiliser la commande wget suivante pour le télécharger et l’installer comme indiqué ci-dessous.

# wget http://liquidtelecom.dl.sourceforge.net/project/sarg/sarg/sarg-2.3.10/sarg-2.3.10.tar.gz
# tar -xvzf sarg-2.3.10.tar.gz
# cd sarg-2.3.10
# ./configure
# make
# make install
Sous Debian/Ubuntu/Linux Mint

Sur les distributions basées sur Debian, le paquet sarg peut être facilement installé depuis les dépôts par défaut en utilisant le gestionnaire de paquets apt-get.

$ sudo apt-get install sarg

Étape 2: Configuration de Sarg

Il est maintenant temps de modifier certains paramètres dans le fichier de configuration principal de SARG. Le fichier contient de nombreuses options à modifier, mais nous ne modifierons que les paramètres requis tels que:

  1. Chemin des journaux d’accès
  2. Répertoire de sortie
  3. Format de date
  4. Écraser le rapport pour la même date.

Ouvrez le fichier sarg.conf avec votre éditeur de choix et apportez les modifications comme indiqué ci-dessous.

# vi /usr/local/etc/sarg.conf        [On RedHat based systems]
$ sudo nano /etc/sarg/sarg.conf        [On Debian based systems]

Décommentez maintenant et ajoutez le chemin d’accès original à votre fichier de journal d’accès squid.

# sarg.conf
#
# TAG:  access_log file
#       Where is the access.log file
#       sarg -l file
#
access_log /var/log/squid/access.log

Ensuite, ajoutez le bon chemin du répertoire de sortie pour enregistrer les rapports squid générés dans ce répertoire. Veuillez noter que sous les distributions basées sur Debian, le répertoire racine du serveur web Apache est ‘/var/www‘. Veillez donc à ajouter correctement les chemins racine du serveur web sous vos distributions Linux.

# TAG:  output_dir
#       The reports will be saved in that directory
#       sarg -o dir
#
output_dir /var/www/html/squid-reports

Définissez le format de date correct pour les rapports. Par exemple, ‘format_date e‘ affichera les rapports au format ‘jj/mm/aa‘.

# TAG:  date_format
#       Date format in reports: e (European=dd/mm/yy), u (American=mm/dd/yy), w (Weekly=yy.ww)
#
date_format e

Ensuite, décommentez et définissez Écraser le rapport sur ‘Oui’.

# TAG: overwrite_report yes|no
#      yes - if report date already exist then will be overwritten.
#       no - if report date already exist then will be renamed to filename.n, filename.n+1
#
overwrite_report yes

C’est tout ! Enregistrez et fermez le fichier.

Étape 3: Génération du rapport Sarg

Une fois la partie configuration terminée, il est temps de générer le rapport de journal squid en utilisant la commande suivante.

# sarg -x        [On RedHat based systems]
# sudo sarg -x        [On Debian based systems]
Sortie d’exemple
[root@localhost squid]# sarg -x

SARG: Init
SARG: Loading configuration from /usr/local/etc/sarg.conf
SARG: Deleting temporary directory "/tmp/sarg"
SARG: Parameters:
SARG:           Hostname or IP address (-a) =
SARG:                    Useragent log (-b) =
SARG:                     Exclude file (-c) =
SARG:                  Date from-until (-d) =
SARG:    Email address to send reports (-e) =
SARG:                      Config file (-f) = /usr/local/etc/sarg.conf
SARG:                      Date format (-g) = USA (mm/dd/yyyy)
SARG:                        IP report (-i) = No
SARG:             Keep temporary files (-k) = No
SARG:                        Input log (-l) = /var/log/squid/access.log
SARG:               Resolve IP Address (-n) = No
SARG:                       Output dir (-o) = /var/www/html/squid-reports/
SARG: Use Ip Address instead of userid (-p) = No
SARG:                    Accessed site (-s) =
SARG:                             Time (-t) =
SARG:                             User (-u) =
SARG:                    Temporary dir (-w) = /tmp/sarg
SARG:                   Debug messages (-x) = Yes
SARG:                 Process messages (-z) = No
SARG:  Previous reports to keep (--lastlog) = 0
SARG:
SARG: sarg version: 2.3.7 May-30-2013
SARG: Reading access log file: /var/log/squid/access.log
SARG: Records in file: 355859, reading: 100.00%
SARG:    Records read: 355859, written: 355859, excluded: 0
SARG: Squid log format
SARG: Period: 2014 Jan 21
SARG: Sorting log /tmp/sarg/172_16_16_55.user_unsort
......

Note: La commande ‘sarg -x’ lira le fichier de configuration ‘sarg.conf‘ et prendra le chemin du fichier ‘access.log‘ de squid pour générer un rapport au format html.

Étape 4: Évaluation du rapport Sarg

Les rapports générés sont placés sous ‘/var/www/html/squid-reports/‘ ou ‘/var/www/squid-reports/‘ qui peuvent être consultés depuis le navigateur en utilisant l’adresse.

http://localhost/squid-reports
OR
http://ip-address/squid-reports
Fenêtre Principale de Sarg
Sarg Main Window
Date Spécifique
Date Wise Report
Rapport Utilisateur
User Bandwidth Report
Sites les Plus Consultés
Top Accessed Sites
Sites et Utilisateurs Principaux
Top Accessed Sites and Users
Téléchargements Principaux
Top Downloads
Accès Refusés
Denied Access Sites
Échecs d’Authentification
Proxy Authentication Failures

Étape 5: Génération Automatique du Rapport Sarg

Pour automatiser le processus de génération du rapport sarg dans un laps de temps donné via des jobs cron. Par exemple, supposons que vous vouliez générer des rapports de manière horaire automatiquement, pour ce faire, vous devez configurer un job Cron.

# crontab -e

Ensuite, ajoutez la ligne suivante en bas du fichier. Enregistrez et fermez-le.

* */1 * * * /usr/local/bin/sarg -x

La règle Cron ci-dessus générera un rapport SARG toutes les 1 heure.

Liens de Référence

Page d’Accueil de Sarg;

C’est tout avec SARG ! Je vais publier quelques articles plus intéressants sur Linux, d’ici là, restez à l’écoute sur TecMint.com et n’oubliez pas d’ajouter vos précieux commentaires.

Source:
https://www.tecmint.com/sarg-squid-analysis-report-generator-and-internet-bandwidth-monitoring-tool/