SARG – Squid-Analyse-Bericht-Generator und Internet-Bandbreitenüberwachungstool

SARG ist ein Open-Source-Tool, das es Ihnen ermöglicht, die Squid-Protokolldateien zu analysieren und schöne Berichte im HTML-Format mit Informationen über Benutzer, IP-Adressen, am häufigsten aufgerufene Websites, Gesamtdatenverkehr, vergangene Zeit, Downloads, Zugriff auf gesperrte Websites, tägliche Berichte, wöchentliche Berichte und monatliche Berichte zu generieren.

Das SARG ist ein sehr praktisches Werkzeug, um zu sehen, wie viel Internet-Bandbreite von einzelnen Maschinen im Netzwerk genutzt wird und um zu überwachen, auf welche Websites die Benutzer des Netzwerks zugreifen.

Install Sarg Squid Log Analyzer in Linux

In diesem Artikel werde ich Sie durch die Installation und Konfiguration von SARGSquid Analysis Report Generator auf RHEL/CentOS/Fedora und Debian/Ubuntu/Linux Mint Systemen führen.

Installation von Sarg – Squid Log Analyzer in 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.

Wichtig: Bitte denken Sie daran, dass ohne die Squid– und DNS-Konfiguration die Installation von Sarg auf dem System überhaupt nicht funktioniert. Es wird also dringend empfohlen, diese zuerst zu installieren, bevor Sie mit der Sarg-Installation fortfahren.

Befolgen Sie diese Anleitungen, um DNS und Squid in Ihren Linux-Systemen zu installieren:

Installieren Sie einen Cache-Only DNS-Server
  1. Installieren Sie einen Cache-Only DNS-Server in RHEL/CentOS 7
  2. Installieren Sie den Cache-Only-DNS-Server in RHEL/CentOS 6
  3. Installieren Sie den Cache-Only-DNS-Server in Ubuntu und Debian
Installieren Sie Squid als transparenten Proxy
  1. Einrichten eines transparenten Squid-Proxys in Ubuntu und Debian
  2. Installieren Sie den Squid-Cache-Server auf RHEL und CentOS

Schritt 1: Installation von Sarg aus der Quelle

Das Paket ‚sarg‚ ist standardmäßig nicht in auf RedHat basierenden Distributionen enthalten, daher müssen wir es manuell aus der Quell-Tarball kompilieren und installieren. Dafür müssen einige zusätzliche Voraussetzungspakete auf dem System installiert werden, bevor wir es aus der Quelle kompilieren können.

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

Nachdem Sie alle erforderlichen Pakete installiert haben, laden Sie den neuesten Sarg-Quell-Tarball herunter oder verwenden Sie den folgenden wget-Befehl, um ihn wie unten gezeigt herunterzuladen und zu installieren.

# 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
Auf Debian/Ubuntu/Linux Mint

Auf Debian-basierten Distributionen kann das Paket sarg einfach aus den Standard-Repositorys mithilfe des Paketmanagers apt-get installiert werden.

$ sudo apt-get install sarg

Schritt 2: Konfigurieren von Sarg

Jetzt ist es an der Zeit, einige Parameter in der Hauptkonfigurationsdatei von SARG zu bearbeiten. Die Datei enthält viele Optionen zum Bearbeiten, aber wir werden nur erforderliche Parameter wie folgt bearbeiten:

  1. Zugriffs-Log-Pfad
  2. Ausgabeverzeichnis
  3. Datumsformat
  4. Bericht für das gleiche Datum überschreiben.

Öffnen Sie die Datei sarg.conf mit Ihrem bevorzugten Editor und nehmen Sie die unten gezeigten Änderungen vor.

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

Entkommentieren und fügen Sie den ursprünglichen Pfad zu Ihrer Squid-Zugriffslogdatei hinzu.

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

Fügen Sie als Nächstes den korrekten Pfad zum Ausgabeverzeichnis hinzu, um die generierten Squid-Berichte in diesem Verzeichnis zu speichern. Bitte beachten Sie, dass unter Debian-basierten Distributionen das Verzeichnis des Apache-Web-Roots ‚/var/www‚ ist. Seien Sie also vorsichtig, wenn Sie korrekte Web-Root-Pfade unter Ihren Linux-Distributionen hinzufügen.

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

Legen Sie das korrekte Datumsformat für die Berichte fest. Zum Beispiel wird ‚date_format e‘ Berichte im Format ‚dd/mm/yy‚ anzeigen.

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

Entkommentieren Sie als Nächstes und setzen Sie das Überschreiben des Berichts auf ‚Ja‘Yes‘.

# 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

Das war’s! Speichern und schließen Sie die Datei.

Schritt 3: Generieren des Sarg-Berichts

Nachdem Sie den Konfigurationsteil abgeschlossen haben, ist es an der Zeit, den Squid-Log-Bericht mithilfe des folgenden Befehls zu generieren.

# sarg -x        [On RedHat based systems]
# sudo sarg -x        [On Debian based systems]
Beispielausgabe
[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
......

Hinweis: Der Befehl „sarg -x“ liest die Konfigurationsdatei „sarg.conf“ und nimmt den Pfad zur Squid-„access.log“ und generiert einen Bericht im HTML-Format.

Schritt 4: Bewertung des Sarg-Berichts

Die generierten Berichte werden unter „/var/www/html/squid-reports/“ oder „/var/www/squid-reports/“ abgelegt und können über den Webbrowser unter der entsprechenden Adresse aufgerufen werden.

http://localhost/squid-reports
OR
http://ip-address/squid-reports
Sarg-Hauptfenster
Sarg Main Window
Bestimmtes Datum
Date Wise Report
Benutzerbericht
User Bandwidth Report
Häufig besuchte Websites
Top Accessed Sites
Top-Websites und Benutzer
Top Accessed Sites and Users
Top-Downloads
Top Downloads
Verweigerter Zugriff
Denied Access Sites
Authentifizierungsfehler
Proxy Authentication Failures

Schritt 5: Automatische Generierung von Sarg-Berichten

Um den Prozess der automatischen Generierung von Sarg-Berichten in einem bestimmten Zeitraum über Cron-Jobs zu automatisieren. Angenommen, Sie möchten zum Beispiel Berichte im Stundentakt automatisch generieren, müssen Sie einen Cron-Job konfigurieren.

# crontab -e

Fügen Sie anschließend die folgende Zeile am Ende der Datei hinzu. Speichern und schließen Sie sie.

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

Die obige Cron-Regel generiert alle 1 Stunde einen SARG-Bericht.

Referenzlinks

Sarg-Homepage

Das war es mit SARG! Ich werde in Kürze weitere interessante Artikel über Linux veröffentlichen. Bleibt also dran auf TecMint.com und vergesst nicht, eure wertvollen Kommentare hinzuzufügen.

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