Avatar billede offerlam Nybegynder
05. november 2007 - 11:30 Der er 3 kommentarer

IPTABLES forståelse for script

Hejsa Eksperter, var lidt i tvivl hvor jeg skulle poste det her spørgsmål det her virker som at værer stedet, troede ellers det måske skulle være udner sikkerhed/firewall...but on to the question...

neden for har jeg postet et script og jeg har næsten fundet ud af hvad det gør, det eneste der forvirrer mig er det han laver med:

iptables -N valid-src
iptables -N valid-dst

det virker som om han opretter two objekter som senere an indeholde pakker. Jeg bygger det på følegende:

iptables -A INPUT  -i $EXTERNAL_INT -j valid-src
iptables -A FORWARD -i $EXTERNAL_INT -j valid-src
iptables -A OUTPUT  -o $EXTERNAL_INT -j valid-dst
iptables -A FORWARD -o $EXTERNAL_INT -j valid-dst

jeg er lidt forvirret over hvad der sker her men det virker somom han assosiere pakker fra diverse interfaces til objekterne som vi instancerede før, altså valid-src og valid-dst men igen jeg er ikke sikker. Jeg kom til den konklution fordi den sidste del af scriptet skriver han somom valid-dst og valid-src burde indeholde noget...

kan nogen hjælpe mig?!?!?!

-----------------------skript i sin helhed---------------------

#---------------------------------------------------------------
# Initialize our user-defined chains
#---------------------------------------------------------------

iptables -N valid-src
iptables -N valid-dst

#---------------------------------------------------------------
# Verify valid source and destination addresses for all packets
#---------------------------------------------------------------

iptables -A INPUT  -i $EXTERNAL_INT -j valid-src
iptables -A FORWARD -i $EXTERNAL_INT -j valid-src
iptables -A OUTPUT  -o $EXTERNAL_INT -j valid-dst
iptables -A FORWARD -o $EXTERNAL_INT -j valid-dst

#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#
#
# Source and Destination Address Sanity Checks
#
# Drop packets from networks covered in RFC 1918 (private nets)
# Drop packets from external interface IP
#
#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#

iptables -A valid-src -s $10.0.0.0/8    -j DROP
iptables -A valid-src -s $172.16.0.0/12  -j DROP
iptables -A valid-src -s $192.168.0.0/16 -j DROP
iptables -A valid-src -s $224.0.0.0/4    -j DROP
iptables -A valid-src -s $240.0.0.0/5    -j DROP
iptables -A valid-src -s $127.0.0.0/8    -j DROP
iptables -A valid-src -s 0.0.0.0/8      -j DROP
iptables -A valid-src -d 255.255.255.255 -j DROP
iptables -A valid-src -s 169.254.0.0/16  -j DROP
iptables -A valid-src -s $EXTERNAL_IP    -j DROP
iptables -A valid-dst -d $224.0.0.0/4    -j DROP
Avatar billede langbein Nybegynder
09. november 2007 - 18:04 #1
Jo, dette er en måte å designe Linux firewall på.

Man kan (men man behøver ikke) å deklarere sine egne "rule stacks" eller "chains".

iptables -N valid-src
iptables -N valid-dst

Disse to over deklarerer 2 nye chains valid-src og valid-dst

iptables -A valid-src -s $10.0.0.0/8    -j DROP
iptables -A valid-src -s $172.16.0.0/12  -j DROP
iptables -A valid-src -s $192.168.0.0/16 -j DROP
iptables -A valid-src -s $224.0.0.0/4    -j DROP
iptables -A valid-src -s $240.0.0.0/5    -j DROP
iptables -A valid-src -s $127.0.0.0/8    -j DROP
iptables -A valid-src -s 0.0.0.0/8      -j DROP
iptables -A valid-src -d 255.255.255.255 -j DROP
iptables -A valid-src -s 169.254.0.0/16  -j DROP
iptables -A valid-src -s $EXTERNAL_IP    -j DROP
iptables -A valid-dst -d $224.0.0.0/4    -j DROP

Disse reglene over plasseres in i de to chains valid-src og valid-dst

Hensikten med disse reglene ser ut til å være å forhindre såkalt "ipspoofing".

Hva nettoresultatet bli er ikke godt å si ettersom den resterende del av firewall ikke er der. Den delen som er postet over kan ikke gjøre særlig mye annet enn å forhindre ipspoofing.

En grunn til å velge denne måten å konfigurere på er at man kan få mer kompakte script. Det blir hevdet at det også vil gi en mer effektiv firewall med større troughput. Det skal være usagt om det stemmer, men for en ADSL oppkopling så spiller dette neppe noen rolle.

Rent personlig så foretrekker jeg å ikke benytte denne måten å konfigurere på, men smak og behag ..

Min kjepphest og fikse ide er om lag som følger: Så enkelt og overskuelig som mulig og er det mulig å få en linje til å gjøre den samme jobb som 50 eller 100 andre linjer, da velger man den ene linjen.
Avatar billede langbein Nybegynder
09. november 2007 - 18:12 #2
iptables -N valid-src -> deklarerer den nye chain valid-src

iptables -A INPUT  -i $EXTERNAL_INT -j valid-src -> For alle pakker som kommer inn gjennom input chain gjennom -i input $EXTERNAL_INT, for eksempel eth0, jump, hopp over til chain/kjeden valid-src

iptables -A valid-src -s $10.0.0.0/8    -j DROP -> For chain valid-src, -A, append, dvs legg til nederst i rule stack en regel som sier at alle pakker som har avsender ip satt til nettverket 10.0.0.0/8, dropp disse (Her er det en skrivefeil. Når man opgir ip på denne måten så skal det ikke stå er dollartegn forran. Dollartegnet brukes kun ved anvendelse av symbolske variabler.)
Avatar billede offerlam Nybegynder
10. november 2007 - 14:42 #3
Han laver to chains valid-src og valid-dst og overføre alt fra INPUT chain på fx eth0 over den en af de nye chains...

men hvorfor bruger han så ikke bare den INPUT chain fra start af? hvorfor lave en helt ny chain nå man allerede har en man kan bruge? det samme gælder jo for de to andre faste chains FORWARD og OUTPUT
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