RevPi Connect - Firewall nftables

Post Reply
Martin_St
Posts: 6
Joined: 12 Mar 2019, 12:17
Answers: 0

RevPi Connect - Firewall nftables

Post by Martin_St »

Guten Abend,

weiß jemand Bescheid ob am RevPi Connect nftables verfügbar / lauffähig ist?
Meiner Meinung sollte das bei der Kernel Version 4.9.76-rt60 mit an Bord sein.

Vielleicht hat ja schon jemand Erfahrung damit gemacht.

Danke für eure Hilfe.
Martin
User avatar
lukas
Expert
Posts: 186
Joined: 13 Feb 2017, 10:29
Answers: 0

Re: RevPi Connect - Firewall nftables

Post by lukas »

Bei dem Kernel 4.9, der derzeit noch auf dem Image vorinstalliert ist, ist CONFIG_NF_TABLES bedauerlicherweise nicht eingeschaltet.

Es wird in Bälde einen Kernel 4.19 als Paket-Update geben, bei dem es dann eingeschaltet sein wird. Wir brauchen hier noch etwas Zeit zum Testen verschiedener anderer Features, ich bitte um ein klein wenig Geduld.

Du hast bis dahin allerdings die Möglichkeit, ein eigenes Kernel-Paket zu bauen wie im kernelbakery README beschrieben. Du musst lediglich die Datei debian/update.sh anpassen, bevor du den Kernel baust: Dort findest du ab Zeile 46 (fürs CM1) und ab Zeile 112 (fürs CM3) die Konfigurationsparameter, die wir spezifisch für den RevPi anpassen. Dort kannst du z.B. jeweils folgendes hinzufügen:

Code: Select all

CONFIG_NF_TABLES=m
CONFIG_NF_TABLES_SET=m
CONFIG_NF_TABLES_INET=y
CONFIG_NF_TABLES_NETDEV=y
CONFIG_NFT_NUMGEN=m
CONFIG_NFT_CT=m
CONFIG_NFT_FLOW_OFFLOAD=m
CONFIG_NFT_COUNTER=m
CONFIG_NFT_CONNLIMIT=m
CONFIG_NFT_LOG=m
CONFIG_NFT_LIMIT=m
CONFIG_NFT_MASQ=m
CONFIG_NFT_REDIR=m
CONFIG_NFT_NAT=m
CONFIG_NFT_TUNNEL=m
CONFIG_NFT_OBJREF=m
CONFIG_NFT_QUEUE=m
CONFIG_NFT_QUOTA=m
CONFIG_NFT_REJECT=m
CONFIG_NFT_REJECT_INET=m
CONFIG_NFT_COMPAT=m
CONFIG_NFT_HASH=m
CONFIG_NFT_FIB=m
CONFIG_NFT_FIB_INET=m
CONFIG_NFT_SOCKET=m
CONFIG_NFT_OSF=m
CONFIG_NFT_TPROXY=m
CONFIG_NF_DUP_NETDEV=m
CONFIG_NFT_DUP_NETDEV=m
CONFIG_NFT_FWD_NETDEV=m
CONFIG_NFT_FIB_NETDEV=m
Martin_St
Posts: 6
Joined: 12 Mar 2019, 12:17
Answers: 0

Re: RevPi Connect - Firewall nftables

Post by Martin_St »

Hallo Lukas,

dankeschön für die ausführliche Antwort!
Ich denke, dass ich in diesem Fall dann aufs Paket-Update warten werde.
Sollte es in der Zwischenzeit notwendig sein, probier ich eventuell den Vorgang wie in der kernelbakery-readme beschrieben. :)
Einstweilen muss mein Raspi 4 für meine Projektarbeit herhalten.

LG, Martin
Martin_St
Posts: 6
Joined: 12 Mar 2019, 12:17
Answers: 0

Re: RevPi Connect - Firewall nftables

Post by Martin_St »

Hallo,

gibt es in der Zwischenzeit vielleicht schon Infos wann der neue Kernel verfügbar sein wird?
Ich habe einstweilen (das erste Mal) versucht mit der kernelbakery einen eigenen Kernel lt. dem README zu bauen (mit den Änderungen in der update.sh-Datei).

Folgende zwei Fehler haben sich herausgestellt:
1.) "gcc-6-arm-linux-gnueabihf" bzw. "gcc-5-arm-linux-gnueabihf" lassen sich nicht installieren (Anhang_1)
2.) Der Befehl "dpkg-buildpackage -a armhf -b -us -uc" bringt den Output lt. Bild (Anhang_2)

Wo liegt der Fehler bzw. habe ich vielleicht etwas vergessen?
Danke für die Hilfe!
LG, Martin
Attachments
Anhang_2.JPG
Anhang_2.JPG (57.21 KiB) Viewed 4060 times
Anhang_1.JPG
Anhang_1.JPG (28.02 KiB) Viewed 4060 times
User avatar
lukas
Expert
Posts: 186
Joined: 13 Feb 2017, 10:29
Answers: 0

Re: RevPi Connect - Firewall nftables

Post by lukas »

Den Kernel auf dem RevPi zu bauen dauert sehr lange, wir cross-compilieren den daher auf einer x86-Maschine.

Dafür braucht's das gcc-arm-linux-gnueabihf Paket. Das ist nur für Nicht-arm-Architekturen verfügbar. Compiliert man unter arm, muss man ja nicht cross-compilieren, sondern verwendet den nativen Compiler für die lokale Architektur. D.h. dafür muss dann das gcc Paket auf dem RevPi installiert sein.

Wenn du lokal auf dem RevPi kompilieren willst, musst du außerdem im kernelbakery-Verzeichnis in der Datei debian/update.sh den Parameter "CROSS_COMPILE=arm-linux-gnueabihf-" bei der Zuweisung der "make" Variable entfernen.

Die Fehlermeldung beim Aufruf von "dpkg-buildpackage" rührt daher, dass noch die Pakete "debhelper" und "quilt" zum Bauen der Pakete benötigt werden. Die kannst du mit "sudo apt-get install debhelper quilt" nachinstallieren. Du kannst auch mit dem Kommando "dpkg-checkbuilddeps" prüfen, ob alle benötigten Pakete vorhanden sind.

Den Kernel 4.19 werden wir im Laufe des Junis releasen. Ich schicke dir per PM einen Download-Link für eine Vorab-Version. Gerne beantworten wir dir aber weitere Fragen, wenn du es mit kernelbakery selbst probieren möchtest.
Post Reply