BPFilter: Linux-Kernel könnten moderne Firewall wieder verlieren

Dem BPFilter-Subsystem im Linux-Kernel steht eine ungewisse Zeit bevor, da die Kernel-Community derzeit diskutiert, die Technik entweder völlig oder zumindest vorerst wieder aus Linux zu entfernen. Das berichtet das Magazin LWN.net(öffnet im neuen Fenster) . Offenbar wird das Subsystem und damit im Zusammenhang stehende weitere Techniken von keinem anderen Bestandteil im Kernel verwendet. Ebenso scheint die Technik derzeit nicht so gepflegt zu werden, wie dies eigentlich für Kernel-Technik von der Community erwartet wird.
Erste Arbeiten an BPFilter wurden Anfang des Jahres 2018 vorgestellt. Dieses dient als Ersatz oder auch Alternative für die andere im Kernel bereits vorhandene Firewall-Technik Nftables und Iptables. Das etwas jüngere Nftables nutzt zur Umsetzung seiner Filterregeln eine virtuelle Maschine (VM), die direkt im Kernel implementiert ist. Der vergleichsweise neue BPFilter nutzt einen ähnlichen Ansatz und greift auf BPF zurück. Dabei handelt es sich um eine inzwischen sehr weit ausgereifte Technik, die unter anderem auch für einen Dtrace-Ersatz für Linux zum Einsatz kommt.
Der BPFilter erschien im Sommer 2018 schließlich mit Linux 4.18 . Der wohl wichtigste Bestandteil der Technik ist dabei die Interaktion mit dem User-Space-Blobs oder auch -Helper. Auch diese Idee, also ein spezielles User-Space-Programm, das mit dem Kernel kommuniziert, ist im Grunde nichts Neues. Für BPFilter hatte die Linux-Community jedoch einen neuen Ansatz dafür gewählt. Der Kernel-Entwickler Greg Kroah-Hartman erhoffte sich damals davon, dass dieser so generisch ist, dass schnell auch andere Kernel-Subsysteme die Techniken verwenden könnten.
Dazu kam es in den vergangenen zwei Jahren aber nicht. Stattdessen wurde der Code der Technik kaum verändert oder weiterentwickelt, was nun die Diskussion um eine mögliche Entfernung aus dem Kernel ausgelöst hat. Der stark in die Arbeiten an BPF involvierte Entwickler Alexei Starovoitov widerspricht dem Plan jedoch und zählt auch einige Beispiele auf, in denen BPFilter bereits genutzt wird. Darüber hinaus bekräftigt Kroah-Hartman weiter seinen Plan, die Filter samt User-Mode-Blobs auch für weitere Komponenten im Kernel zu verwenden, unter anderem für den von ihm betreuten USB-Stack. Ob und wann es dazu kommt, ist derzeit jedoch nicht abzusehen.



