[Olug-list] Noen som kjører IPCop...

John L. Fjellstad john-olug@fjellstad.org
Tue, 7 Oct 2003 21:11:52 +0200


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Torbjørn,

Fant problemmet ditt. La meg gå gjennom din iptables, så kan du se hva som 
gikk galt.

I følge første meldingen prøvde å pinge fra 192.168.2.111 til 192.168.10.10. 
Ping bruker icmp protokollen.  192.168.2.111 er i eth0, 192.168.10.10 er i 
eth1.  Pakken vil gå fra INPUT til FORWARD til OUTPUT. I hvert tilfelle må 
den gå til ACCEPT for å komme seg videre til neste kjede.  Husk også at 
reglene begynner i begynnelsen og går nedover. Første regel som passer 
stopper pakken.

# Input kjeden:
# Chain INPUT (policy DROP 11 packets, 2543 bytes)
# target     prot opt in     out     source               destination
# blir sendt her til en ny kjede ipac~0
1 ipac~o       all  --  any    any     anywhere             anywhere    

# ipac~o kjeden:
# gjør ikke noe annet enn å telle antall pakker pr interface
# vi drar tilbake til INPUT kjeden siden vi ikke har truffet ACCEPT ennå 

# blir sendt til PSCAN kjeden hvis vi bruker tcp protokoll og 
# tcp flaggene FIN,SYN... osv er satt
# det har vi ikke, siden vi er icmp protokoll
2 PSCAN      tcp  --  any    any     anywhere             anywhere        tcp 
flags:FIN,SYN,RST,PSH,ACK,URG/FIN,SYN,RST,PSH,ACK,URG
# Igjen blir sendt til PSCAN hvis vi bruker tcp protoll med visse flagg
3 PSCAN      tcp  --  any    any     anywhere             anywhere        tcp 
flags:FIN,SYN,RST,PSH,ACK,URG/NONE
# denne regelen bregrenser hvor mye SYN, RST, ACK/SYN pakker
# vi kan få, vi begrenser til 10/sec
4               tcp  --  any    any     anywhere             anywhere       
 tcp flags:SYN,RST,ACK/SYN limit: avg 10/sec burst 5
# alle pakker blir sendt til CUSTOMINPUT kjeden
5  CUSTOMINPUT  all  --  any    any     anywhere             anywhere

# CUSTOMINPUT kjeden er helt tom
# drar tilbake til INPUT kjeden

# ACCEPT alle pakker som er allerede etablert eller er forbundet med en
# annen pakke (ftp trenger denne regelene)
6 ACCEPT     all  --  any    any     anywhere             anywhere        
state RELATED,ESTABLISHED
# ACCEPT alle pakker som kommer fra systemlokale nettverket (systemet er
# denne maskinen)
7 ACCEPT     all  --  lo       any     anywhere             anywhere
## ACCEPT alle icmp pakker. OK, så i INPUT kjeden kom vi videre  ##
8 ACCEPT     icmp --  any    any     anywhere           anywhere

# Jeg fortsetter litt for å forklare hva som skjer videre. Men vår ping
# har blitt akseptert og gått videre til FORWARD kjeden.

# ACCEPT alle pakker fra eth0 (green)
9 ACCEPT     all  --  eth0   any     anywhere             anywhere

# ACCEPT alle pakker fra ipsec+
10 ACCEPT     all  --  ipsec+ any     anywhere             anywhere

# send alle pakker til RED, reelt sett betyr alle pakker fra eth1 og eth2
11 RED        all  --  any    any     anywhere             anywhere

# vi tar en kikk på RED kjeden

# denne regelen er litt bizarre
# ifølge denne regelen tar du imot bootp images fra internett?
ACCEPT     tcp  --  eth2   any     anywhere             anywhere         tcp 
spt:bootps dpt:bootpc
ACCEPT     udp  --  eth2   any     anywhere             anywhere        udp 
spt:bootps dpt:bootpc

