Dopo quasi quattro anni di sviluppo, è stata rilasciata la versione 4.1 del sistema operativo Qubes, che realizza l'idea di utilizzare un hypervisor per un rigoroso isolamento delle applicazioni e dei componenti del sistema operativo (ogni classe di applicazioni e i servizi di sistema operano in macchine virtuali separate). Sono necessari un sistema con 6 GB di RAM e una CPU a 64 bit Intel o AMD compatibile con le tecnologie VT-x con EPT/AMD-v con RVI e VT-d/AMD IOMMU; idealmente è consigliata la presenza di una GPU Intel (le GPU NVIDIA e AMD non sono state testate adeguatamente). La dimensione dell'immagine di installazione è di 6 GB.
Le applicazioni in Qubes sono suddivise in classi a seconda dell'importanza dei dati trattati e dei compiti svolti. Ogni classe di applicazioni (ad esempio, lavoro, intrattenimento, operazioni bancarie), così come i servizi di sistema (sottosistema di rete, firewall, gestione dello storage, stack USB, ecc.), funzionano in macchine virtuali separate, avviate utilizzando l'hypervisor Xen. Inoltre, le applicazioni suddette sono disponibili all'interno di un unico desktop e sono evidenziate per chiarezza da un diverso colore di bordo della finestra. Ogni ambiente ha accesso in lettura al file system radice di base e allo storage locale, che non si sovrappone a quello di altri ambienti; per facilitare l'interazione delle applicazioni viene utilizzato un servizio speciale.

Come base per la formazione degli ambienti virtuali possono essere utilizzati i repository di Fedora e Debian; la comunità supporta anche template per Ubuntu, Gentoo e Arch Linux. È possibile organizzare l'accesso alle applicazioni in una macchina virtuale con Windows, così come creare macchine virtuali basate su Whonix per garantire un accesso anonimo tramite Tor. L'interfaccia utente è costruita sulla base di Xfce. Quando un utente avvia un'applicazione dal menu, questa viene avviata in una specifica macchina virtuale. Il contenuto degli ambienti virtuali è determinato da un insieme di template.


Variazioni principali:
- È stata implementata la possibilità di utilizzare un ambiente GUI Domain separato con componenti per il funzionamento dell'interfaccia grafica. In precedenza, in ambienti virtuali per ogni classe di applicazioni veniva avviato un server X separato, un gestore delle finestre semplificato e un driver video fittizio, che trasmetteva l'output all'ambiente di controllo in modalità composita, ma i componenti dello stack grafico, il gestore delle finestre del desktop principale, gli strumenti di gestione dello schermo e i driver grafici venivano eseguiti nell'ambiente di controllo principale Dom0. Ora le funzioni legate alla grafica possono essere trasferite da Dom0 a un ambiente separato GUI Domain e separarle dai componenti di gestione del sistema. In Dom0 è rimasto solo un processo di background speciale per fornire accesso a determinate pagine di memoria. Il supporto per GUI Domain è attualmente sperimentale e non è abilitato di default.
- È stato aggiunto il supporto sperimentale per Audio Domain, un ambiente separato per l'esecuzione dell'audio server, permettendo di isolare i componenti per l'elaborazione del suono da Dom0.
- È stato aggiunto un processo di background qrexec-policy e un nuovo sistema di regole per il meccanismo RPC Qrexec, che consente di eseguire comandi nel contesto di ambienti virtuali predefiniti. Il sistema di regole Qrexec definisce chi, cosa e dove può operare in Qubes. La nuova versione delle regole presenta un formato più flessibile, un significativo aumento delle prestazioni e un sistema di notifiche che semplifica la diagnosi dei problemi. È stata aggiunta la possibilità di eseguire i servizi Qrexec come server, accessibile tramite socket.
- Sono stati proposti tre nuovi modelli di ambienti virtuali basati su Gentoo Linux: minimale, con Xfce e con GNOME.
- È stata realizzata una nuova infrastruttura per il supporto, l'assemblaggio automatizzato e il testing di ulteriori modelli di ambienti virtuali. Oltre a Gentoo, l'infrastruttura supporta anche modelli con Arch Linux e il testing del kernel Linux.
- È stato migliorato il sistema di assemblaggio e testing, aggiunto il supporto per il controllo nel sistema di integrazione continua basato su GitLab CI.
- Sono stati effettuati lavori per implementare il supporto per le assemblaggi ripetibili di ambienti basati su Debian, che possono essere utilizzati per confermare che i componenti di Qubes siano stati assemblati esattamente dai sorgenti dichiarati e non contengano modifiche non autorizzate, che, ad esempio, potrebbero essere effettuate tramite attacchi all'infrastruttura di assemblaggio o backdoor nel compilatore.
- È stata riscritta l'implementazione del firewall.

- Gli ambienti sys-firewall e sys-usb vengono ora avviati di default in modalità "disposable", ovvero sono monouso e possono essere creati su richiesta.
- È stato migliorato il supporto per schermi ad alta densità di pixel.
- È stato aggiunto il supporto per diverse forme del cursore.
- È stata implementata la visualizzazione di un avviso per mancanza di spazio libero su disco.
- È stato aggiunto il supporto per una modalità di ripristino delle copie di sicurezza paranoica, in cui viene utilizzato un ambiente virtuale monouso per il ripristino.
- Nell'installer è stata fornita l'opzione di scegliere tra Debian e Fedora per i modelli di macchine virtuali.
- È stata aggiunta una nuova interfaccia grafica per la gestione degli aggiornamenti.

- È stato aggiunto lo strumento Template Manager per installare, rimuovere e aggiornare i modelli.
- È stato migliorato il meccanismo di distribuzione dei modelli.
- L'ambiente base Dom0 è stato aggiornato alla base pacchetti Fedora 32. I modelli per la creazione di ambienti virtuali sono stati aggiornati a Fedora 34, Debian 11 e Whonix 16. Di default è stato proposto il kernel Linux 5.10. Hypervisor Xen 4.14 e ambiente grafico Xfce 4.14 sono stati aggiornati.
Fonte: opennet.ru


