From: Kevin Locke Date: Tue, 25 Aug 2020 13:31:27 +0000 (-0600) Subject: apparmor: allow libvirtd to call virtiofsd X-Git-Tag: v6.7.0-rc1~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=44cbd3afaf9b6ba84af9b68825cede9ff60e1138;p=thirdparty%2Flibvirt.git apparmor: allow libvirtd to call virtiofsd When using [virtiofs], libvirtd must launch [virtiofsd] to provide filesystem access on the host. When a guest is configured with virtiofs, such as: Attempting to start the guest fails with: internal error: virtiofsd died unexpectedly /var/log/libvirt/qemu/$name-fs0-virtiofsd.log contains (as a single line, wrapped below): libvirt: error : cannot execute binary /usr/lib/qemu/virtiofsd: Permission denied dmesg contains (as a single line, wrapped below): audit: type=1400 audit(1598229295.959:73): apparmor="DENIED" operation="exec" profile="libvirtd" name="/usr/lib/qemu/virtiofsd" pid=46007 comm="rpc-worker" requested_mask="x" denied_mask="x" fsuid=0 ouid=0 To avoid this, allow execution of virtiofsd from the libvirtd AppArmor profile. [virtiofs]: https://libvirt.org/kbase/virtiofs.html [virtiofsd]: https://www.qemu.org/docs/master/interop/virtiofsd.html Signed-off-by: Kevin Locke Reviewed-by: Christian Ehrhardt --- diff --git a/src/security/apparmor/usr.sbin.libvirtd.in b/src/security/apparmor/usr.sbin.libvirtd.in index 4518e8f865..f2030764cd 100644 --- a/src/security/apparmor/usr.sbin.libvirtd.in +++ b/src/security/apparmor/usr.sbin.libvirtd.in @@ -89,6 +89,7 @@ profile libvirtd @sbindir@/libvirtd flags=(attach_disconnected) { /usr/lib/xen-*/bin/libxl-save-helper PUx, /usr/lib/xen-*/bin/pygrub PUx, /usr/{lib,lib64,lib/qemu,libexec}/vhost-user-gpu PUx, + /usr/{lib,lib64,lib/qemu,libexec}/virtiofsd PUx, # Required by nwfilter_ebiptables_driver.c:ebiptablesWriteToTempFile() to # read and run an ebtables script.