È stata rilasciata una nuova versione importante della distribuzione OpenWrt 21.02.0, progettata per l'uso su diversi dispositivi di rete, come router, switch e punti di accesso. OpenWrt supporta numerose piattaforme e architetture diverse e dispone di un sistema di build che facilita la cross-compilazione, consentendo di includere vari componenti nella build, il che permette di creare facilmente un firmware o un'immagine del disco adattati a specifiche esigenze con un set desiderato di pacchetti preinstallati. Le build sono state create per 36 piattaforme target.
Le modifiche in OpenWrt 21.02.0 includono:
- Sono stati aumentati i requisiti minimi hardware. Con la build predefinita, a causa dell'inclusione di sistemi aggiuntivi del kernel Linux per l'uso di OpenWrt, ora è richiesto un dispositivo con 8 MB di Flash e 64 MB di RAM. Se desiderato, è ancora possibile creare una propria build ridotta che possa funzionare su dispositivi con 4 MB di Flash e 32 MB di RAM, ma la funzionalità di tale build sarà limitata e la stabilità operativa non è garantita.
- La fornitura di base include pacchetti per il supporto della tecnologia di protezione delle reti wireless WPA3, che ora è disponibile di default sia in modalità client che nella creazione di un punto di accesso. WPA3 offre protezione contro gli attacchi di cracking delle password (non permette di tentare di indovinare la password in modalità offline) e utilizza il protocollo di autenticazione SAE. La possibilità di utilizzare WPA3 è garantita nella maggior parte dei driver per dispositivi wireless.
- La fornitura di base include di default il supporto per TLS e HTTPS, che consente di accedere all'interfaccia web LuCI tramite HTTPS e di utilizzare strumenti come wget e opkg per estrarre informazioni attraverso canali di comunicazione criptati. I server attraverso i quali vengono distribuiti i pacchetti scaricati tramite opkg sono anche di default configurati per fornire informazioni su HTTPS. La libreria utilizzata per la crittografia mbedTLS è stata sostituita da wolfSSL (se necessario, è possibile installare manualmente le librerie mbedTLS e OpenSSL, che continuano a essere fornite come opzioni). Per configurare il reindirizzamento automatico a HTTPS nell'interfaccia web, è stata proposta l'opzione "uhttpd.main.redirect_https=1".
- È stata implementata la supporto iniziale per il sottosistema del kernel DSA (Distributed Switch Architecture), che fornisce strumenti per la configurazione e la gestione di cascami di switch Ethernet connessi tra loro, utilizzando meccanismi impiegati per configurare interfacce di rete comuni (iproute2, ifconfig). DSA può essere utilizzato per configurare porte e VLAN al posto dello strumento swconfig precedentemente proposto, ma non tutti i driver degli switch supportano ancora DSA. Nella versione proposta, DSA è utilizzato per i driver ath79 (TP-Link TL-WR941ND), bcm4908, gemini, kirkwood, mediatek, mvebu, octeon, ramips (mt7621) e realtek.
- Sono state apportate modifiche alla sintassi dei file di configurazione presenti in /etc/config/network. Nel blocco «config interface», l'opzione «ifname» è stata rinominata in «device», mentre nel blocco «config device», le opzioni «bridge» e «ifname» sono state rinominate in «ports». Per le nuove installazioni, ora vengono generati file separati con le impostazioni dei dispositivi (layer 2, blocco «config device») e delle interfacce di rete (layer 3, blocco «config interface»). Per garantire la retrocompatibilità, il supporto della vecchia sintassi è mantenuto, ovvero le impostazioni create in precedenza non richiederanno modifiche. Tuttavia, nell'interfaccia web, quando viene rilevata la vecchia sintassi, verrà fornita un'opzione per la migrazione alla nuova sintassi, necessaria per modificare le impostazioni tramite l'interfaccia web.
Esempio della nuova sintassi: 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’
Analogamente ai file di configurazione /etc/config/network, i nomi dei campi in board.json sono stati modificati da «ifname» a «device».
- È stata aggiunta una nuova piattaforma «realtek» che consente di utilizzare OpenWrt su dispositivi con un numero elevato di porte Ethernet, come gli switch Ethernet D-Link, ZyXEL, ALLNET, INABA e NETGEAR.
- Sono state aggiunte nuove piattaforme bcm4908 e rockchip per dispositivi basati sui SoC Broadcom BCM4908 e Rockchip RK33xx. Sono stati risolti problemi di supporto per dispositivi nelle piattaforme precedentemente supportate.
- È stata interrotta la supporto per la piattaforma ar71xx, da utilizzare invece la piattaforma ath79 (per i dispositivi legati ad ar71xx, si consiglia di reinstallare OpenWrt da zero). È stata inoltre interrotta la supporto per le piattaforme cns3xxx (Cavium Networks CNS3xxx), rb532 (MikroTik RB532) e samsung (Samsung TQ210).
- I file eseguibili delle applicazioni coinvolte nell'elaborazione delle connessioni di rete sono stati compilati in modalità PIE (Position-Independent Executables) con pieno supporto per la randomizzazione dello spazio degli indirizzi (ASLR) per rendere più difficile l'esploitazione delle vulnerabilità in tali applicazioni.
- Nella compilazione del kernel Linux, per impostazione predefinita sono incluse opzioni per supportare le tecnologie di isolamento dei container, che consentono di utilizzare gli strumenti LXC e la modalità procd-ujail su la maggior parte delle piattaforme in OpenWrt.
- È stata fornita la possibilità di compilare con il supporto per il sistema di controllo accessi obbligatorio SELinux (disattivato per impostazione predefinita).
- Aggiornate le versioni dei pacchetti, inclusi i rilasci 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, busybox 1.33.1. Il kernel Linux è stato aggiornato alla versione 5.4.143 con il porting dello stack wireless cfg80211/mac80211 dal kernel 5.10.42 e il trasferimento del supporto. VPN Wireguard.
Fonte: opennet.ru
