awstats anonymisieren

mare

Member
Mit folgenden Handgriffen kann man die Auswertung anonymisieren.
Die originalen Logfiles bleiben unverändert!

Download des Tools ipv6loganon von Peter Bieringer.
Code:
cd /tmp/
wget ftp://ftp.bieringer.de/pub/linux/IPv6/ipv6calc/ipv6calc-0.93.1.tar.gz
Damit werden die IPv4 Adressen auf /24 und die IPv6 auf /48 gekürzt.

Das Toolset einfach entpacken
Code:
tar xzf ipv6calc-0.93.1.tar.gz 
cd ipv6calc-0.93.1
mit
Code:
./autogen.sh
kompilieren und die Datei ipv6loganon/ipv6loganon ins
/usr/local/bin kopieren.

In der /usr/local/ispconfig/server/cron_daily.php

Zeile 354
- LogFile="/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log"
+ LogFile="/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log.anon"

und ab Zeile 396
Code:
if($awstats_pl != '' && $awstats_buildstaticpages_pl != '' && fileowner($awstats_pl) == 0 && fileowner($awstats_buildstaticpages_pl) == 0){
exec($command);
durch
Code:
if($awstats_pl != '' && $awstats_buildstaticpages_pl != '' && fileowner($awstats_pl) == 0 && fileowner($awstats_buildstaticpages_pl) == 0) {
{
exec('cat '.$logfile.' | /usr/local/bin/ipv6loganon -w /var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log.anon') ;
exec($command);
}
ersetzen.

Dann werden die Auswertung ab sofort anonymisiert.
Mit webalyzer ist das vorgehen identisch.

Bei Bedarf würde ich einen Patch erstellen, der auch eine Option im StatisktikTAB machen wo man das pro Web einstellen kann.
Man könnte sogar auswählen wie weit man die IPs anonymisieren will.
 
Zuletzt bearbeitet:

mare

Member
Hi,
@Till
Wenn das Zial klar ist, kann ich das machen.

Die Idee war gut, das Ergebnis aber nicht bedacht.
Wenn man alle IPs auf die /24 kürzt stimmt die Statistik nicht mehr da awstats ja nur die a.b.c.0 sieht :(

Was noch möglich wäre, wäre das awstats file nachträglich zu anonymisieren, was mit dem Tool auch ginge da die IP an erster Stelle steht.

Allerdings müßte das dann täglich gleich nach dem buildstats laufen. Aber auch hier werden ja die Counter verfälscht :confused:
 

florian030

Well-Known Member
Ich nehme zwar nicht AWStats, sondern u.a. Webalizer... Bei mir sind schon die Apache-Logs anonym (d.h. 1.2.3.4 statt 1.2.3.0) und die Statistiken stimmen dennoch.

Bist Du dir sicher, dass das Problem an AWStats liegt?
 

mare

Member
Hi,
Das ist interessant.

Ich habe das Logfile im Original sowie die anonymisierte Version durch awstats gejagt.
Original 20000 Besucher / Anonym 8000 Besucher .

Irgendwie auch nachvollziehbar wenn aus

213.1.1.12 -
213.1.1.45 -
231.1.1.198 -

dann

213.1.1.0 -
213.1.1.0 -
231.1.1.0 -

wird.
 

florian030

Well-Known Member
Ich habe das eben noch mal bei mir abgeglichen.... das sieht unter AWStats ähnlich aus. D.h. die "Sites" variieren, der Rest passt aber zu dem Full-Log.

Ich persönlich kann damit ganz gut leben. ;)

Wenn Du die erstellten Statistiken anpassen willst, musst Du ggf. aber auch den Hostnamen mit anpassen.

Aber etwas sinnvolleres als aus 1.2.3.4 1.2.3.0 zu machen, fällt mir beim besten Willen nicht ein.
 

nowayback

Well-Known Member
Hi,

sinnvollerweise sollten die Logs unangetastet bleiben und nur bei der Ausgabe auf der Seite die letzten Zahlen nach dem Punkt zu nem X werden oder sowas...


grüße
nwb
 

florian030

Well-Known Member
Naja, ich gönnen mir den Luxus von zwei Logs - einmal full und einmal anonym. Und wenn es nur um anonyme Statistiken geht, kann man Logs auch dazu kopieren.
 

mare

Member
Also die Unterschiede zwischen Full und Anon bekomme ich mit awstats nicht weg. Ich habe es jetzt so gemacht:

- Auswertung werten ganz normal erstellen
- im cron_daily.php cat awstats----.txt | ipv6loganon -w awstats---.anon.
- awstats.pl einmal unter /usr/lokal/bin/awstats.pl zum erstellen der DB.
- Das awstats für die Ausgabe unter /srv/www/cgi-bin/awstat.pl kopiert und so geändert, dass es auf die .anon zugreift.
- im build_static.pl den Pfad für die Erstellung der statischen HTMLs auf die zweite Instanz geändert.

Damit werden die Logs komplett geschrieben und die statische sowie dynamische Ausgabe der Logs ist anonymisiert.
 

Werbung

Top