SARG - Squid Analysis Report Generator und Tool zur Überwachung der Internetbandbreite
SARG ist ein Open-Source-Tool, mit dem Sie die Squid-Protokolldateien analysieren und schöne Berichte im HTML-Format mit Informationen über Benutzer, IP-Adressen, am häufigsten aufgerufene Websites, die gesamte Bandbreitennutzung, die verstrichene Zeit, Downloads, Websites mit verweigertem Zugriff, tägliche Berichte, wöchentliche Berichte und monatliche Berichte erstellen.
Die SARG ist ein sehr praktisches Tool, um zu sehen, wie viel Internetbandbreite von einzelnen Rechnern im Netzwerk genutzt wird, und um zu beobachten, auf welche Websites die Benutzer des Netzwerks zugreifen.
In diesem Artikel zeige ich Ihnen, wie Sie SARG – Squid Analysis Report Generator auf RHEL/CentOS/Fedora- und Debian/Ubuntu/Linux Mint-Systemen installieren und konfigurieren.
Installation von Sarg – Squid Log Analyzer unter Linux
Ich gehe davon aus, dass Sie bereits den Squid-Server als transparenten Proxy und DNS für die Namensauflösung im Caching-Modus installiert, konfiguriert und getestet haben. Wenn nicht, installieren und konfigurieren Sie sie bitte zuerst, bevor Sie mit der weiteren Installation von Sarg fortfahren.
Wichtig: Bitte denken Sie daran, dass ohne das Squid- und DNS-Setup die Installation von Sarg auf dem System überhaupt nicht funktioniert. Es handelt sich also um eine Aufforderung, sie zuerst zu installieren, bevor Sie mit der Sarg-Installation fortfahren.
Befolgen Sie diese Anleitungen, um DNS und Squid auf Ihren Linux-Systemen zu installieren:
Nur-Cache-DNS-Server installieren
- Installieren des DSN-Servers nur mit Cache in RHEL/CentOS 7
- Installieren des DSN-Servers nur mit Cache in RHEL/CentOS 6
- Installieren Sie den DSN-Server nur mit Cache in Ubuntu und Debian
Installieren von Squid als transparenter Proxy
- Einrichten des transparenten Squid-Proxys in Ubuntu und Debian
- Installieren von Squid Cache Server auf RHEL und CentOS
Schritt 1: Sarg aus dem Quellcode installieren
Das 'sarg'-Paket ist standardmäßig nicht in RedHat-basierten Distributionen enthalten, daher müssen wir es manuell aus dem Quell-Tarball kompilieren und installieren. Dazu benötigen wir einige zusätzliche erforderliche Pakete, die auf dem System installiert werden müssen, bevor wir es aus dem Quellcode kompilieren.
Auf RedHat/CentOS/Fedora
# yum install –y gcc gd gd-devel make perl-GD wget httpdNachdem Sie alle erforderlichen Pakete installiert haben, laden Sie den neuesten Sarg-Quell-Tarball herunter oder verwenden Sie den folgenden wget-Befehl, um ihn herunterzuladen und zu installieren, wie unten gezeigt.
# 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 installUnter Debian/Ubuntu/Linux Mint
Auf Debian-basierten Distributionen kann das sarg-Paket einfach aus den Standard-Repositories mit dem apt-get Paketmanager installiert werden.
$ sudo apt-get install sargSchritt 2: Sarg konfigurieren
Jetzt ist es an der Zeit, einige Parameter in der SARG-Hauptkonfigurationsdatei zu bearbeiten. Die Datei enthält viele Optionen zum Bearbeiten, aber wir werden nur die erforderlichen Parameter bearbeiten, wie zum Beispiel:
- Pfad für Zugriffsprotokolle
- Ausgabe-Verzeichnis
- Datumsformat
- Bericht für das gleiche Datum überschreiben.
Öffnen Sie die Datei sarg.conf mit einem Editor Ihrer Wahl und nehmen Sie die Änderungen wie unten gezeigt vor.
# vi /usr/local/etc/sarg.conf [On RedHat based systems]$ sudo nano /etc/sarg/sarg.conf [On Debian based systems]Heben Sie nun die Auskommentierung auf und fügen Sie den ursprünglichen Pfad zu Ihrer Squid-Zugriffsprotokolldatei hinzu.
# sarg.conf
#
TAG: access_log file
Where is the access.log file
sarg -l file
#
access_log /var/log/squid/access.logFügen Sie als Nächstes den korrekten Ausgabeverzeichnispfad hinzu, um die generierten Tintenfischberichte in diesem Verzeichnis zu speichern. Bitte beachten Sie, dass unter Debian-basierten Distributionen das Apache-Web-Root-Verzeichnis '/var/www' ist. Seien Sie also bitte vorsichtig, wenn Sie die richtigen 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-reportsLegen Sie das richtige Datumsformat für Berichte fest. Beispiel: "date_format e" zeigt Berichte im Format "TT/MM/JJ" an.
# TAG: date_format
Date format in reports: e (European=dd/mm/yy), u (American=mm/dd/yy), w (Weekly=yy.ww)
#
date_format e
Heben Sie als Nächstes die Auskommentierung auf und setzen Sie Bericht überschreiben auf 'Ja'.
# 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 yesDas wars! Speichern und schließen Sie die Datei.
Schritt 3: Generieren des Sarg-Berichts
Nachdem Sie mit dem Konfigurationsteil fertig sind, ist es an der Zeit, den Squid-Protokollbericht mit dem folgenden Befehl zu generieren.
# sarg -x [On RedHat based systems]# sudo sarg -x [On Debian based systems]Beispiel-Ausgabe
[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 'access.log' von squid und generiert einen Bericht im HTML-Format.
Schritt 4: Bewertung des Sarg-Berichts
Die generierten Berichte, die unter '/var/www/html/squid-reports/' oder '/var/www/squid-reports/' abgelegt werden, auf die über den Webbrowser über die Adresse zugegriffen werden kann.
http://localhost/squid-reports
OR
http://ip-address/squid-reportsSarg Hauptfenster
Spezifisches Datum
Anwenderbericht
Am häufigsten aufgerufene Websites
Top-Websites und Benutzer
Top Downloads
Verweigerter Zugriff
Fehler bei der Authentifizierung
Schritt 5: Automatisches Generieren des Sarg-Berichts
Um den Prozess der Erstellung eines Sarg-Berichts in einer bestimmten Zeitspanne über Cron-Jobs zu automatisieren. Nehmen wir zum Beispiel an, dass Sie Berichte stündlich automatisch generieren möchten, um dies zu tun, müssen Sie einen Cron-Job konfigurieren.
# crontab -eFügen Sie als Nächstes die folgende Zeile am Ende der Datei hinzu. Speichern und schließen Sie es.
* */1 * * * /usr/local/bin/sarg -xDie obige Cron-Regel generiert alle 1 Stunde einen SARG-Bericht.
Verweise
Sarg-Homepage
Das war's mit SARG! Ich werde noch einige interessante Artikel über Linux schreiben, bis dahin bleiben Sie dran an TecMint.com und vergessen Sie nicht, Ihre wertvollen Kommentare hinzuzufügen.








