offline
- Fil
- Legendarni građanin
- Pridružio: 11 Jun 2009
- Poruke: 16586
|
Ko koristi Squid proxy server, evo još jednog pogodnog načina da se parsira njegov access.log u dnevne, mesečne, godišnje i druge izveštaje; prethodnog puta je opisana alatka sarg, u kombinaciji sa Squidom, a ovoga puta će biti objašnjena instalacija i upotreba softvera Lightsquid.
Potrebno:
a) instalacija, standardno, iz softverskih repozitorijuma (Synaptic, npr.):
- Perl
- http server (Apache, lighthttpd), ja sam koristio apache2 iz repozitorija
- Squid3
- Cron
b) Iako se Lightsquid može naći u standarnim repozitorijumima, preuzećemo ovu aplikaciju ručno sa:
http://lightsquid.sourceforge.net/
Platforma je Xubuntu 14.04
Instalacija i konfiguracija Lightsquida:
- Preuzetu arhivu raspakovati na lokaciju: /var/www/html/lightsquid
Citat:cd /var/www/html/
mkdir lightsquid
cd lightsquid
tar -xzf lightsquid.tgz
- Sve .cgi i .pl skripte treba učiniti izvršivim:
Citat:chmod +x *.cgi
chmod +x *.pl
- Unutar lokacije /var/www/html/lightsquid naći lightsquid.cfg i prelistati parametre. Podrazumevano je:
a) da se Lightsquid instalira unutar: /var/www/html/ , kako smo i uradili, tako da ovde ne treba ništa menjati; ove vrednosti treba menjati ako je softver raspakovan u nestandardnu lokaciju.
b) da se koristi stara stabilna verzija Squida, tj. verzija 2.7 ; kako ovde koristimo noviju stabilnu verziju (verzija 3), neophodno je da to promenimo i postavimo, dakle, ovu nepodrazumevanu vrednost za njegov access.log koji se parsira: /var/log/squid3
(samo dodamo 3 na postojeću putanju, ako je squid instaliran na podrazumevano mesto, iz repozitorija, što je ovde slučaj).
Podešavanje apache2
Apačov konfiguracioni fajl se nalazi na sledećoj lokaciji:
/etc/apache2/apache2.conf
Na dno dokumenta treba dodati sledeći deo koda:
Citat:<Directory "/var/www/html/lightsquid/">
Options +ExecCgi
AddHandler cgi-script .cgi
AllowOverride All
</Directory>
Da bi apač prihvatio novu konfiguraciju, treba ga resetovati:
/etc/init.d/apache2 restart
Provera:
Unutar foldera /var/www/html/lightsquid/ se nalaze dve skripte koje treba pokrenuti:
a) sudo ./check-setup.pl, koja će javiti da li ima komponenti koje nedostaju i
Napomena: ako se javi greška: no: GD.PM found, please install or set $graphreport=0 to disable , to znači da je, ukoliko želimo da koristimo grafike, neophodno instalirati paket: libgd-gd2-perl (preko Synaptica, ili koristeći apt: sudo apt-get install libgd-gd2-perl). Nakon instalacije treba ponoviti komandu: sudo ./check-setup.pl.
Ako je sve dobro "ispodešavano" nakon provere će pisati poruka: all check passed, now try access to cgi part in browser.
b) sudo ./lightparser.pl, koja će izvršiti obradu access.loga; ako se ne jave nikakve greške, sve je ispravno (po defaultu, nakon uspešne radnje se ne prikazuju poruke)
c) proverite da li je moguće otvoriti rezultat sa:
127.0.1.1/lightsquid ili localhost/lightsquid
Ukoliko se prikaže sadržaj CGI datoteke umesto izveštaja (kao što se meni desilo), neophodno je instalirati dodatne CGI biblioteke i potom ukucati komandu:
sudo a2enmod cgi
Nakon ponovnog restartovanja apača: service apache2 restart
Izveštaj se normalno prikazao:
Ostalo je još da u crontabu definišemo učestalost upotrebe skripte za parsiranje: lightparser.pl.
Dakle, treba otvoriti /etc/crontab i zakazati izvršavanje; na primer, ova linija će izvršavati parser svaki dan u 23:50 :
50 23 * * * root /var/www/html/lightsquid/lightparser.pl
Uputstvo za Cron i Crontab je u ovom članku.
E sad, korisna stvar je da u izveštajima postoji informacija i o imenu i prezmenu osobe koja se vezuje za odgovarajuću IP adresu. To se menja unutar konfiguracione datoteke: realname.cfg. Sadržaj datoteke, dakle, odgovara uređenim parovima
192.168.#.# Ime1 Prezime1
192.168.#.# Ime2 Prezime2
192.168.#.# Ime3 Prezime3
192.168.#.# Ime4 Prezime4
Gde "#" simbolizuje cifre unutar IP adrese.
Kada završimo s uređivanjem datoteke, treba naznačiti u konfiguraciji lightsquid.cfg da će se koristiti imena u izveštaju, dakle promeniti parametre na sledeći način:
- $ip2name="list"
- $userealname=1
Da bi se slovasa kvačicama ispravno prikazala, treba promeniti charset na UTF-8 (podrazumevano je ASCII); dakle, unutar foldera: /var/www/html/lightsquid/lang/eng.lng
treba postaviti parametar da bude sledećeg oblika: MSG_CODEPAGE=UTF-8.
Na ovaj način će se u izveštaju pregledno prikazati i imena konkretnih osoba, bez "hijeroglifa".
Bonus
- Lokacija squid3: /usr/sbin //restertovanje: sudo /usr/sbin/squid3 restart
|