PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : iptables FORWARD scheitert wenn Ziel icmp verwirft



leo_80
08.11.13, 06:10
Hallo zusammen,

Ich habe ein konkretes Problem.

Der Server ist ein Debian 6.0.5, an dem Interface eth0 befindet sich das LAN.
Am interface eth1 ist das dsl Modem angeschlossen.

Das Problem ist, wenn am Ziehlserver das ICMP-Protkoll gedropt wird kommt keine Anwort.
Ist diese Maschine selbst der Client geht alles.

Ich schreibe mal die IPTABLES


iptables -A INPUT -i ppp0 -p icmp -j ACCEPT
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i ppp0 -p tcp -d 80.152.152.180 --dport 2222 -j ACCEPT
iptables -A INPUT -i ppp0 -p udp -d 80.152.152.180 --dport 2222 -j ACCEPT
iptables -A INPUT -i ppp0 -p tcp -d 80.152.152.180 --dport 25 -j ACCEPT
iptables -A INPUT -i ppp0 -p tcp -d 80.152.152.180 --dport 80 -j ACCEPT
iptables -A INPUT -i ppp0 -p tcp -d 80.152.152.180 --dport 443 -j ACCEPT
iptables -A INPUT -i ppp0 -p tcp -d 80.152.152.180 --dport 143 -j ACCEPT
iptables -A INPUT -i ppp0 -p tcp -d 80.152.152.180 --dport 993 -j ACCEPT
iptables -A INPUT -i ppp0 -p tcp -d 80.152.152.180 --dport 110 -j ACCEPT
iptables -A INPUT -i ppp0 -p tcp -d 80.152.152.180 --dport 995 -j ACCEPT
iptables -A INPUT -i ppp0 -j DROP

Liebe Grüsse
Felipe

blubbersuelze
29.11.13, 08:11
mmh ich verstehe die Frage nicht so ganz.

Zum ersten schreibst du was von eth1 ist die Außenanbindung .. hast in deinem Ruleset aber ppp0.
Zum anderen hast du nicht geschrieben wie die Policies für iptables gesetzt sind.
(ein iptables -L -n -v wäre da hilfreich um alles zu sehen)

Zum anderen bezweckt das Blocken von ICMP ja das keine Antwort auf ICMP-Requests (welcher Art auch immer) zurück kommen.

Beschreibe dein Problem bitte genauer, vlt. kann ich dir helfen.

mfg.
blubbersuelze :p

leo_80
29.11.13, 13:32
OK an dem Interface eth1 ist das ADSL Annex-B angeschlossen.
mit pppd wird dann die pppoe-Verbindung aufgebaut, die dann die Schnittstelle ppp0 erstellt.


eth0 Link encap:Ethernet HWaddr 00:50:45:5d:eb:5e
inet addr:10.0.0.1 Bcast:10.15.255.255 Mask:255.240.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:763729174 errors:0 dropped:0 overruns:0 frame:0
TX packets:261812149 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1014458757285 (944.7 GiB) TX bytes:139558971805 (129.9 GiB)
Interrupt:27

eth0:0 Link encap:Ethernet HWaddr 00:50:45:5d:eb:5e
inet addr:192.168.0.2 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:27

eth1 Link encap:Ethernet HWaddr 00:50:45:5d:eb:5f
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:23572416 errors:0 dropped:0 overruns:0 frame:0
TX packets:24903727 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:11286596756 (10.5 GiB) TX bytes:16877752957 (15.7 GiB)
Interrupt:27

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1923473 errors:0 dropped:0 overruns:0 frame:0
TX packets:1923473 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1676856852 (1.5 GiB) TX bytes:1676856852 (1.5 GiB)

ppp0 Link encap:Point-to-Point Protocol
inet addr:80.152.198.xxx P-t-P:217.0.117.221 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:215407 errors:0 dropped:0 overruns:0 frame:0
TX packets:201745 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:111370844 (106.2 MiB) TX bytes:44353907 (42.2 MiB)

Soweit ich das verstanden habe ist die MTU bei der pppoe-Verbindung geringer und dem Server im Internet wird dies mitgeteilt, sodas der die Packete anders sendet, wenn aber ICMP geblockt wird, wird das Packet verworfen.

Ich habe nun diese Webseite gefunden nach 10 Tagen suche im Internet.

http://www.tldp.org/HOWTO/IP-Masquerade-HOWTO/mtu-issues.html

Nach einfügen folgender iptables-Regel funktioniert alles korrekt


iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Das Problemm habe ich nun lössen können aber verstanden habe ich es noch nicht. Wenn mir es jemand erklären kann wäre schön danke.

Viele Grüsse Felipe