Hallo Liste und im speziellen die, die sich mit dem Paketfilter "netfilter"
auskennen,

seit einer gefühlten Ewigkeit warnt "nf_conntrack" ja, dass das automatische
Zuweisen von Helpern eingestellt wird :

[   17.681849] nf_conntrack: automatic helper assignment is deprecated and
it will be removed soon. Use the iptables CT target to attach helpers
instead.

Da aber alles weiter funktionierte, dauerte es also bis ich Kernel 4.7
einsetze, dass die bisherigen Regeln nicht mehr funktionierten. Zuerst war
da ein Client, der kein PPTP mehr konnte nun scheiterte ich an passivem FTP.
Eine Lösung, die das Problem bloß weiter hinausschiebt ist "echo 1 >
/proc/sys/netfilter/nf_conntrack_helper".

Nun will ich es richtig machen, habe es aber noch nicht wirklich gerafft:

- die Helper lesen im Datenstrom mit, ob Pakete zu einer Verbindung gehören
und können den Paketfilter so dynamisch öffnen (so machen sich am Beispiel
FTP ja Server und Client über den Steuerkanal TCP Port 21 einen Datenkanal
TCP Port >1024 dynamisch je Verbindung aus und darauf reagiert der Helper
und öffnet den Port)
- automatisches Laden der Helper und eine recht globale " -A FORWARD -m
conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT" Regel bedeutet nun, das
alle verfügbaren Helper zu Einsatz kommen können und im Beispiel FTP auch
auf einem gänzlich anderen Port als 21 stattfinden könnte
- dem wollen die Experten einen Riegel vorschieben und nötigen nun die
Admins da lieber konkreter mit dem CT Ziel zu arbeiten
= das ist zumindest, was ich glaube verstanden zu haben

- nun soll ich bestimmten Helpern einen Port zuweisen : "-A PREROUTING -t
raw -p tcp --dport 21 -j CT --helper ftp" ja?
= und nun, bleibt es bei meiner RELATED,ESTABLISHED Regel oder muss dort
auch der Helper ergänzt werden; und wenn es mehrere sein sollen?

Schauen wir uns mal ein bestehendes vereinfachtes Forwarding an :

-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 192.168.1.0/24 -i eth0 -o ppp0 -p tcp -m multiport --dports
20:21 -j ACCEPT
-A FORWARD -s 192.168.1.0/24 -i eth0 -o ppp0 -p tcp -m multiport --dports
1723 -j ACCEPT
-A FORWARD -s 192.168.1.0/24 -i eth0 -o ppp0 -p gre -j ACCEPT
-A FORWARD -j DROP
-t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE

Wie wird das nun korrekt auf die neue Art umgesetzt? So?

-t raw -A PREROUTING -p tcp -m multiport --dports 20:21 -j CT --helper ftp
-t raw -A PREROUTING -p tcp -m multiport --dports 1723 -j CT --helper pptp
-A FORWARD -m conntrack --ctstate ESTABLISHED -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED -m helper --helper ftp -p tcp -j
ACCEPT
-A FORWARD -s 192.168.1.0/24 -i eth0 -o ppp0 -p tcp -m multiport --dports
20:21 -j ACCEPT
-A FORWARD -s 192.168.1.0/24 -i eth0 -o ppp0 -p tcp -m multiport --dports
1723 -j ACCEPT
-A FORWARD -s 192.168.1.0/24 -i eth0 -o ppp0 -p gre -j ACCEPT
-A FORWARD -j DROP
-t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE



Mit freundlichen Grüßen / Kind regards
     Ronny Seffner
--
Ronny Seffner  |  Alter Viehweg 1  |  01665 Klipphausen
www.seffner.de  |  ro...@seffner.de  |  +49 35245 72950
7EA62E22D9CC4F0B74DCBCEA864623A568694DB8



Antwort per Email an