• S
    security: Label the external swtpm with SELinux labels · 2fc665bb
    Stefan Berger 提交于
    In this patch we label the swtpm process with SELinux labels. We give it the
    same label as the QEMU process has. We label its state directory and files
    as well. We restore the old security labels once the swtpm has terminated.
    
    The file and process labels now look as follows:
    
    Directory: /var/lib/libvirt/swtpm
    
    [root@localhost swtpm]# ls -lZ
    total 4
    rwx------. 2 tss  tss  system_u:object_r:svirt_image_t:s0:c254,c932 4096 Apr  5 16:46 testvm
    
    [root@localhost testvm]# ls -lZ
    total 8
    -rw-r--r--. 1 tss tss system_u:object_r:svirt_image_t:s0:c254,c932 3648 Apr  5 16:46 tpm-00.permall
    
    The log in /var/log/swtpm/libvirt/qemu is labeled as follows:
    
    -rw-r--r--. 1 tss tss system_u:object_r:svirt_image_t:s0:c254,c932 2237 Apr  5 16:46 vtpm.log
    
    [root@localhost 485d0004-a48f-436a-8457-8a3b73e28567]# ps auxZ | grep swtpm | grep ctrl | grep -v grep
    system_u:system_r:svirt_t:s0:c254,c932 tss 25664 0.0  0.0 28172  3892 ?        Ss   16:57   0:00 /usr/bin/swtpm socket --daemon --ctrl type=unixio,path=/var/run/libvirt/qemu/swtpm/testvm-swtpm.sock,mode=0660 --tpmstate dir=/var/lib/libvirt/swtpm/testvm/tpm1.2 --log file=/var/log/swtpm/libvirt/qemu/testvm-swtpm.log
    
    [root@localhost 485d0004-a48f-436a-8457-8a3b73e28567]# ps auxZ | grep qemu | grep tpm | grep -v grep
    system_u:system_r:svirt_t:s0:c254,c932 qemu 25669 99.0  0.0 3096704 48500 ?    Sl   16:57   3:28 /bin/qemu-system-x86_64 [..]
    Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com>
    Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
    Reviewed-by: NJán Tomko <jtomko@redhat.com>
    2fc665bb
qemu_tpm.c 20.1 KB