Skip to content
Snippets Groups Projects
virtual.mdwn 2.74 KiB
Newer Older
  • Learn to ignore specific revisions
  • rhatto's avatar
    rhatto committed
    [[!meta title="Virtualized GUI environments"]]
    
    Can't or don't want to use [Qubes OS](https://www.qubes-os.org/)? Here comes a straightforward sollution
    that, while not offering the same level of security, is practical enough to be implemented in the confort
    of your current FOSS OS!
    
    rhatto's avatar
    rhatto committed
    
    
    rhatto's avatar
    rhatto committed
    A picture
    ---------
    
    rhatto's avatar
    rhatto committed
    
    
    rhatto's avatar
    rhatto committed
    Could you spot the difference between the Tor Browser running in the host for the one inside the virtual machine? That's what we want to achieve!
    
    rhatto's avatar
    rhatto committed
    
    
    rhatto's avatar
    rhatto committed
    ![Screenshot](screenshot.png)
    
    First things first
    ------------------
    
    What you can do:
    
    
    rhatto's avatar
    rhatto committed
    1. Create a virtual machine image of the operating system of your choice like [this example](https://padrao.fluxo.info/boxes/).
    
    rhatto's avatar
    rhatto committed
    2. Setup basic X11 environment with automatic login and startup programs.
    3. Configure your hypervisor to hide icons and additional decorations around the virtual machine.
    4. Setup key bindings on your window manager to start/resume and stop/suspend the virtual machine.
    
    Debian desktop
    --------------
    
    When using a debian virtual machine as a virtual desktop, consider the following:
    
    
    rhatto's avatar
    rhatto committed
        apt-get install lightdm ratpoison
    
    rhatto's avatar
    rhatto committed
    
    Make sure to configure `/etc/lightdm/lightdm.conf` with something like
    
        autologin-user=vagrant
        autologin-user-timeout=0
    
    If using VirtualBox, you might also want to try [virtualbox-guest-x11](https://packages.debian.org/stable/virtualbox-guest-x11).
    
    Features
    --------
    
    * Good security through isolation.
    * Improved start/stop of your application by using virtual machine suspend/resume.
    * Minor performance penalties while running the virtual machine.
    
    Limitations
    -----------
    
    * Memory and disk consumption.
    * Clipboard might still be available to the virtual environment, see [this discussion](http://theinvisiblethings.blogspot.com.br/2011/04/linux-security-circus-on-gui-isolation.html).
    
    Future
    ------
    
    
    rhatto's avatar
    rhatto committed
    * This should be better documented!
    
    rhatto's avatar
    rhatto committed
    * Automated expendable snapshots for one-time-use virtual machines.
    * Automated recipes (puppet/ansible).
    * Vagrant integration for fast provisioning of golden images.
    * Alternatives to the VirtualBox hypervisor.
    
    rhatto's avatar
    rhatto committed
    
    References
    ----------
    
    
    rhatto's avatar
    rhatto committed
    Applications:
    
    
    * [kvmx script](https://git.fluxo.info/kvmx).
    * [vbox script](https://git.fluxo.info/vbox).
    
    rhatto's avatar
    rhatto committed
    * [plymouth - Debian Wiki](https://wiki.debian.org/plymouth).
    
    rhatto's avatar
    rhatto committed
    * [SPICE Project](http://www.spice-space.org/).
    
    rhatto's avatar
    rhatto committed
    
    Other implementations:
    
    
    rhatto's avatar
    rhatto committed
    * [Marco Carnut: Ambiente "Auto-Limpante" via Virtualização Ultra-Leve Descartável - Tempest Blog](http://blog.tempest.com.br/marco-carnut/ambiente-auto-limpante-via-virtualizacao-ultra-leve-descartavel.html).
    * [Subgraph OS and Mail](https://subgraph.com/sgos/index.en.html).
    
    rhatto's avatar
    rhatto committed
    
    Tips:
    
    * If using Firefox, try to disable hardware graphics acceleration as it might impact performance and produce graphics artifacts. This behavior was seem on VMs running with qemu-kvm with SPICE.