Website-Suche

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 zu Benutzern, IP-Adressen, am häufigsten aufgerufenen Websites und Gesamtbandbreite erstellen können Nutzung, verstrichene Zeit, Downloads, Websites mit verweigertem Zugriff, Tagesberichte, Wochenberichte und Monatsberichte.

Das SARG ist ein sehr praktisches Tool, um anzuzeigen, wie viel Internetbandbreite von einzelnen Computern im Netzwerk genutzt wird, und um zu beobachten, auf welche Websites die Benutzer des Netzwerks zugreifen.

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

Installation von Sarg – Squid Log Analyzer unter Linux

Ich gehe davon aus, dass Sie den Squid-Server bereits 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 die Installation von Sarg auf dem System ohne das Squid- und DNS-Setup keinen Sinn macht wird überhaupt nicht funktionieren. Daher ist es eine Aufforderung, sie zuerst zu installieren, bevor mit der Installation von Sarg fortgefahren wird.

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

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

Schritt 1: Sarg von der Quelle installieren

Das Paket „sarg“ ist standardmäßig nicht in RedHat-basierten Distributionen enthalten, daher müssen wir es manuell aus dem Quell-Tarball kompilieren und installieren. Dazu müssen einige zusätzliche Voraussetzungspakete auf dem System installiert werden, bevor wir es aus dem Quellcode kompilieren.

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

Sobald 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 sarg-Paket einfach aus den Standard-Repositorys mit dem apt-get-Paketmanager installiert werden.

sudo apt-get install sarg

Schritt 2: Sarg konfigurieren

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

  1. Zugriffsprotokollpfad
  2. Ausgabe Verzeichnis
  3. Datumsformat
  4. Bericht für dasselbe Datum überschreiben.

Öffnen Sie die Datei sarg.conf mit dem 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]

Entfernen Sie nun das Kommentarzeichen 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.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 bei Debian-basierten Distributionen das Apache-Webstammverzeichnis „/var/www“ lautet. Seien Sie daher bitte vorsichtig, wenn Sie unter Ihren Linux-Distributionen korrekte Web-Root-Pfade 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 richtige Datumsformat für Berichte fest. Beispielsweise werden mit „Datumsformat e“ Berichte im Format ‘TT/MM/JJ“ angezeigt.

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

Entfernen Sie als Nächstes den Kommentar und setzen Sie den 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 yes

Das ist es! Speichern und schließen Sie die Datei.

Schritt 3: Sarg-Bericht erstellen

Sobald Sie mit dem Konfigurationsteil fertig sind, ist es an der Zeit, den Squid-Log-Bericht mit dem folgenden Befehl 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 übernimmt sie den Squid-Pfad „access.log“ und generiert einen Bericht im HTML-Format.

Schritt 4: Bewerten des Sarg-Berichts

Die generierten Berichte werden unter „/var/www/html/squid-reports/“ oder „/var/www/squid-reports/“ abgelegt, auf die über zugegriffen werden kann Webbrowser unter Verwendung der Adresse.

http://localhost/squid-reports
OR
http://ip-address/squid-reports
Sarg-Hauptfenster

Bestimmtes Datum

Benutzerbericht

Am häufigsten aufgerufene Websites

Top-Sites und Benutzer

Top-Downloads

Zugriff verweigert

Authentifizierungsfehler

Schritt 5: Automatische Generierung des Sarg-Berichts

Automatisierung des Prozesses der Generierung von sarg-Berichten in einem bestimmten Zeitraum über Cron-Jobs. Nehmen wir beispielsweise an, Sie möchten Berichte automatisch stündlich erstellen. Dazu müssen Sie einen Cron-Job konfigurieren.

crontab -e

Fügen Sie als Nächstes die folgende Zeile am Ende der Datei hinzu. Speichern und schließen Sie es.

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

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

Referenzlinks

Sarg-Homepage

Das ist alles mit SARG! Ich werde noch ein paar weitere interessante Artikel zu Linux verfassen, bis dahin bleiben Sie auf dem Laufenden bei TecMint.com und vergessen Sie nicht, Ihre wertvollen Kommentare hinzuzufügen.