]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
spec: Restrict virt-login-shell usage
authorJiri Denemark <jdenemar@redhat.com>
Fri, 22 Nov 2013 11:13:03 +0000 (12:13 +0100)
committerJiri Denemark <jdenemar@redhat.com>
Fri, 22 Nov 2013 13:57:23 +0000 (14:57 +0100)
https://bugzilla.redhat.com/show_bug.cgi?id=1033614

As virt-login-shell is an SUID binary, we should restrict its usage to
just the users chosen by an administrator to use virt-login-shell as
their login shell. This can easily be done by making the binary
executable only by users from a new virtlogin group.

libvirt.spec.in

index a5b01dffbc22a180c96d5b64df2fa412a99258ee..864fbf44f328e971df5ac63dcf48f6d740867fe6 100644 (file)
@@ -1727,6 +1727,12 @@ if getent group sanlock > /dev/null ; then
 fi
 %endif
 
+%if %{with_lxc}
+%pre login-shell
+getent group virtlogin >/dev/null || groupadd -r virtlogin
+exit 0
+%endif
+
 %files
 %defattr(-, root, root)
 
@@ -2072,7 +2078,7 @@ fi
 
 %if %{with_lxc}
 %files login-shell
-%attr(4755, root, root) %{_bindir}/virt-login-shell
+%attr(4750, root, virtlogin) %{_bindir}/virt-login-shell
 %config(noreplace) %{_sysconfdir}/libvirt/virt-login-shell.conf
 %{_mandir}/man1/virt-login-shell.1*
 %endif