SARG è un tool open source che consente di analizzare i file di registro di Squid e genera bei report in formato HTML con informazioni sugli utenti, gli indirizzi IP, i siti più visitati, l’utilizzo totale della larghezza di banda, il tempo trascorso, i download, i siti Web a cui è stato negato l’accesso, i report giornalieri, settimanali e mensili.
Il SARG è uno strumento molto utile per vedere quanto la larghezza di banda Internet è utilizzata dalle singole macchine sulla rete e può monitorare quali siti Web stanno accedendo gli utenti della rete.

In questo articolo ti guiderò su come installare e configurare SARG – Squid Analysis Report Generator su sistemi RHEL/CentOS/Fedora e Debian/Ubuntu/Linux Mint.
Installazione di Sarg – Analizzatore di log di Squid 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.
Importante: Si prega di ricordare che senza l’impostazione di Squid e DNS, non è utile installare sarg sul sistema, non funzionerà affatto. Quindi, si prega di installarli prima di procedere con l’installazione di Sarg.
Segui queste guide per installare DNS e Squid nei tuoi sistemi Linux:
Installa Server DNS solo cache
- Installa Server DNS solo cache in RHEL/CentOS 7
- Installare il server DSN solo cache in RHEL/CentOS 6
- Installare il server DSN solo cache in Ubuntu e Debian
Installare Squid come proxy trasparente
- Configurare Squid come proxy trasparente in Ubuntu e Debian
- Installare il server cache Squid su RHEL e CentOS
Passo 1: Installare Sarg da sorgente
Il pacchetto ‘sarg‘ di default non è incluso nelle distribuzioni basate su RedHat, quindi è necessario compilare e installarlo manualmente dal tarball di origine. Per fare ciò, è necessario installare alcuni pacchetti pre-requisiti aggiuntivi sul sistema prima di compilarlo da sorgente.
Su RedHat/CentOS/Fedora
# yum install –y gcc gd gd-devel make perl-GD wget httpd
Una volta installati tutti i pacchetti richiesti, scaricare l’ultimo tarball di origine di sarg oppure è possibile utilizzare il seguente comando wget per scaricarlo e installarlo come mostrato di seguito.
# 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
Su Debian/Ubuntu/Linux Mint
Sulle distribuzioni basate su Debian, il pacchetto sarg può essere facilmente installato dai repository predefiniti utilizzando il gestore di pacchetti apt-get.
$ sudo apt-get install sarg
Passo 2: Configurare Sarg
È ora di modificare alcuni parametri nel file di configurazione principale di SARG. Il file contiene molte opzioni da modificare, ma modificheremo solo i parametri richiesti come:
- Percorso dei log di accesso
- Directory di output
- Formato data
- Sovrascrivi il report per la stessa data.
Aprire il file sarg.conf con l’editor di vostra scelta e apportare le modifiche come mostrato di seguito.
# vi /usr/local/etc/sarg.conf [On RedHat based systems]
$ sudo nano /etc/sarg/sarg.conf [On Debian based systems]
Ora decommentare e aggiungere il percorso originale del vostro file di log di accesso squid.
# sarg.conf # # TAG: access_log file # Where is the access.log file # sarg -l file # access_log /var/log/squid/access.log
In seguito, aggiungere il percorso corretto della directory di output per salvare i report squid generati in quella directory. Si noti che, nelle distribuzioni basate su Debian, la directory radice web di Apache è ‘/var/www‘. Quindi, fare attenzione nell’aggiungere i percorsi corretti della radice web nelle vostre distribuzioni Linux.
# TAG: output_dir # The reports will be saved in that directory # sarg -o dir # output_dir /var/www/html/squid-reports
Impostare il formato data corretto per i report. Ad esempio, ‘date_format e‘ visualizzerà i report nel formato ‘dd/mm/yy‘.
# TAG: date_format # Date format in reports: e (European=dd/mm/yy), u (American=mm/dd/yy), w (Weekly=yy.ww) # date_format e
Successivamente, decommentare e impostare Sovrascrivi report su ‘Sì’.
# 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
È tutto! Salvare e chiudere il file.
Passo 3: Generare il report Sarg
Una volta completata la parte di configurazione, è ora di generare il report del log squid utilizzando il seguente comando.
# sarg -x [On RedHat based systems]
# sudo sarg -x [On Debian based systems]
Output di esempio
[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 ......
Nota: Il comando ‘sarg -x’ leggerà il file di configurazione ‘sarg.conf‘ e prenderà il percorso del file di registro di squid ‘access.log‘ e genererà un rapporto in formato html.
Passo 4: Valutazione del Rapporto Sarg
I rapporti generati vengono posizionati sotto ‘/var/www/html/squid-reports/‘ o ‘/var/www/squid-reports/‘ ai quali si può accedere dal browser web utilizzando l’indirizzo.
http://localhost/squid-reports OR http://ip-address/squid-reports
Finestra Principale di Sarg

Data Specifica

Rapporto Utente

Siti Più Visitati

Siti e Utenti Principali

Download Principali

Accesso Negato

Autenticazione Fallita

Passo 5: Generazione Automatica del Rapporto Sarg
Per automatizzare il processo di generazione del rapporto sarg in un determinato intervallo di tempo tramite compiti cron. Ad esempio, supponiamo che si vogliano generare rapporti su base oraria automaticamente, per farlo è necessario configurare un compito Cron.
# crontab -e
Successivamente, aggiungere la seguente riga in fondo al file. Salvare e chiudere.
* */1 * * * /usr/local/bin/sarg -x
La regola Cron sopra genererà il rapporto SARG ogni 1 ora.
Link di Riferimento
E questo è tutto con SARG! Presto pubblicherò altri articoli interessanti su Linux, nel frattempo rimanete sintonizzati su TecMint.com e non dimenticate di aggiungere i vostri preziosi commenti.
Source:
https://www.tecmint.com/sarg-squid-analysis-report-generator-and-internet-bandwidth-monitoring-tool/