UNIX opgave Apache Access log
Der ønskes oversigter over hvem der anvender/misbruger adgangen til en Apache WEB-server. Log filen vi anvender under udvikling af opgaven er en lille kopi af den rigtige logfil og hedder /tmp/httpd-access.log
Rapporten skal ende med at indeholde
- En liste over de 50 mest anvendte IP adresser (Hvor mange gange IP adressen optræder i filen) - Sorteret med mest flittige IP adresser øverst. Så er rapporten nemmere at læse.
- Domænenavnet til IP adressen.
Eksempel på Rapport
HTTP Access rapport fra mars.tekkom.dk
======================================
Rapporten genereret: Fri Aug 28 07:09:13 CEST 2009
------------------------------------------------------------------------------------
Data opsamlet er fra perioden den 26 Aug 2009 22:21:13 til den 28 Aug 2009 06:40:07
------------------------------------------------------------------------------------
806 192.168.146.155 ()
508 87.56.15.130 (0x57380f82.vgnqu2.dynamic.dsl.tele.dk.)
306 77.212.13.52 (0x4dd40d34.adsl.cybercity.dk.)
301 195.181.54.128 (pixuv.eucmidt.dk.)
.......
At komme igang
Det drejer sig om at tænke projektet igennem og bryde det ned til mange små overskuelige opgaver. Se på rapportens oplysninger og arbejd med en lille del af gangen. Lav et kommentarområde i dit script hvor du skriver de fejl og mangler der er. Brug ikke for meget tid på at løse et lille problem. For eksempel fjernelse af mellemrum, karakterer i rapporten. Det kan man altid gøre senere.
interessante utilities
- dig DNS opslag. Her er flaget -x interessant da det laver reverse DNS opslag.
- Prøv evt dig -x 195.181.54.128 | grep PTR | grep -v -E '^;' | tr ' \t' ' '|cut -d' ' -f5
- sort - sortere linier
- uniq - finde ens linier efter hinanden. Se evt flaget -c
- head - Se første linier en fil fx. head -n 1 FILNAVN viser den første linie i en fil
- tail - Se sidste linier i en fil fx. tail -n 1 FILNAVN viser sidste linie i en fil
Hjælp hinanden
At programmere er meget nemmere hvis man arbejder sammen. Så skriv dine spørgsmål, forslag og ideer her i artiklen. Good Luck Henrik Thomsen Mail evt Henrik Thomsen