[Bug 522845] Re: compiling with libcap-ng disallows qemu/kvm access to files not owned by root when not using AppArmor

Jamie Strandboge jamie at ubuntu.com
Thu Feb 18 17:46:50 GMT 2010


** Description changed:

  libvirt in 10.04 is now compiled with libcap-ng. According to http://libvirt.org/drvqemu.html#securitycap this will affect QEMU/KVM access to files if libvirt is configured to launch VMs as root (the default in Ubuntu, see bug #522619 for why). From the libvirt.org page:
  "The Linux capability feature is thus aimed primarily at the scenario where the QEMU processes are running as root. In this case, before launching a QEMU virtual machine, libvirtd will use libcap-ng APIs to drop all process capabilities. It is important for administrators to note that this implies the QEMU process will only be able to access files owned by root, and not files owned by any other user."
  
  As it happens, the AppArmor security driver (which is enabled by
  default) disallows the SETPCAP capability, which is needed to drop these
- capabilities. As such, these capabilties is not dropped and libvirt
+ capabilities. As such, these capabilties are not dropped and libvirt
  behaves in much the same way as it would without being compiled with
  libcap-ng, like in previous releases of Ubuntu (this is not a security
  issue because the VM is confined by a restrictive AppArmor profile).
- This means that accesses VMs in $HOME still work.
+ This means that accessing VMs in $HOME still work.
  
  However (and this is where the potential problem is) if someone disables the AppArmor security driver or adds this capability to the AppArmor profile, then SETPCAP is available and any VMs that need access to disk files, etc not owned by root will break with the following in /var/log/libvirt/qemu/<machine>.log:
  qemu: could not open disk image /home/.../disk0.qcow2: Permission denied
  
  This could be a serious regression for people using QEMU/KVM without
  AppArmor.
  
  ProblemType: Bug
  Architecture: i386
  Date: Tue Feb 16 14:30:49 2010
  DistroRelease: Ubuntu 10.04
  InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Alpha i386 (20100130)
  Package: libvirt-bin 0.7.5-5ubuntu7
  ProcEnviron:
-  PATH=(custom, user)
-  LANG=en_US.utf8
-  SHELL=/bin/bash
+  PATH=(custom, user)
+  LANG=en_US.utf8
+  SHELL=/bin/bash
  ProcVersionSignature: Ubuntu 2.6.32-13.18-generic
  SourcePackage: libvirt
  Uname: Linux 2.6.32-13-generic i686

-- 
compiling with libcap-ng disallows qemu/kvm access to files not owned by root when not using AppArmor
https://bugs.launchpad.net/bugs/522845
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to libvirt in ubuntu.



More information about the Ubuntu-server-bugs mailing list