After installing RHEL 8 with the required libraries and signed vmmon & vmnet, then imported the mok I am still unable to run a virtual machine in VMWare Workstation (the same goes for VMWare Player) This is how I am signing vmmon and vmnet:
openssl req -new -x509 -newkey rsa:2048 -keyout VMWare.priv -outform DEF -out VMWare.der -nodes -days 36500 -subj "/CN=VMware/"
/usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./VMWare.priv ./VMWare.der $(modinfo -n vmmon)
/usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./VMWare.priv ./VMWare.der $(modinfo -n vmnet)
mokutil --import VMWare.der
I successfully import VMWare.der on reboot but I still get the following error:
Could not open /dev/vmmon: No such file or directory. Please make sure that the kernel module `vmmon' is loaded.
Thanks
Graham Harris
Update 1:
I have reverted back to RHEL 7.8, updated, and signed the VMMON & VMNET files, got "Can't read private key", imported the MOK and the installation was borked.
Update 2: On the boot screen the system says
Red Hat Enterprise Linux Server (3.10.0-1127.e17.x86_64) 7.8 (Maipo)
If I update to the latest that is when the system cannot get past the UEFI splash screen.
Update 2
Switched back to RHEL 8, and after importing the MOK I run mokutil -l and the key is not found.
However a recent search found this article on git MOK enrollment silently fails #105
Summary of the issue:
When writing MokList with EFI_VARIABLE_APPEND_WRITE, some HP laptops may just return EFI_SUCCESS without writing the content into the flash, so we have no way to detect if MokList is updated or not. Now we always read MokList first and write it back with the new content.