Verständnisfrage: FTP-Proxy und "Final-Deny-Any"-Regel

Started by Charru, December 19, 2019, 11:19:04 AM

Previous topic - Next topic
Hallo zusammen!

Ich bin auf die gleiche Problematik gestoßen, wie der OP in diesem Beitrag: https://forum.opnsense.org/index.php?topic=4653.msg
Kurz zusammengefasst: FTP-Proxy nach besagter Anleitung hier aus dem Forum und eine "Final-Deny-Any"-Regel am Ende der LAN-Liste um ggf. Fehler zu suchen. Es geht um passives FTP.

Wenn ich die Regel drin lasse, werden im Log die von ihr geblockten FTP-Datenverbindungen auf den hohen Ports angezeigt. Wenn ich die "Final-Deny-Any"-Regel deaktiviere, dann funktioniert die Verbindung. Soweit ok.

Warum ist das so? Sollte, für die nicht explizit freigegebenen hohen Ports, nicht die Default-Deny-Regel greifen?
Woran erkennt Opnsense, das diese Verbindungen zum FTP gehören? Kann ich das ggf. irgendwo im Log sehen?

Vielen Dank!
Chris

Hi Chris,

die Antwort kommt jetzt vielleicht etwas spät.
Aber lieber spät als nie  :)

Der FTP-Proxy macht eigentlich nichts anderes als die Kommando Verbindung abzuhören und an das eigentliche Ziel weiterzuleiten.
Sieht er das PORT Kommando ändert er bei passivem FTP die IP Adresse und den Port und erstellt eine Filterregel, die diese Datenverbindung erlaubt. Dazu wurde im Regelwerk ein sogenannter Anker gesetzt. Sozusagen eine Art Platzhalter für diese Regeln. Dieser Anker wird am Ende des Regelwerks angehängt.

Es gibt eine Standardregel
block in inet from {any} to {any} label "Default deny rule"
doch bevor diese Regel angewendet wird werden alle anderen Regeln geprüft ob sie nicht besser passen.
Diese Benutzerregeln haben zusätzlich noch das Schlüsselwort quick enthalten welches die Firewall dazu veranlasst diese Regel sofort anzuwenden und nicht weiter zu prüfen. D.h. gibt es für ein Paket keine passende Benutzerregel wird der FTP-Proxy Anker und dann die Standardregel angewendet.
Wenn Du aber eine Deny-All Benutzer Regel erstellst wird die Firewall das Paket blocken noch bevor es zum FTP-Proxy Anker kommt.
Du kannst Dir das Regelwerk in der Datei /tmp/rules.debug anschauen.

Viele Grüße
Frank



Hi,

da das Thema erst vor kurzem beantwortet ist und ich nicht weiter komme...

ich möchte per Browser auf FTP Daten zugreifen.
Squid läuft für http/s und unter Weiterleistung habe ich den FTP Proxy aktiviert, auf Port 2121.

Eine NAT Regel welches alles vom LAN:21 auf 127.0.0.1:2121 weiterleitet ist eingerichtet (laut Livelog greift sie auch) , ebenso eine LAN Regel, welche FTP überall hin erlaubt.
Dennoch erreiche ich keine Ziele per FTP. Im Livelog ist nichts für mich ersichtlich.

Hallo lenny,

Squid und FTP funktioniert nicht.
Bitte verwende das FTP-Proxy HowTo.


Viele Grüße
Frank

Hi,

verrückt. Kaum macht mans richtig, funktionierts...
Dankeschön!!