Traffic: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
K (Skript 1 gefixt und erklärt)
Zeile 1: Zeile 1:
==Traffic==
Als Traffic bezeichnet man Datenverkehr zwischen zwei Computersystemen.
Als Traffic bezeichnet man Datenverkehr zwischen zwei Computersystemen.


Dies beinhaltet [[Logging#HTTP-Traffic|Web]], [[Logging#Mail-Traffic|Mail]] und [[Logging#FTP-Traffic|FTP]] Verbindungen.
Dies beinhaltet [[Logging#HTTP-Traffic|Web]], [[Logging#Mail-Traffic|Mail]] und [[Logging#FTP-Traffic|FTP]] Verbindungen.
==Traffic Ursachen erkennen==
Als erstes einfach mal den Log ansehen und durchscrollen.
  less ~/var/web.log
  less ~/var/web.log-yesterday
Da kann man oft schon alleine durch Ansehen gleichförmige Strukturen erkennen, z.B. massenhafte Login-Versuche auf einen Wordpress Blog, die sehr viel Traffic generieren.
==Webzugriffe analysieren==


{{Baustelle}}
{{Baustelle}}


===Traffic Ursachen erkennen===
Diese Idee von Michael Hierweck: Wie bekomme ich heraus, welche Web-Zugriffe für mein Traffic-Volumen
 
Wie bekomme ich heraus, welche Web-Zugriffe für mein Traffic-Volumen
maßgeblich verantwortlich sind?
maßgeblich verantwortlich sind?


<pre><nowiki>
<pre><nowiki>
cat var/web.log |cut -d ' ' -f11 |sort -n |uniq -c |sed -e's/^ *//' \
cat var/web.log |cut -d ' ' -f11 | grep -v - | sort -n |uniq -c |sed -e's/^ *//' \
|while read FACTOR SUM; do
|while read FACTOR SUM; do
echo "$((${FACTOR} * ${SUM})) ${FACTOR} ${SUM}";
echo "$((${FACTOR} * ${SUM})) ${FACTOR} ${SUM}";
Zeile 23: Zeile 31:
* Zeile 5: sortieren
* Zeile 5: sortieren


(Bemerkung: das Produkt aus Einzelvolumen und Häufigkeit der Zugriffe
Dieser Skript gibt den Traffic aus, den gleichförmige Einzelzugriffe generieren, die größten Brocken stehen unten. Z.B.:
ist entscheidend.)
 
<pre><nowiki>
219558 6 36593
232288 14 16592
239998 22 10909
270812 2 135406
304520 5 60904
318248 14 22732
559062 14 39933
602760 20 30138
711496 8 88937
2325929 101 23029
2351668 29 81092
</nowiki></pre>
 
Ganz unten sieht man, dass 29 Zugriffe mit je 81092 Bytes zusammen 2351668 Bytes Traffic gekostet haben.


=== Wie bekomme ich IPs mit massenhaften Web-Zugriffen erkannt und gesperrt? ===
== Wie bekomme ich IPs mit massenhaften Web-Zugriffen erkannt und gesperrt? ==


Als Paketadmin alle IPs mit 10.000 und mehr Web-Zugriffen aus dem
Als Paketadmin alle IPs mit 10.000 und mehr Web-Zugriffen aus dem

Version vom 7. Dezember 2017, 09:08 Uhr

Als Traffic bezeichnet man Datenverkehr zwischen zwei Computersystemen.

Dies beinhaltet Web, Mail und FTP Verbindungen.

Traffic Ursachen erkennen

Als erstes einfach mal den Log ansehen und durchscrollen.

 less ~/var/web.log
 less ~/var/web.log-yesterday

Da kann man oft schon alleine durch Ansehen gleichförmige Strukturen erkennen, z.B. massenhafte Login-Versuche auf einen Wordpress Blog, die sehr viel Traffic generieren.

Webzugriffe analysieren

Diese Seite muss überarbeitet werden

Diese Seite wurde als Baustelle gekennzeichnet, weil sie überarbeitet werden muss. Eine Begründung dafür findest du auf der Diskussionsseite. Bitte hilf mit, diese Seite zu verbessern!

Diese Idee von Michael Hierweck: Wie bekomme ich heraus, welche Web-Zugriffe für mein Traffic-Volumen maßgeblich verantwortlich sind?

cat var/web.log |cut -d ' ' -f11 | grep -v - | sort -n |uniq -c |sed -e's/^ *//' \
	|while read FACTOR SUM; do
		echo "$((${FACTOR} * ${SUM})) ${FACTOR} ${SUM}";
	done |sort -n
  • Zeile 1: Traffic aus dem Log extrahieren, sortieren, zählen.
  • Zeile 2: über die Einträge wandern
  • Zeile 3: Product aus Zugriffen und Einzelvolumen berechnen
  • Zeile 4: Ausgabe von Produkt, Zugriffen und Einzelvolume je Zugriff
  • Zeile 5: sortieren

Dieser Skript gibt den Traffic aus, den gleichförmige Einzelzugriffe generieren, die größten Brocken stehen unten. Z.B.:

219558 6 36593
232288 14 16592
239998 22 10909
270812 2 135406
304520 5 60904
318248 14 22732
559062 14 39933
602760 20 30138
711496 8 88937
2325929 101 23029
2351668 29 81092

Ganz unten sieht man, dass 29 Zugriffe mit je 81092 Bytes zusammen 2351668 Bytes Traffic gekostet haben.

Wie bekomme ich IPs mit massenhaften Web-Zugriffen erkannt und gesperrt?

Als Paketadmin alle IPs mit 10.000 und mehr Web-Zugriffen aus dem heutigen Log filtern und dafür Sperreinträge erzeugen, die man in die .htaccess kopieren kann:

cat ${HOME}/var/web.log |cut -d ' ' -f2 |sort |uniq -c \
	|sed -e's/^ *//' |egrep '^[0-9]{5,} .*$' |cut -d ' '  -f 2 \
	|xargs -n1 -r -I XXX "echo deny from XXX"
  • Zeile 1: Log auswerten und IPs extrahieren und zählen
  • Zeile 2: Filtern
  • Zeile 3: Einträge erzeugen

Es bietet sich in beiden Fällen an, im Logfile mit grep nach den IPs oder dem Vorkommen des Traffics mit grep zu suchen, um weitere Erkenntnisse zu erlangen.