net(t)forum
net(t)work(s) - fli4l - eisfair

Startseite » fli4l » spline.fli4l.dev » Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr?
Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr? [Beitrag #69388] Fri, 08 February 2019 09:52 Zum nächsten Beitrag gehen
Harvey ist gerade offline  Harvey
Beiträge: 58
Registriert: July 2010
Member
Tag zusammen!

Ich bin gestern an dem Versuch gescheitert, einen fli4l 4.x aufzusetzen.
Meine Config scheint etwas 'speziell' zu sein...

Also: ich benutze OPT_OAC um meine Hardware-Zoo ( und meinen Sohn ;) )
bei zu extensiver Nutzung in die Grenzen zu weisen. ZB gibt es
Maschinen, die nur zu Update-Zwecken ins Internet dürfen usw. So weit,
so gewöhnlich.

Allerdings hat das OPT_OAC aus dem fli4l 3.10.x ein Problem mit
bestehenden Verbindungen. Diese werden nicht getrennt, wenn sie vor dem
Eintreten einer Bedingung aus OAC aufgebaut werden. Wenn man zB ein
Youtube-Video laufen hat, läuft es weiter, obwohl die Zeitgrenze für das
Abspielgerät längst erreicht ist.

Dies lässt sich nur verhindern, indem man die internen
Paketfilter-Regeln des Fli4l umstellt. Daher hatte ich in der base.txt
des 3er fli4l folgendes Konstrukt:

PF_FORWARD_ACCEPT_DEF='no' # do not use default rule set

PF_FORWARD_N='8'
PF_FORWARD_1='oac-chain'
PF_FORWARD_2='state:ESTABLISHED,RELATED ACCEPT'
PF_FORWARD_3='state:INVALID DROP'
PF_FORWARD_4='state:NEW 127.0.0.1 DROP BIDIRECTIONAL'
PF_FORWARD_5='pfwaccess-chain'
PF_FORWARD_6='ovpn-chain'
PF_FORWARD_7='tmpl:samba DROP' # drop samba traffic if it tries
# to leave the subnet
PF_FORWARD_8='IP_NET_1 ACCEPT' # accept everything else

Das bildet das default ruleset des fli4l nach, mit der Ausnahme, das die
OAC-Chain vor alle anderen gesetzt wird.

Somit werden auch bestehende Verbindungen getrennt, wenn die Kriterien
des OAC erfüllt sind. Funktioniert so klaglos.

Beim Umsetzen nach fli4l 4.x musste ich allerdings lernen, dass nicht
mehr alle Paketfilter-Chains direkt referenziert werden können.

Obiges Ruleset wirft bei der 4.x Version folgende Fehler:

var::slot_check: Value 'oac-chain' of variable 'PF_FORWARD_1' is not
properly typed: please refer to the documentationno errormessage
yetno errormessage yet
var::slot_check: Value 'ovpn-chain' of variable 'PF_FORWARD_6' is not
properly typed: please refer to the documentationno errormessage
yetno errormessage yet

Das gleiche gilt auch für FORWARD-Rules aus dem Openvpn-Paket.

Nun stellt sich mir die Frage: Absicht oder nicht?
Christoph?

