So kann man sich beim Apache Webserver die aktuellen Access Logs anzeigen lassen
Der Apache Webserver ist ja eine feine Sache so lange dieser läuft und man nicht mit einem Angriff auf dem System zu kämpfen hat. Doch was macht man, wenn man sieht dass der Apache Dienst eine höhere Last aufweist oder viel mehr Anfragen getätigt werden als man dies gewohnt ist? Hier hilft oft nur sich die aktuellen Zugriffe im Access Log anzusehen! Wie man diese auf den unterschiedlichen Linux Plattformen (Debian, Red Hat, Fedora, Ubuntu, FreeBSD usw.) findet und welche Möglichkeiten es gibt diese zu betrachten möchte ich Euch hier kurz erklären!
Wo findet man das Access Log?
Hier gibt es je nach Distribution unterschiedliche Speicherorte:
RHEL – Red Hat – Fedora – CentOS
–> /var/log/httpd/access_log
Debian – Ubuntu
–> /var/log/apache2/access.log
FreeBSD
–> /var/log/httpd-access.log
Plesk
–> /var/www/vhosts/domain-xxx/statistics/logs/access_log
Sollte man an dieser Stelle kein Log finden, bzw. es nichts anzeigen, wird mit hoher Sicherheit ein zusätzliches Verwaltungstool wie z.B. Plesk eingesetzt. In diesem Fall empfehle ich Euch einfach nach dem Begriff “access” zu suchen. Dies könnt ihr mit folgendem Befehl tun:
find / | grep access
Hier werden nun zwar auch ein paar unsinnige Files aufgelistet – aber die Log-Files sollte man deutlich erkennen können
Wenn man sich nun die Zugriffe auf den Webserver live anzeigen lassen möchte, verwendet man am einfachsten folgenden Befehl:
tail -f -n 0 /var/log/apache2/access.log
Den Pfad müsst ihr natürlich auf Euer System abstimmen!
Möchte man nun die Analyse verfeinern und z.B. nach einer bestimmten IP filtern, kann der Befehl noch erweitert werden:
tail -f /var/log/apache2/access.log | grep “12\.12\.12\.12”
Möchte man nun z.B. eine bestimmte IP nicht in der Auflistung haben kann man den Befehl nochmals erweitern:
tail -f /var/log/apache2/access.log | grep -v “12\.12\.12\.12”
Auf die gleiche Art und Weise kann man auch auf Dateien oder Dateitypen filtern:
tail -f /var/log/apache2/access.log | grep .jpg
tail -f /var/log/apache2/access.log | grep text.txt
Möchte man das Log-File nach Bestimmten Dingen durchsuchen und diese dann auflisten lassen, hilft oft der “CAT” Befehl weiter:
cat /var/log/apache2/access.log | grep suchbefehl
Wer nun checken möchte ob gerade extrem hohe Zugriffe über eine IP statt finden – d.h. ob ein DoS Angriff läuft, kann ebenfalls auf den “grep” Befehl zurück greifen:
grep –color=none -o -iE ‚^[0-9.]+\s‘ /var/log/apache2/access.log | sort | uniq -c | sort -bg
Dieser gibt Euch die IP Adressen und die dazugehörige Anzahl der Zugriffe aus!
Hier sieht man z.B. dass die letzte IP Adresse viel mehr Zugriffe generiert als die restlichen IPs.
Daher sollte man in diesem Fall diese IP Adresse genauer untersuchen!
So, ich denke mit diesen Linux Befehlen sollte eine grobe Analyse des Systems möglich sein!
Tags:
- aktuell log centos
- motion apache2
- apache zugriffe ausgeben
- pi webserver statistik zugriffe
- apache zugriff logs