Zu viele Zugriffe über eine IP - was tun?
-
- Posts: 34
- Joined: 2002-11-21 23:23
- Location: Solingen
Zu viele Zugriffe über eine IP - was tun?
Hallo!
Heute hat es meinen Exklusiv Server von 1&1 erwischt: Weil innerhalb von zwei Minuten rund 400 Zugriffe von ein und derselben IP kam, war die Kiste platt und 1&1 hat sie nach zwei Stunden scheinbar neu gestartet. Begründung von der Hotline: Die Load war zu hoch, so dass der Server nicht mehr auf Pings reagierte. Also ist ein Techniker hingefahren und hat ihn neu gestartet.
Meine Frage an die Experten: Die IP-Adresse habe ich und ich habe auch schon den Provider dieser IP angemailt. Mir geht es jetzt eher um die Frage, ob ich mich irgendwie davor schützen kann, dass ein solcher Fehler erneut passiert.
Danke
Sebastian
Heute hat es meinen Exklusiv Server von 1&1 erwischt: Weil innerhalb von zwei Minuten rund 400 Zugriffe von ein und derselben IP kam, war die Kiste platt und 1&1 hat sie nach zwei Stunden scheinbar neu gestartet. Begründung von der Hotline: Die Load war zu hoch, so dass der Server nicht mehr auf Pings reagierte. Also ist ein Techniker hingefahren und hat ihn neu gestartet.
Meine Frage an die Experten: Die IP-Adresse habe ich und ich habe auch schon den Provider dieser IP angemailt. Mir geht es jetzt eher um die Frage, ob ich mich irgendwie davor schützen kann, dass ein solcher Fehler erneut passiert.
Danke
Sebastian
-
- Posts: 37
- Joined: 2002-08-20 18:34
- Location: Hamburg
Re: Zu viele Zugriffe über eine IP - was tun?
Du kannst gar nichts dagegen machen, da du einen Exclusive Server hast...
In diesem Fall müsste / muss 1und1 zuständig sein!
In diesem Fall müsste / muss 1und1 zuständig sein!
-
- Posts: 1117
- Joined: 2002-09-27 00:54
- Location: Hannover
Re: Zu viele Zugriffe über eine IP - was tun?
Der Load zu hoch, dass ein Linux Rechner nicht mehr auf Ping reagiert??
Eigendlich antwortet der Kernel sogar noch, wenn man ihm den Prozessor klaut
Na mal im Ernst. Auf ein Ping sollte ein Linux Server immer antworten (Ausser der Kernel hat sich mit einem Panic weggehängt)
Eigendlich antwortet der Kernel sogar noch, wenn man ihm den Prozessor klaut
-
- Posts: 93
- Joined: 2002-10-03 16:45
Re: Zu viele Zugriffe über eine IP - was tun?
... oder wenn die Load zu hoch ist ;-). Nimm einfach an, dass der Server mit der Anzahl der auszuliefernden dynamisch generierten Webseiten nicht nachkommt.
Je länger das "Gehämmere" andauert, desto "schlimmer" wird das Problem werden. Bis irgendwann gar nichts mehr geht. Sprich: Der Server hat keinen Speicher mehr, Swap ist dicht und irgendwann ist dann eben Ende.
Tritt zwar außer bei provozierter Nicht-Erreichbarkeit wohl so gut wie ausschließlich nur bei extrem "populären" (oder geDDoSten) Seiten ein, aber es kommt vor.
Schreibe doch einfach ein Skript, das pro Minute 1000-2000 Kinder macht, die jeweils eine (unpassend) große dynamisch generierte Seite (inklusive exorbitant umfangreicher SQL-Abfrage) abrufen und lasse das ganze auf einen Server los, auf dem PHP nicht als Modul läuft und der auch prinzipiell keine Sicherheitsvorkehrungen betreffs des maximal in Anspruch genommenen Speichers hat.
Und dann stell' dir zusätzlich einfach noch vor, dass das tatsächlich eingesetzte Skript noch viel mehr Speicher frisst.
Je länger das "Gehämmere" andauert, desto "schlimmer" wird das Problem werden. Bis irgendwann gar nichts mehr geht. Sprich: Der Server hat keinen Speicher mehr, Swap ist dicht und irgendwann ist dann eben Ende.
Tritt zwar außer bei provozierter Nicht-Erreichbarkeit wohl so gut wie ausschließlich nur bei extrem "populären" (oder geDDoSten) Seiten ein, aber es kommt vor.
Schreibe doch einfach ein Skript, das pro Minute 1000-2000 Kinder macht, die jeweils eine (unpassend) große dynamisch generierte Seite (inklusive exorbitant umfangreicher SQL-Abfrage) abrufen und lasse das ganze auf einen Server los, auf dem PHP nicht als Modul läuft und der auch prinzipiell keine Sicherheitsvorkehrungen betreffs des maximal in Anspruch genommenen Speichers hat.
Und dann stell' dir zusätzlich einfach noch vor, dass das tatsächlich eingesetzte Skript noch viel mehr Speicher frisst.
-
- Posts: 1117
- Joined: 2002-09-27 00:54
- Location: Hannover
Re: Zu viele Zugriffe über eine IP - was tun?
Dann ist aber der Ram + Swap zu Ende und die Kiste hat sich weggehängt. Ein Linux Rechner, der "nur" durch zu hohen Load nicht mehr per Ping erreichbar ist halte ich für unwahrscheinlich. Die Antwort für ein Ping kommt vom Kernel selber.
-
- Posts: 3840
- Joined: 2003-01-21 01:59
- Location: Sinsheim/Karlsruhe
Re: Zu viele Zugriffe über eine IP - was tun?
Fuer einen Echo Reply benoetigt man RAM und Swap?Dann ist aber der Ram + Swap zu Ende und die Kiste hat sich weggehängt.
Die hohe Load betrifft auch den Kernel selber.Die Antwort für ein Ping kommt vom Kernel selber.
-
- Userprojekt
- Posts: 7066
- Joined: 2002-10-09 14:30
- Location: Dorsten
Re: Zu viele Zugriffe über eine IP - was tun?
Streng genommen ja. ;)Fuer einen Echo Reply benoetigt man RAM und Swap?)
Woher auch sonst? ;)Die Antwort für ein Ping kommt vom Kernel selber.
Mal ernsthaft (aus meinen Erfahrungen heraus): Normalerweise wird eine Linux-Kiste grundsätzlich fast immer auf "ping" antworten (bis auf ein paar losses vielleicht), da ICMP aber ein weniger wichtiges Subsystem ist, muss dem nicht so sein.
Ich für meinen Teil würde daher auch die Lasttheorie mehr oder weniger vergessen. Find dich damit ab, und lass dem Verursacher dafür auf die Finger klopfen.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
-
- Posts: 86
- Joined: 2004-04-04 17:23
Re: Zu viele Zugriffe über eine IP - was tun?
ja man kann sich davor schützen - zumindest glaube ich, dass mod_dosevasive da etwas machen kann. google mal danach. Ich habe es auf meinem server installiert.
-
- Posts: 84
- Joined: 2005-03-19 17:22
Re: Zu viele Zugriffe über eine IP - was tun?
Kann mir bitte wer erklären, wie man eine Linux-Kiste dazu bringt, sich durch Last aufzuhängen?
Ich habe auf meinem alt erwürdigen Laptop (500MHz, 128MB RAM, Kernel 2.6.11) alle möglichen Varianten dieses Programms ausprobiert:
Mit dem Resultat, dass entweder ein paar Prozesse abgeschossen wurden, oder/und dass die Maschine etwas träge wurde. Aber die Pings sind (von ein paar Ausreissern abgesehn) nie wirklich über 0.5ms gekommen. Das einzige, was mir da noch einfällt ist eine fork()-Bomb artige Situation, aber ein Apache ist doch so konfiguriert, dass er das nicht macht, oder? Also wie geht das!?
Was noch dazu kommt: der OP redet von 400 Zugriffen in 2min, das sind 3.3 Zugriffe pro Sekunde. Das sollte ja sogar ein 486 bringen... Sehr dubios das ganze.
Ich habe auf meinem alt erwürdigen Laptop (500MHz, 128MB RAM, Kernel 2.6.11) alle möglichen Varianten dieses Programms ausprobiert:
Code: Select all
#include <sys/types.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#define PAGESIZE 4096
#define NUMPAGES 5120 /* 20 MB */
static void mem()
{
int *mem = malloc(NUMPAGES * PAGESIZE);
int dummy = 0;
int pos = 0;
/* 8 Prozesse * 20 MB = 160 MB */
fork();
fork();
fork();
/* touch every page */
for(;;) {
mem[pos * PAGESIZE / sizeof(int)] = dummy;
dummy += mem[pos * PAGESIZE / sizeof(int) + 1];
if(++pos >= NUMPAGES)
pos = 0;
}
}
static void cpu()
{
int a=1, b=1;
fork();
fork();
fork();
for(;;) {
int tmp = a;
a = b;
b += tmp;
}
}
#define FILESIZE 10485760 /* 10 MB */
#define BLOCKS 10
static void file()
{
pid_t pid;
char mem[FILESIZE / BLOCKS];
int fd;
int i;
fork();
fork();
fork();
pid = getpid();
sprintf(mem, "file_%d", pid);
fd = open(mem, O_CREAT | O_RDWR, 0755);
for(;;) {
lseek(fd, 0, SEEK_SET);
for(i = 0; i < BLOCKS; i++) {
write(fd, mem, FILESIZE / BLOCKS);
}
lseek(fd, 0, SEEK_SET);
for(i = 0; i < BLOCKS; i++) {
read(fd, mem, FILESIZE / BLOCKS);
}
}
}
int main()
{
if(fork()) file();
if(fork()) cpu();
mem();
/* Can't happen */
return 0;
}
Was noch dazu kommt: der OP redet von 400 Zugriffen in 2min, das sind 3.3 Zugriffe pro Sekunde. Das sollte ja sogar ein 486 bringen... Sehr dubios das ganze.
-
- Posts: 307
- Joined: 2002-08-08 23:45
Hotlineaussagen
8) Keine Panik. Ich würde einfach mal die Aussage der Hotline nicht für bare Münze nehmen. Wer tut das schon? :P Da bleibt immer ein "Interpretationsspielraum". Wenn der Server überlastet war, ging wohl an der Shell nix mehr. Dann hilft nur noch ein Magic-SysRq-Key oder ein Reset (*aua*).Alexander Newald wrote:Der Load zu hoch, dass ein Linux Rechner nicht mehr auf Ping reagiert??
Eigendlich antwortet der Kernel sogar noch, wenn man ihm den Prozessor klautNa mal im Ernst. Auf ein Ping sollte ein Linux Server immer antworten (Ausser der Kernel hat sich mit einem Panic weggehängt)
-
- Posts: 307
- Joined: 2002-08-08 23:45
Re: Zu viele Zugriffe über eine IP - was tun?
:roll: auch wenn so ein managed Server offtopic ist ... :?: welche Art von Zugriffen waren das? Nur HTTP? Dann hilft doch ein "Deny from ..." in einer .htaccess-Datei, selbst auf einem managed Server.sbrinkmann wrote:Heute hat es meinen Exklusiv Server von 1&1 erwischt: Weil innerhalb von zwei Minuten rund 400 Zugriffe von ein und derselben IP kam, war die Kiste platt und 1&1 hat sie nach zwei Stunden scheinbar neu gestartet. [...]
Mir geht es jetzt eher um die Frage, ob ich mich irgendwie davor schützen kann, dass ein solcher Fehler erneut passiert.
Allerdings erwartet man bei einem managed Server gewisse Schutzmechanismen, die es bei der Standardinstallation eines "Root-Servers" nicht gibt.