Filtrování webu pomocí proxy serveru Squid, včetně statistiky (Sarg) – 2.část

Home / Uncategorized / Filtrování webu pomocí proxy serveru Squid, včetně statistiky (Sarg) – 2.část

V předchozím díle jsme si zkonfigurovali Squida, dnes budeme pokračovat webovými statistikami pomocí programu Sarg (Squid Analysis Report Generator).

Nainstalujeme si Sarg a webový server Apache, jelikož Sarg generuje reporty ve formátu html:

 
"aptitude install sarg apache2"

 

V adresáři "/etc/squid/" se nám vytvořil konfigurační soubor sarg.conf + další konf. soubory. Nebudu rozepisovat podrobně všechna nastavení, ale jen to nejdůležitější.

Nejdůležitější volby ze sarg.conf:

———- 

output_dir /var/www/squid-reports/

resolve_ip yes

#output_email root@localhost 

———-

  1. výsledný adresář který použijeme pro html reporty, pokud neexistuje, vytvoříme ho
  2. překládáme ip adresy na jména, užitečné pokud používáme DynDNS
  3. pokud odkomentujeme 3 volbu, nebude se generovat html report do námi zvoleného adresáře, ale výsledek bude zaslán na určenou emailovou adresu, bohužel se jedná o jednoduchý mail, takže z toho nic moc nevyčteme

Ostatní volby si projdeme, popř. nastavíme podle svého gusta.

Od přístího dne se nám automaticky začnou vytvářet každý den reporty na stránce http://jmeno_serveru/squid-reports a nebo budou zasílány mailem. Pokud bychom chtěli ručně vytvořit report za určité časové období, můžeme to udělat takto: 

"sarg -l /var/log/squid/access.log.X -n -d dd/mm/yyyy-dd/mm/yyyy". Více "man sarg".

 

Skripty pro týdenní a měsíční statistiky: 

Pokud Vám nestačí jen denní statistiky, můžeme si dopsat jednoduché skripty na týdenní a měsíční statistiku a nechat je spouštět v cronu. Dále je nutné upravit rotování logů Squida na měsíční ("/etc/logrotate.d/squid") na měsíční (monthly) a to dva měsíce pozpátku (rotate 2), ale pozor na místo na disku (respektive ve "/var/log/" a "/var/www/").  

Postup:

  1. vytvoříme si v adresáři "/var/www/squid-reports" adresáře "daily", "weekly", "monthly"
  2. vytvoříme si následující skripty v "/usr/local/sbin/" a nastavíme jim práva ("chmod 755")
  3. upravíme si crontab, aby nám spouštěl námi vytvořené skripty

  

Skripty: 

sarg-daily.sh

———-

#!/bin/bash

#Get current date
TODAY=$(date +%d/%m/%Y)

sarg -l /var/log/squid/access.log -o /var/www/squid-reports/daily -n -d $TODAY-$TODAY

———-

 

sarg-weekly.sh

———- 

#!/bin/bash

#Get current date
TODAY=$(date +%d/%m/%Y)

#Get one week ago today
WEEKAGO=$(date –date "1 week ago" +%d/%m/%Y)

sarg -l /var/log/squid/access.log -o /var/www/squid-reports/weekly -n -d $WEEKAGO-$TODAY

———- 

 

sarg-monthly.sh

———-

#!/bin/bash

#Get current date
TODAY=$(date +%d/%m/%Y)

#Get one month ago today
MONTHAGO=$(date –date "1 month ago" +%d/%m/%Y)

sarg -l /var/log/squid/access.log.1 -o /var/www/squid-reports/monthly -n -d $MONTHAGO-$TODAY

———-

 

přídáme do "/etc/crontab":

———-

# Statistiky pristupu na web SARG (denni, tydenni, mesicni)
00 23 * * * root sarg-daily.sh
10 23 * * 7 root sarg-weekly.sh
30 02 1 * * root sarg-monthly.sh

———- 

 

Popsal jsem jen nejzákladnější nastavení, lze např. definovat uživatele, které nechceme zahrnout do statistiky, nastavovat jaká data se mají objevit ve statistice atd…

 

Odkazy:

http://www.squid-cache.org/ 

http://sarg.sourceforge.net/sarg.php 

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *