[fli4l] Port Weiterleitung

Christoph Schulz fli4l at kristov.de
Mo Feb 17 20:55:15 CET 2014


F-up2: spline.fli4l.dev

Hallo!

Lutz Spindler schrieb:

> Hallo Sebastian,
> 
>>> ich habe fli4l 3.9.0-rev28270

Dann gehört diese Diskussion eher nach s.f.dev ;-).

>>> wenn ich zum Beispiel den Port 4567 nutze,
>>> versuche ich den Port mit
>>> PF_PREROUTING_1='any:4567 REDIRECT:21'
>>> Intern auf den Port 21 weiter zu leiten
>>> mache ich da etwas falsch??

Ja. REDIRECT verlässt nie den Router, d.h. es ist eine _lokale_ Umleitung. 
Was du möchtest, ist Portweiterleitung zu einem _anderen_ Host -- das ist 
DNAT:

PF_PREROUTING_1='prot:tcp any:4567 DNAT:@myftphost:4567'

"myftphost" ersetzt du natürlich durch den Hostnamen deines FTP-Servers. Hat 
dieser in deiner fli4l-Konfiguration keinen HOST_x_...-Eintrag, dann musst 
du die "rohe" IPv4-Adresse nehmen.

>>> der Port 4567 ist mit
>>> PF_INPUT_7='4567 ACCEPT'

Das brauchst du nicht, denn die INPUT-Kette ist nur für eingehende 
Verbindungen gedacht, die sich mit dem _Router selbst_ verbinden. Da dein 
FTP-Server aber woanders läuft, wird diese Regel nie genutzt.

Lies dir bitte möglichst noch einmal die Beschreibung des Linux-Paketfilters 
durch. Wenn dort etwas unklar ausgedrückt sein sollte, wollen wir dies 
natürlich verbessern. Aber der Unterschied zwischen INPUT, FORWARD, 
PREROUTING, POSTROUTING und OUTPUT sowie zwischen DNAT und REDIRECT sollte 
schon verstanden sein ;-)

> ja das mit dem "Contracthelper" geht aber nur bei port 21
> PF_PREROUTING_CT_1='tmpl:ftp if:IP_NET_2_DEV:any HELPER:ftp'

Nein, das ist nicht richtig. Die Conntrack-Helper wurden ja gerade deshalb 
eingeführt, weil man sie flexibel verwenden kann. Was du möchtest ist:

PF_PREROUTING_CT_1='prot:tcp if:IP_NET_2_DEV:any any:4567 HELPER:ftp'

analog zur PF_PREROUTING_1-Regel. (Warum du hier allerdings einen if:-Match 
nutzt und in der PF_PREROUTING_1-Regel nicht, weiß ich nicht -- das sollte 
sich möglichst 1:1 gleichen.)


Viele Grüße,
-- 
Christoph Schulz
[fli4l-Team]



Mehr Informationen über die Mailingliste Fli4L