Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Virtualizzazione/VirtManager"
Differenze tra le versioni 152 e 201 (in 49 versioni)
Versione 152 del 14/01/2022 16.40.57
Dimensione: 7450
Autore: carlin0
Commento:
Versione 201 del 28/07/2024 15.48.47
Dimensione: 3494
Autore: carlin0
Commento: Verificata per 24.04
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page created by Carlin0 ## Pagina creata da Carlin0
Linea 5: Linea 5:
<<Include(NuoviStrumentiWiki/PaginaDiProva)>>
Linea 7: Linea 6:
<<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=648300"; rilasci="20.04")>>
## prima revisione fatta
<<Informazioni(rilasci="24.04 22.04 20.04"; forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=648642")>>
Linea 12: Linea 10:
'''Firejail''' è un programma [[https://it.wikipedia.org/wiki/Sandbox_(sicurezza_informatica)|sandbox]] [[https://it.wikipedia.org/wiki/Setuid_e_setgid|SUID]] di sicurezza che riduce il rischio di falle nella sicurezza restringendo l'ambiente di esecuzione di applicazioni non fidate, usando namespace Linux e [[https://en.wikipedia.org/wiki/Seccomp|seccomp-bpf]].

Permette ad un processo e tutti i suoi discendenti di avere la propria vista privata delle risorse del [[https://it.wikipedia.org/wiki/Kernel|kernel]] globalmente condivise, come lo stack di rete, la tabella dei processi e la tabella dei montaggi.
L'applicazione '''Virt-manager''' è un'interfaccia grafica utente per desktop che permette di gestire macchine virtuali tramite [[https://libvirt.org|libvirt]].<<BR>>
È pensata principalmente per macchine virtuali [[Virtualizzazione/Kvm|KVM]], ma gestisce anche [[https://it.wikipedia.org/wiki/Xen|Xen]] e [[https://it.wikipedia.org/wiki/LXC|LXC]].<<BR>>
L'applicazione presenta una vista riassuntiva dei domini in uso, statistiche sulle loro prestazioni e utilizzo di risorse in tempo reale. Procedure guidate permettono la creazione di nuovi domini, configurazione e regolazione delle risorse allocate e dell'hardware virtuale per ogni dominio.<<BR>>
Un visualizzatore di client [[InternetRete/DesktopRemoto/Vnc|VNC]] e [[https://it.wikipedia.org/wiki/Simulation_Program_with_Integrated_Circuit_Emphasis|SPICE]] incorporato, presenta al dominio ospite una console grafica completa.
Linea 19: Linea 17:
 [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://firejail|firejail]]. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://virt-manager|virt-manager]].

{{{#!wiki important
Dopo l'installazione è consigliabile un riavvio completo del sistema operativo.
}}}

= Creare nuova macchina virtuale =

 0. [[AmbienteGrafico/AvviareProgrammi|Avviare]] dal menù principale '''Virtual Machine Manager'''.
 0. Fare clic sul menù '''File''' e scegliere la voce '''Nuova macchina virtuale'''.
 0. Seguire le istruzioni a seconda dei casi (Supporto ISO, da rete, usare disco esistente o installazione manuale).
 <<BR>>
 {{{#!wiki note
È possibile anche usare un disco virtuale creato con Virtualbox.
 }}}

= Porte USB =

 0. Dal menù '''Macchina virtuale''' della macchina virtuale scegliere la voce '''Redirigi dispositivo USB'''.
 0. Mettere una spunta sul dispositivo che si intende selezionare.

= Cartella condivisa =

 0. [[https://wiki.ubuntu-it.org/AmministrazioneSistema/ComandiBase#mkdir|Creare]] nel sistema '''host''' una cartella da condividere (ad esempio `~/condvs-hst`).
 0. [[https://wiki.ubuntu-it.org/AmministrazioneSistema/ComandiBase#mkdir|Creare]] nel sistema '''guest''' una cartella da condividere (ad esempio `~/condvs-gst`).
 0. Dal menù '''Visualizza''' della macchina virtuale scegliere la voce '''Dettagli'''.
 0. Fare clic su '''Aggiungi hardware'''.
 0. Scegliere '''File system'''.
 0. Impostare:
  * '''Tipo''' → ''mount''
  * '''Modalità''' → ''squash''
  * '''Percorso sorgente''' → ''/home/nome_utente/condvs-hst''
  * '''Percorso di destinazione''' → ''/home/nome_utente/condvs-gst''
 <<BR>>
 {{{#!wiki note
Sostituire '''nome_utente''' con il proprio nome utente nel sistema operativo.
 }}}

 0. Fare clic su '''Fine'''.
 0. Nel sistema `guest` digitare nel [[AmministrazioneSistema/Terminale|terminale]]: {{{
sudo mount -t 9p -o trans=virtio,version=9p2000.L /condvs-hst /home/tuoutente/condvs-gst
}}}
Linea 22: Linea 61:
Esiste anche un'interfaccia grafica basata sulle librerie [[https://it.wikipedia.org/wiki/Qt_(toolkit)|Qt]], installabile tramite il pacchetto [[apt://firetools|firetools]], ma non lo tratteremo in questa pagina poiché non consente di sfruttare le molteplici possibilità che si hanno operando dal [[AmministrazioneSistema/Terminale|terminale]], grazie a tutte le opzioni disponibili. Per eventuali problemi di lettura/scrittura della cartella condivisa agire sui [[AmministrazioneSistema/PermessiFile|permessi]].
Linea 24: Linea 63:

##Forse sarebbe meglio implementare 2 righe sull'interfaccia grafica,
##premesso che non l'ho mai usata, si può sempre fare successivamente una pagina a se stante

= Funzionamento =

Vengono presi come esempi le applicazioni '''[[InternetRete/Navigazione/Firefox|Firefox]]''' e '''[[InternetRete/Messaggistica/Telegram|Telegram Desktop]]'''.

 0. Avviare un programma in ''sandbox'' digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
firejail <nome_programma>
}}} Ad esempio:{{{
firejail firefox
firejail telegram-desktop
}}}
 0. Avviare un programma in '''''modalità privata''''', per inibire il programma a leggere i file della propria '''Home''' comprese le configurazioni dell'applicazione stessa, digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
firejail --private <nome_programma>
}}} Ad esempio:{{{
firejail --private firefox
firejail --private telegram-desktop
}}}
 0. Listare i programmi che usano '''firejail''', digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
firejail --list
}}} Viene mostrato un risultato simile a questo:{{{
1734:carlo::/usr/bin/firejail /usr/bin/firefox
2456:carlo::/usr/bin/firejail /usr/bin/liferea
2531:carlo::/usr/bin/firejail /usr/bin/telegram-desktop -
}}} In alternativa:{{{
firejail --top
}}} Per un risultato più completo:{{{
firejail --tree
}}}
 0. Listare i collegamenti simbolici creati a '''firejail''', digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
firecfg --list
}}} Viene mostrato un risultato simile a questo:{{{
/usr/local/bin/thunderbird
/usr/local/bin/keepassxc
/usr/local/bin/firefox
/usr/local/bin/liferea
/usr/local/bin/hexchat
/usr/local/bin/google-chrome-stable
/usr/local/bin/telegram-desktop
}}}
 0. Per eliminare tutti i collegamenti simbolici creati a '''firejail''', digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
sudo firecfg --clean
}}}
 0. Per eliminare solo un collegamento simbolico definito, digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
sudo rm /usr/local/bin/nome_programma
}}} Ad esempio:{{{
sudo rm /usr/local/bin/hexchat
}}}
 0. Per uccidere un processo in sandbox ,digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
firejail --shutdown=PID
}}}

Per ulteriori opzioni e impostazioni, consultare le pagine man [[http://manpages.ubuntu.com/manpages/jammy/man1/firejail.1.html|firejail]] e [[http://manpages.ubuntu.com/manpages/jammy/man1/firecfg.1.html|firecfg]].


= Integrazione Desktop =

Per configurare il menù ad avviare l'applicazione in sandbox esistono due opzioni.

== Singola applicazione ==

Questa opzione consente di predefinire quali applicazioni avviare in sandbox

Digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
sudo ln -s /usr/bin/firejail /usr/local/bin/nome_programma
}}} Ad esempio:{{{
sudo ln -s /usr/bin/firejail /usr/local/bin/firefox
sudo ln -s /usr/bin/firejail /usr/local/bin/telegram-desktop
}}}

== Tutte le applicazioni ==

Questa opzione configura d'avviare tutte le applicazioni in sandbox.

{{{#!wiki important
Questa modalità è limitativa del funzionamento delle applicazioni, poiché imposta configurazioni estremamente restrittive nell'uso delle applicazioni stesse.
}}}

Digitare nel [[AmministrazioneSistema/Terminale|terminale]]: {{{
sudo firecfg
}}}


= Profili personalizzati =

Ci sono due modalità per personalizzare i profili.

== File profile ==

 0. [[AmministrazioneSistema/ComandiBase#mkdir|Creare]] la cartella `~/.config/firejail`.
 0. [[AmministrazioneSistema/ComandiBase#cp|Copiare]] i file `*.profile` da modificare dalla cartella `/etc/firejail/` in `~/.config/firejail`.
  Ad esempio:{{{
cp /etc/firejail/firefox.profile ~/.config/firejail
cp /etc/firejail/telegram.profile ~/.config/firejail
}}}
 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] i file `*.profile` copiati e aggiungere o commentare le righe desiderate.
 0. Salvare e chiudere il file.

== File local ==

 0. [[AmministrazioneSistema/ComandiBase#mkdir|Creare]] la cartella `~/.config/firejail`.
 0. [[https://wiki.ubuntu-it.org/AmministrazioneSistema/ComandiBase#touch|Creare]] i file `<nome_programma>.local`
  Ad esempio:{{{
touch ~/.config/firejail/firefox.local
touch ~/.config/firejail/telegram.local
}}}
 0. Aprire con un [[Ufficio/EditorDiTesto|editor di testo]] i file `*.local` creati.
 0. Scrivere le impostazioni desiderate.
 0. Salvare e chiudere il file.
  Ad esempio per configurare '''firefox''' ad accedere a [[Hardware/DispositiviPartizioni/Partizioni|partizioni]] montate nel sistema o altri dispositivi, scrivere nel file `firefox.local` le seguenti righe:{{{
whitelist /media
ignore disable-mnt
}}}
  Ad esempio per configurare '''telegram desktop''', usato [[AmbienteGrafico|nell'ambiente grafico]] [[AmbienteGrafico/Xfce|Xfce]], a ignorare le configurazioni di altri ambienti grafici, scrivere nel file `telegram.local` le seguenti righe: {{{
ignore dbus-user.talk org.kde.StatusNotifierWatcher
ignore dbus-user.talk org.gnome.Mutter.IdleMonitor
}}}

Al termine riavviare le applicazioni.

##Si consiglia pressoché sempre il riavvio per essere certi che le configurazioni siano applicate.
##Non necessita il riavvio dell'intero sistema, basta quello delle applicazioni interessate dalle modifiche

= Priorità dei file di configurazione =

Le impostazioni scritte nei file `*.profile` che sono nella '''Home''' hanno priorità superiore rispetto a quelle scritte nei file `*.profile` in `/etc/firejail`.

Le impostazioni scritte nei file `*.local` hanno priorità superiore rispetto a quelle scritte nei file `*.profile`.
Linea 158: Linea 66:
 * [[https://firejail.wordpress.com|Sito ufficiale del progetto]]
 * [[https://github.com/netblue30/firejail|Repository ufficiale dello sviluppo]]
 * [[https://github.com/netblue30/firejail/discussions|Forum di supporto (in lingua inglese)]]
 * [[https://virt-manager.org|Sito del progetto]]
 * [[https://github.com/virt-manager/virt-manager|Repository dello sviluppo]]
 * [[https://webchat.oftc.net/?channels=#virt|Canale IRC (in lingua inglese)]]
Linea 163: Linea 70:
CategorySicurezza CategoryVirtualizzazione


Guida verificata con Ubuntu: 20.04 22.04 24.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

L'applicazione Virt-manager è un'interfaccia grafica utente per desktop che permette di gestire macchine virtuali tramite libvirt.
È pensata principalmente per macchine virtuali KVM, ma gestisce anche Xen e LXC.
L'applicazione presenta una vista riassuntiva dei domini in uso, statistiche sulle loro prestazioni e utilizzo di risorse in tempo reale. Procedure guidate permettono la creazione di nuovi domini, configurazione e regolazione delle risorse allocate e dell'hardware virtuale per ogni dominio.
Un visualizzatore di client VNC e SPICE incorporato, presenta al dominio ospite una console grafica completa.

Installazione

Installare il pacchetto virt-manager.

Dopo l'installazione è consigliabile un riavvio completo del sistema operativo.

Creare nuova macchina virtuale

  1. Avviare dal menù principale Virtual Machine Manager.

  2. Fare clic sul menù File e scegliere la voce Nuova macchina virtuale.

  3. Seguire le istruzioni a seconda dei casi (Supporto ISO, da rete, usare disco esistente o installazione manuale).


    È possibile anche usare un disco virtuale creato con Virtualbox.

Porte USB

  1. Dal menù Macchina virtuale della macchina virtuale scegliere la voce Redirigi dispositivo USB.

  2. Mettere una spunta sul dispositivo che si intende selezionare.

Cartella condivisa

  1. Creare nel sistema host una cartella da condividere (ad esempio ~/condvs-hst).

  2. Creare nel sistema guest una cartella da condividere (ad esempio ~/condvs-gst).

  3. Dal menù Visualizza della macchina virtuale scegliere la voce Dettagli.

  4. Fare clic su Aggiungi hardware.

  5. Scegliere File system.

  6. Impostare:
    • Tipomount

    • Modalitàsquash

    • Percorso sorgente/home/nome_utente/condvs-hst

    • Percorso di destinazione/home/nome_utente/condvs-gst


    Sostituire nome_utente con il proprio nome utente nel sistema operativo.

  7. Fare clic su Fine.

  8. Nel sistema guest digitare nel terminale:

    sudo mount -t 9p -o trans=virtio,version=9p2000.L /condvs-hst /home/tuoutente/condvs-gst

Per eventuali problemi di lettura/scrittura della cartella condivisa agire sui permessi.

Ulteriori risorse


CategoryVirtualizzazione