Avatar billede secusr Nybegynder
23. april 2006 - 16:57 Der er 4 kommentarer og
1 løsning

DDOS forhindring med IPTables

Hej exp.

Vi har en Debian stable maskine kørende som web, ftp og mail server. Der er de seneste par dage blevet udført nogle ddos angreb imod maskinen (tror jeg).
Script timen på de scripts serveren udfører er stadigvæk meget lave (som de plejer) men svartiden på serveren bliver langsommere og langsommere for til sidst at ophøre.

Den er ikke oppe meget mere end nogle timer før den bliver lagt ned igen.

Den kører i forvejen IPTables hvor der er blokeret for alle porte pånær lige dem den skal bruge.

Jeg tror grundet overstående det er et DDOS angreb (er det forkert antaget).

Jeg vil i denne sammenhæng gerne tilføje nogle linier i mit IPTables script der kan forhindre dette.

Er det muligt (og optimalt) at gøre så IPTables lukker for trafaikken til en klient ipadresse hvis denne forespørge eller sender alt for meget data. Er det den optimale løsning eller hvordan ville i gøre det?

Jeg ser meget frem til at høre fra jer, da serveren efter disse angreb kommer med en kernel panic, og det er ikke muligt at få ssh forbindelse eller andet til den igen, og den står et sted hvor vi ikke har fysisk adgang til den. Vi er derfor afhængige at webhosting firmaet går ned og genstarter den manuelt.
Avatar billede langbein Nybegynder
25. april 2006 - 08:19 #1
Fant en beskrivele av prinsippene rundt rate limiting på nettet:


iptables -A INPUT -p ICMP -icmp-type echo-request  -m limit -limit 1/minute -limit-burst 5 -j ACCEPT

-limit 1/minute will do what it says; it will only match for a rate of incoming packets up to an average of 1 per minute. The operative word here is average. So, does this mean that the first ping request you get will be accepted, then none for a whole minute? Not quite.

-limit-burst 5 tells iptables to let 5 such packets in before permitting the rule to match; so, in one minute, we can have 5 ping requests popping through. So, -limit 1/minute permits a maximum of 1 packet per minute on average, but -limit-burst 5 permits 5 in one shot. Have we found a logical error in iptables? No you silly clod, remember, -limit stes a limit on average, whereas -limit-burst limits by number of packets in one go. What will happen then in our example?

Verdiene for rate og burst kan være litt tricky å sette opp riktig. Man må rett og slett sette opp så små (lille) verdier at trafikken stanser hurtig opp, og så må man bare justere opp slik at den godtar en passende rate/burst ut i fra testing i drift.

Dette ble litt hurtig pga dårlig tid .. vil eventuelt komme tilbake til saken dersom det ikke virker godt nok ..
Avatar billede secusr Nybegynder
25. april 2006 - 08:49 #2
Hej langbein.

Det ser jo lovende ud, selv om det nok kræver lidt tid at få det til at spille rigtigt, jeg fandt også det her, kan det ikke bruges evt. i sammenhæng med det du viser?

-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
-A PREROUTING -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP
Avatar billede langbein Nybegynder
25. april 2006 - 16:37 #3
Dette ser ut som et filter for spoofede (forfalskede) ip pakker. Hvorvidt det vil virke bra med å bruke filtret over ifbm ddos angrep, det tør jeg ikke si. Hvis man ønsker å filtrere på spoofede ip pakker, da bør man vel i all enkelhet hente koden eller syntaksen for dette fra ett eller annet velrenomert web sted (eller en bok.)

Ett eller annet sted her på eksperten så ligger det et script, der vi la litt arbeide i å finne fram til "riktige" verdier for et "burst" filter. Vil forsøke å finne det ..
Avatar billede langbein Nybegynder
25. april 2006 - 16:52 #4
Her fant jeg tråden der vi både laget filter for spoofede ip adresser og ddos angrep. Er i utgangspunktet et 3 port filter men dette kan jo modifiseres.

Jo, egentlig så er nok et filter for spoofede ip pakker en god ide i forbindelse med ddos angrep, forutsatt at det er riktig satt opp.

http://www.eksperten.dk/spm/541674
Avatar billede secusr Nybegynder
25. april 2006 - 19:06 #5
Det lader til det virkede Langbein, der har ikke været nogle problemer efter i hvert fald. Du får pointene.

Mange tak for hjælpen!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester