“Libvirt qemu”用户的目的是什么?

“Libvirt qemu”用户的目的是什么?

在安装某些虚拟化包时作为非系统用户创建的“Libvirt qemu”用户的用途是什么?

哪个包具体做了这个?

答案1

它的创建者是libvirt-bin

$ grep libvirt-qemu /var/lib/dpkg/info/*.postinst
/var/lib/dpkg/info/libvirt-bin.postinst:# Allocated UID and GID for libvirt-qemu
/var/lib/dpkg/info/libvirt-bin.postinst:    if ! getent passwd libvirt-qemu >/dev/null; then
/var/lib/dpkg/info/libvirt-bin.postinst:            libvirt-qemu
/var/lib/dpkg/info/libvirt-bin.postinst:                chown libvirt-qemu:kvm "${dir}"
/var/lib/dpkg/info/libvirt-bin.postinst:    chown libvirt-qemu:kvm /var/lib/libvirt/qemu/channel/target

这是一项安全措施。对于 Web 服务器、邮件服务器、虚拟机管理程序等服务,服务应放弃特权并以非特权用户身份运行,而不是root在完成任何必要的初始化后保持原样。这样,如果服务受到威胁,攻击者就不会获得不受限制的 root 访问权限。对于特别是 libvirt

如果“系统”实例中的 QEMU 虚拟机以非 root 身份运行,则 QEMU 进程能够访问的主机资源将受到更大的限制。

相关内容