Gruß
Harvey
Aw: Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr? [Beitrag #69394 ist eine Antwort auf Beitrag #69388] Fri, 08 February 2019 13:04 Zum vorherigen Beitrag gehenZum nächsten Beitrag gehen
Klaus Dreier ist gerade offline  Klaus Dreier
Beiträge: 325
Registriert: January 2015
Senior Member
Hallo,

Probier mal
PF_FORWARD[]='...
und lösche/deaktiviere PF_FORWARD_N=

Gruß
Klaus
Re: Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr? [Beitrag #69398 ist eine Antwort auf Beitrag #69394] Fri, 08 February 2019 16:50 Zum vorherigen Beitrag gehenZum nächsten Beitrag gehen
Harvey ist gerade offline  Harvey
Beiträge: 58
Registriert: July 2010
Member
Klaus,

> Probier mal
> PF_FORWARD[]='...
> und lösche/deaktiviere PF_FORWARD_N=

und ich hätte es doch schreiben sollen
Ja, natürlich habe ich das in die neue Syntax umgewandelt. In fli4l
heißt das:

PF_FORWARD_ACCEPT_DEF='no' # don't use default rule set

PF_FORWARD[]='oac-chain'
PF_FORWARD[]='state:ESTABLISHED,RELATED ACCEPT'
PF_FORWARD[]='state:INVALID DROP'
PF_FORWARD[]='state:NEW 127.0.0.1 DROP BIDIRECTIONAL'
PF_FORWARD[]='pfwaccess-chain'
PF_FORWARD[]='ovpn-chain'
PF_FORWARD[]='tmpl:samba DROP' # drop samba traffic if it tries
# to leave the subnet
PF_FORWARD[]='IP_NET_1 ACCEPT' # accept everything else

Und das wirft genau den beschriebenen fehler. Ich meine Christoph hat
mal erwähnt das die neue Syntax intern in die alte umgewandelt wird,
daher ist die Fehlermeldung wohl so.

Wie gesagt, mkfli4l stößt sich nur an der ersten und sechsten Regel.

Das wars also leider nicht.

Trotzdem danke

Gruß
Harvey
Re: Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr? [Beitrag #69400 ist eine Antwort auf Beitrag #69388] Fri, 08 February 2019 17:50 Zum vorherigen Beitrag gehenZum nächsten Beitrag gehen
Uwe Zeppei ist gerade offline  Uwe Zeppei
Beiträge: 263
Registriert: July 2010
Senior Member
Moin!

Am 08.02.2019 um 09:52 schrieb Harvey:
> Das gleiche gilt auch für FORWARD-Rules aus dem Openvpn-Paket.
>
> Nun stellt sich mir die Frage: Absicht oder nicht?

Wenn ich in meinem 4.0 mal in der Webgui in "Paketfilter" - "Forward"
blicke, sehe ich da:

"oac-fw-pre" mit Comment "oac-traffic"
2x "fw-ovpn" mit Comment "ovpn VPN traffic" (einmal für "in" mit "tun+"
und einmal für "out" mit "tun+")

Hilft dir das eventuell?

--
Viele Grüße
Uwe
Re: Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr? [Beitrag #69406 ist eine Antwort auf Beitrag #69400] Sat, 09 February 2019 13:49 Zum vorherigen Beitrag gehenZum nächsten Beitrag gehen
Harvey ist gerade offline  Harvey
Beiträge: 58
Registriert: July 2010
Member
Uwe,

> Wenn ich in meinem 4.0 mal in der Webgui in "Paketfilter" - "Forward"
> blicke, sehe ich da:
>
> "oac-fw-pre" mit Comment "oac-traffic"
> 2x "fw-ovpn" mit Comment "ovpn VPN traffic" (einmal für "in" mit "tun+"
> und einmal für "out" mit "tun+")

Da hatte ich auch schon hingeschaut. Allerdings heißt das auch in der
3.10.x schon so, das webgui sieht dort gleich aus. Also nein, hilft wohl
eher nicht.

Trotzdem Danke
Harvey
Aw: Re: Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr? [Beitrag #69515 ist eine Antwort auf Beitrag #69406] Wed, 13 February 2019 21:25 Zum vorherigen Beitrag gehenZum nächsten Beitrag gehen
Christoph Schulz ist gerade offline  Christoph Schulz
Beiträge: 1872
Registriert: March 2012
Senior Member
Hallo Harvey,

wie im IRC besprochen ist dies ein Bug in mkfli4l-ng, dem mkfli4l in fli4l 4.0. Bitte lege dafür ein Ticket an. Danke!


Viele Grüße,


Christoph Schulz
[fli4l-Team]
Aw: Re: Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr? [Beitrag #69517 ist eine Antwort auf Beitrag #69515] Wed, 13 February 2019 21:35 Zum vorherigen Beitrag gehenZum nächsten Beitrag gehen
Christoph Schulz ist gerade offline  Christoph Schulz
Beiträge: 1872
Registriert: March 2012
Senior Member
Hallo nochmal,

ich ziehe meine Aussage zurück und behaupte das Gegenteil ;-) Es ist zwar in gewisser Weise eine Regression, aber in der Entwickler-Dokumentation steht im Abschnitt "Spezifikation regulärer Ausdrücke" explizit drin:

Zitat:
Eingefügt werden die Referenzen einfach durch '(RE:Referenz)'.
Die Klammern sind also eigentlich Pflicht, und dass das in Typerweiterungen früher auch ohne Klammern funktioniert hat, war eher Zufall denn Absicht.

Vermutlich werde ich also lediglich die entsprechenden exp-Dateien anpassen und um Klammern ergänzen.


Viele Grüße,


Christoph Schulz
[fli4l-Team]
Re: Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr? [Beitrag #69528 ist eine Antwort auf Beitrag #69517] Thu, 14 February 2019 11:14 Zum vorherigen Beitrag gehenZum nächsten Beitrag gehen
Harvey ist gerade offline  Harvey
Beiträge: 58
Registriert: July 2010
Member
Christoph,

> ich ziehe meine Aussage zurück und behaupte das Gegenteil ;-) Es ist
> zwar in gewisser Weise eine Regression, aber in der
> Entwickler-Dokumentation steht im Abschnitt "Spezifikation regulärer
> Ausdrücke" explizit drin:
>
> Zitat:
>> Eingefügt werden die Referenzen einfach durch '(RE:Referenz)'.
>
> Die Klammern sind also eigentlich Pflicht, und dass das in
> Typerweiterungen früher auch ohne Klammern funktioniert hat, war eher
> Zufall denn Absicht.
>
> Vermutlich werde ich also lediglich die entsprechenden exp-Dateien
> anpassen und um Klammern ergänzen.

Hm, mal sehen ob ich das richtig verstanden habe:

ich ersetze also PF_FORWARD[]='oac-chain' durch
PF_FORWARD[]='(RE:oac-chain)'?

Das führt derzeit zu:

var::slot_check: Value '(RE:oac-chain)' of variable 'PF_FORWARD_1' is
not properly typed: please refer to the documentationno
errormessage yetno errormessage yet


Und nochmal zur Erinnerung:
PF_FORWARD[]='pfwaccess-chain' funktioniert (jetzt schon).

All das bezieht sich auf ein aktuelles fli4l 4.x (trunk)

Gruß
Harvey
Aw: Re: Direktes Referenzieren von anderen Firewall-Chains geht in 4.0 nicht mehr? [Beitrag #69571 ist eine Antwort auf Beitrag #69528] Fri, 15 February 2019 21:59 Zum vorherigen Beitrag gehen
Christoph Schulz ist gerade offline  Christoph Schulz
Beiträge: 1872
Registriert: March 2012
Senior Member
Hallo Harvey,

du hast mich falsch verstanden :-( Ich meinte, dass ich das in den Typdefinitionen der Pakete anpassen muss, genauer in httpd/check/httpd.exp und openvpn/check/openvpn.exp.

Es ist zwar eine Regression, aber ich bin nicht gewillt, der Dokumentation entgegenstehendes und inkonsequentes Verhalten von mkfli4l zu erhalten bzw. nachzubauen, um das gefühlt 0.2% Mehr an Rückwärtskompatibilität zu gewährleisten. Ich habe hierzu FFL-2377 aufgemacht.


Viele Grüße,


Christoph Schulz
[fli4l-Team]
Vorheriges Thema: Informationen zu den wöchentlichen 4.0-Archiven vom 01.02.2019 (r55048)
Nächstes Thema: Informationen zu den wöchentlichen 4.0-Archiven vom 15.02.2019 (r55209)
Gehe zum Forum:
  


aktuelle Zeit: Thu Apr 18 20:59:32 CEST 2019

Insgesamt benötigte Zeit, um die Seite zu erzeugen: 0.02125 Sekunden