ipchains => eerst alles blokken, daarna doorlaten

Pagina: 1
Acties:

  • BitProcessor
  • Registratie: Februari 2001
  • Laatst online: 08-08 23:47
Mijn vraag over ipchains is dus :
Is het mogelijk om eerst een rule te maken die ALLES blokt, en daarna (eronder) rules aan te maken per ip, poort, bit :) die je wel binnen wil hebben ? Of pakt hij de eerste regel (deny) en stopt het daarmee ?

('t zou kunnen dat ik vandaag niet meer antwoord, maar morgenavond zeker :) )

"I think there is a world market for maybe five computers" - Thomas Watson, chairman of IBM, 1943


  • Mior
  • Registratie: Maart 2000
  • Laatst online: 15-08 00:58
# deny all but local loopback trafic
ipchains -A input -i ! lo -j DENY
ipchains -A output -i ! lo -j DENY
ipchains -A forward -j DENY

En daarna je allow rules.

  • BitProcessor
  • Registratie: Februari 2001
  • Laatst online: 08-08 23:47
Op dinsdag 26 juni 2001 13:52 schreef Phantom_ het volgende:
# deny all but local loopback trafic
ipchains -A input -i ! lo -j DENY
ipchains -A output -i ! lo -j DENY
ipchains -A forward -j DENY

En daarna je allow rules.
I take that as a yes ? ;)

"I think there is a world market for maybe five computers" - Thomas Watson, chairman of IBM, 1943


  • odysseus
  • Registratie: Augustus 2000
  • Laatst online: 13:09

odysseus

Debian GNU/Linux Sid

De manier van hierboven zal niet werken, lijkt me...hij neemt namelijk altijd de eerste rule die de waarde 'true' oplevert. Dat zou in het voorbeeld hierboven alles zijn wat bijvoorbeeld niet van localhost (=lo) vandaan komt. Wat je doet is het volgende:

/sbin/ipchains -P INPUT DROP
/sbin/ipchains -P OUTPUT DROP
/sbin/ipchains -P FORWARD DROP

-P betekent policy -> wat er default gebeurt dus. Hierbij is default het geval waarin geen enkele andere rule een ACCEPT of iets anders oplevert. Mocht je nog eigen tables hebben aangemaakt (naast de default INPUT, OUTPUT en FORWARD), dan kun je die op dezelfde manier dichtzetten.

En nog een tip: om nog enige bescherming te hebben tegen een (D)DoS te hebben kun je het best als target DROP geven, geen DENY. Bij DENY wordt er namelijk weer een pakketje teruggezonden met de DENY-mededeling, wat voor meer verkeer op je internetleiding zorgt: dit kan een groot probleem zijn bij een DoS-aanval of zelfs als je gewoon veel traffic naar je pc krijgt.

* odysseus neemt hier voor het gemak even aan dat ipchains ook -P als optie heeft...anders toch eens een 2.4-kernel gaan draaien.

Leven is het meervoud van lef | In order to make an apple pie from scratch, you must first create the universe.


Verwijderd

Veiligste is idd om eerst alles te blokkeren en daarna de allow regels te maken, je moet dan idd wel daarna een nieuwe blok regel aanmaken en de eerste blok regel verwijderen, zoals hierboven gezecht wordt, ipchains past de eerste regel die hij tegenkomt toe, als dat dan block alles is dan blockt hij alles, ook al staat er daarna een regel die ook van toepassing is op dat verkeer.
Mocht je nog eigen tables hebben aangemaakt (naast de default INPUT, OUTPUT en FORWARD), dan kun je die op dezelfde manier dichtzetten
Dit kan dus niet met ipchains, je kan daar alleen van de deafult rules (input, forward, output) de policy wijzigen, bij evt. zelf aangemaakte regels moet je een deny regel invoegen.

Verwijderd

wat denk je nou, hij gaat die regels van nr 1 tot nr x afwerken, en kijkt dan of het pakketje aan de normen voldoet die jij in die regel hebt gesteld en voert dan uit wat je acchter -j hebt gezet...
als je dan
ipchains -A input -S 0.0.0.0/0 -j DENY doet gaat alles dicht.
als je nou dit doet
ipchains -A input -S ip's die wel naart binnen mogen -j ACCEPT
ipchains -A input -S 0.0.0.0/0 -j DENY

dan werkt t wel beter :)

  • BitProcessor
  • Registratie: Februari 2001
  • Laatst online: 08-08 23:47
thx, all, morgen beetje mee experimenteren :)

"I think there is a world market for maybe five computers" - Thomas Watson, chairman of IBM, 1943

Pagina: 1