# igjen, ikke så mye som foregår.  Forskjellige typer iface blir akseptert
# Legg merke til at eth1 ikke ennå har blitt akseptert ffra noen regeler
# med unntak av icmp
ACCEPT     gre  --  eth2   any     anywhere             anywhere
ACCEPT     ipv6-crypt --  eth2   any     anywhere             anywhere
ACCEPT     ipv6-auth--  eth2   any     anywhere             anywhere
ACCEPT     udp  --  eth2   any     anywhere             anywhere        udp 
spt:isakmp dpt:isakmp
# drar tilbake til INPUT kjeden

# blir sendt til XTACCESS kjeden
12 XTACCESS   all  --  any    any     anywhere             anywhere

# alle pakker som blir sendt til 10.0.0.202 (vår maskin) fra internett til
# port auth blir akseptert
ACCEPT     tcp  --  eth2   any     anywhere             10.0.0.202             
tcp dpt:auth
# tilbake til INPUT kjeden

# logger litt
13 LOG        all  --  any    any     anywhere             anywhere          
limit: avg 10/min burst 5 LOG level warning prefix `INPUT '

# POLICY er DROP så resten av pakkene blir droppet. Det betyr
# at all trafikk fra orange (eth1) som ikke er icmp eller startet fra
# et annet sted blir droppet.


# OK,så vi tar en kikk på FORWARD kjeden
# igjen disse to kjedene, ipac~fi og ipac~fo, gjør ikke noe annet
# enn å telle hvor mange pakker som har gått igjennom systemet
ipac~fi    all  --  any    any     anywhere             anywhere
ipac~fo    all  --  any    any     anywhere             anywhere

# logging regler for tcp 
PSCAN      tcp  --  any    any     anywhere         anywhere   tcp 
flags:FIN,SYN,RST,PSH,ACK,URG/FIN,SYN,RST,PSH,ACK,URG
PSCAN      tcp  --  any    any     anywhere         anywhere   tcp 
flags:FIN,SYN,RST,PSH,ACK,URG/NONE

# vi blir sendt til CUSTOMFORWARD kjeden, som er tom
CUSTOMFORWARD  all  --  any    any     anywhere             anywhere

# alle pakker som allerede har blitt startet, fortsetter
ACCEPT     all  --  any    any     anywhere             anywhere  state 
RELATED,ESTABLISHED

# alle pakker fra eth0 (green) blir akseptert, vi har eth1 (orange) og eth2
# (red) igjen
ACCEPT     all  --  eth0   any     anywhere             anywhere

# pakker fra ipsec+ blir akseptert
ACCEPT     all  --  ipsec+ any     anywhere             anywhere

# pakker fra orange til ipsec+ blir droppet
DROP       all  --  eth1   ipsec+  anywhere             anywhere

# tcp og udp pakker fra orange og som ikke skal til green
# blir akseptert
ACCEPT     tcp  --  eth1   !eth0   anywhere             anywhere
ACCEPT     udp  --  eth1   !eth0   anywhere             anywhere

# vi blir sendt videre til PORTFWACCESS kjeden, som er tom
PORTFWACCESS  all  --  any    any     anywhere             anywhere

# alle pakker til green blir sendt til DMZHOLES kjeden, som er tom
DMZHOLES   all  --  any    eth0    anywhere             anywhere

# resten blir logged
LOG        all  --  any    any     anywhere             anywhere     limit: 
avg 10/min burst 5 LOG level warning prefix `OUTPUT '

# POLICY for FORWARD er å droppe alt annet. Har du lagt merket til
# annet ingen av reglene i FORWARD tar seg av icmp (ping) pakkene?
# Du har ikke engang regler for pakkene som kommer fra red (eth2)


# OUTPUT kjeden er ganske enkel fordi den bare sender pakker til
# ipac~i, som bare teller pakker.


Problemet ditt er i FORWARD kjeden.

John
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iEYEARECAAYFAj+DD/sACgkQkz0vhQtHHRj4MACfSmwXBKwBECsX4vXEcS0RWmPb
j6gAniFIBgoTNHqU/sEIl+iiGbMK+eed
=NuTO
-----END PGP SIGNATURE-----