Reputation: 22234
Upvotes: 8
Views: 16918
Reputation: 22234
On Linux host with secure mode enabled, it is not allowed to load any unsigned drivers. Due to this, VMware drivers, such as vmmon and vmnet, are not able to be loaded which prevents virtual machine to power on.
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VMWare"
sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmmon)
sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmnet)
sudo mokutil --import MOK.der
sudo shutdown -r now
During the very next startup, you may need to enter MOK Management during boot, and select "ENROLL MOK" to import the key, and reboot once more.
Upvotes: 10
Reputation: 31
Ubuntu 20.04 solution that worked for me:
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VMWare"
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmmon)
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmnet)
sudo su
mokutil --import MOK.der
input password:
input password again:
exit
sudo shutdown -r now
At startup "ENROLL MOK" and "Restart" again.
Upvotes: 3
Reputation: 379
This may work with Ubuntu but with RHEL 7.8/8 I use the following commands (as root):
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
reboot
I get Cant't find private key
when I sign vmnet/vmmon however, other articles on the internet have indicated that this is OK.
The mok is imported and then I try to run VMWare and I get Could not open /dev/vmmon: No such file or directory. Please make sure that the kernel module 'vmmon' is loaded.
. If I make sure RHEL 7.8 is fully up to date the computer does not get the UEFI splash screen.
This is my post on the Unix/Linux stack exchange channel https://unix.stackexchange.com/questions/605037/unable-to-run-vmware-on-rhel-8-after-signing-vmmon-and-vmnet
Upvotes: 1