Die neue bedeutende Version des OpenWrt-Distributions wurde veröffentlicht, die für verschiedene Netzgeräte wie Router, Switches und Access Points konzipiert ist. OpenWrt unterstützt zahlreiche Plattformen und Architekturen und bietet ein Build-System, das die einfache und bequeme Cross-Kompilation ermöglicht. Es können verschiedene Komponenten in den Build integriert werden, wodurch die Erstellung einer maßgeschneiderten Firmware oder Disk-Image mit dem gewünschten Satz an vorinstallierten Paketen erleichtert wird. Builds wurden für 36 Zielplattformen erstellt.
Zu den Änderungen in OpenWrt 21.02.0 gehören:
- Die Mindestanforderungen an die Hardware wurden erhöht. Aufgrund der Integration zusätzlicher Linux-Kernelsubsysteme ist für die Verwendung von OpenWrt auf einem Gerät jetzt 8 MB Flash und 64 MB RAM erforderlich. Bei Bedarf kann weiterhin ein eigenes abgespecktes Build erstellt werden, das auf Geräten mit 4 MB Flash und 32 MB RAM läuft, aber die Funktionalität eines solchen Builds ist eingeschränkt, und die Stabilität ist nicht garantiert.
- Im Lieferumfang sind Pakete zur Unterstützung der WPA3-WLAN-Sicherheitstechnologie enthalten, die jetzt standardmäßig sowohl im Client-Modus als auch beim Erstellen eines Access Points verfügbar ist. WPA3 bietet Schutz vor Brute-Force-Angriffen (verhindert das Offline-Passwort-Erraten) und verwendet das Authentifizierungsprotokoll SAE. Die Unterstützung für WPA3 ist in den meisten Treibern für drahtlose Geräte gewährleistet.
- Standardmäßig ist die Unterstützung für TLS und HTTPS enthalten, die den Zugriff auf die LuCI-Weboberfläche über HTTPS ermöglicht und Tools wie wget und opkg zur Abfrage von Informationen über verschlüsselte Kommunikationskanäle verwendet. Die Server, von denen über opkg herunterladbare Pakete verteilt werden, sind ebenfalls standardmäßig auf die Bereitstellung von Informationen über HTTPS umgestellt. Die zur Verschlüsselung verwendete Bibliothek mbedTLS wurde durch wolfSSL ersetzt (optional können weiterhin die Bibliotheken mbedTLS und OpenSSL manuell installiert werden). Um eine automatische Weiterleitung auf HTTPS in der Weboberfläche einzurichten, wird die Option „uhttpd.main.redirect_https=1“ angeboten.
- Die anfängliche Unterstützung für das DSA (Distributed Switch Architecture) Kernsubsystems wurde implementiert, das Mittel zur Konfiguration und Verwaltung von Kaskaden verbundener Ethernet-Switches bereitstellt, wobei die Mechanismen verwendet werden, die auch zur Konfiguration gewöhnlicher Netzwerk-Interfaces (iproute2, ifconfig) zum Einsatz kommen. DSA kann zur Konfiguration von Ports und VLANs anstelle des zuvor angebotenen Werkzeugs swconfig eingesetzt werden, allerdings unterstützen noch nicht alle Switch-Treiber DSA. In diesem Release wird DSA für die Treiber ath79 (TP-Link TL-WR941ND), bcm4908, gemini, kirkwood, mediatek, mvebu, octeon, ramips (mt7621) und realtek verwendet.
- Änderungen am Syntax der Konfigurationsdateien in /etc/config/network wurden eingeführt. Im Block „config interface“ wurde die Option „ifname“ in „device“ umbenannt, und im Block „config device“ wurden die Optionen „bridge“ und „ifname“ in „ports“ umbenannt. Für neue Installationen werden nun separate Dateien mit den Geräteeinstellungen (Layer 2, Block „config device“) und den Netzwerkschnittstellen (Layer 3, Block „config interface“) generiert. Um die Abwärtskompatibilität zu gewährleisten, bleibt die Unterstützung des alten Syntax erhalten, d. h. zuvor erstellte Einstellungen erfordern keine Änderungen. Im Web-Interface wird jedoch bei Erkennung des alten Syntax ein Vorschlag zur Migration auf den neuen Syntax angezeigt, der zum Bearbeiten der Einstellungen über das Web-Interface erforderlich ist.
Beispiel für den neuen Syntax: config device option name 'br-lan' option type 'bridge' option macaddr '00:01:02:XX:XX:XX' list ports 'lan1' list ports 'lan2' list ports 'lan3' list ports 'lan4' config interface 'lan' option device 'br-lan' option proto 'static' option ipaddr '192.168.1.1' option netmask '255.255.255.0' option ip6assign '60' config device option name 'eth1' option macaddr '00:01:02:YY:YY:YY' config interface 'wan' option device 'eth1' option proto 'dhcp' config interface 'wan6' option device 'eth1' option proto 'dhcpv6'
Ähnlich wie bei den Konfigurationsdateien /etc/config/network wurde das Feld «ifname» in «device» in board.json umbenannt.
- Eine neue Plattform «realtek» wurde hinzugefügt, die die Verwendung von OpenWrt auf Geräten mit einer hohen Anzahl von Ethernet-Ports ermöglicht, wie z. B. Ethernet-Switches von D-Link, ZyXEL, ALLNET, INABA und NETGEAR.
- Neue Plattformen bcm4908 und rockchip für Geräte, die auf SoC Broadcom BCM4908 und Rockchip RK33xx basieren, wurden hinzugefügt. In zuvor unterstützten Plattformen wurden Mängel in der Geräteunterstützung behoben.
- Die Unterstützung für die Plattform ar71xx wurde eingestellt; stattdessen sollte die Plattform ath79 verwendet werden (für Geräte, die an ar71xx gebunden sind, wird empfohlen, OpenWrt sauber neu zu installieren). Zudem wurde die Unterstützung für die Plattformen cns3xxx (Cavium Networks CNS3xxx), rb532 (MikroTik RB532) und samsung (Samsung TQ210) eingestellt.
- Die ausführbaren Dateien der Anwendungen, die bei der Verarbeitung von Netzwerkverbindungen verwendet werden, sind im PIE-Modus (Position-Independent Executables) mit voller Unterstützung der Adressraum-Randomisierung (ASLR) kompiliert, um die Ausnutzung von Schwachstellen in diesen Anwendungen zu erschweren.
- Beim Kompilieren des Linux-Kernels sind standardmäßig Optionen aktiviert, die die Unterstützung von Containerisolationstechnologien ermöglichen, wodurch auf den meisten Plattformen das LXC-Tool und der procd-ujail-Modus in OpenWrt verwendet werden können.
- Es wurde die Möglichkeit zur Kompilierung mit Unterstützung für das SELinux-Zugriffskontrollsystem gegeben (standardmäßig deaktiviert).
- Die Versionen der Pakete wurden aktualisiert, darunter werden Versionen von musl libc 1.1.24, glibc 2.33, gcc 8.4.0, binutils 2.34, hostapd 2020-06-08, dnsmasq 2.85, dropbear 2020.81 und busybox 1.33.1 angeboten. Der Linux-Kernel wurde auf Version 5.4.143 aktualisiert, einschließlich der Portierung des kabellosen Stacks cfg80211/mac80211 aus dem Kernel 5.10.42 sowie der Unterstützung. VPN Wireguard.
Quelle: opennet.ru
