- MOK (Machine Owner Key) allows the machine owner to sign and authorize binaries and modules to work with Secure Boot active.
- MOK Manager manages key registration using a one-time password, without affecting the booting of Windows 11 on dual boot systems.
- The mokutil tool allows you to check the Secure Boot status, import MOK keys, and adjust advanced policies such as SBAT.
- Using MOK offers a balance between security and flexibility, facilitating custom kernels and drivers without disabling Secure Boot.
If you have ever installed a GNU/Linux distro alongside Windows 11 with Secure Boot enabledYou've probably come across a mysterious blue screen called MOK Manager asking you for a password. For many users, especially those coming from older motherboards without UEFI or TPM, this screen might seem like a fatal error message… but it isn't.
When you're riding a dual boot (For example, Windows 11 on one SSD and Linux Mint, Debian, or Fedora on another drive) and seeing MOK Manager doesn't mean you've broken anything. That screen is part of the system itself. Secure Boot security mechanism And it's there precisely to allow your new Linux system to boot without disabling that feature. Understanding what MOK is, why it asks for a password, and what happens to Windows when you accept those changes will save you from more than one unpleasant surprise.
What is MOK (Machine Owner Key) and why does it exist?
The acronym MOK comes from Machine Owner KeyThat is, the machine owner's key. This key is another piece within the secure boot chain of UEFI systems, designed so that only code that has been verified is executed during boot. approved and cryptographically signed.
With the arrival of UEFI firmware and the famous Secure BootManufacturers (and especially Microsoft) promoted a model in which firmware only trusts binaries signed by specific authorities. In practice, this means that the firmware will verify the signature of components such as shim, GRUB, the kernel and certain modules before letting them start.
The problem is clear: if only "official" signatures are accepted (for example, from Microsoft or the hardware manufacturer), any binary you prepare yourself, any custom kernel, or certain third-party modules (such as VirtualBox or NVIDIA drivers in some cases) would not be considered trustworthy. That's where this comes in. MOK.
The idea is that the machine owner can have their own key to sign components without depending on third parties. This Machine Owner Key can be register in the Secure Boot key databaseso that everything you sign with it is considered equally legitimate and can be executed during startup without violating security policies.
In short, MOK acts as an additional layer that allows you to integrate your own binaries and modules into the secure boot system without having to disable Secure Boot or comply with signatures imposed by others, something especially useful in Linux environments where it is common to compile and load modules outside of the standard repositories.
Relationship between MOK, Secure Boot, UEFI and SHIM
To better understand where MOK fits into the puzzle, it's helpful to review how the UEFI boot process with Secure Boot. In a modern system, the UEFI firmware first checks its key and revocation databases before launching any EFI binary.
In the Linux world, there is almost always an intermediate piece called shimA shim is a small loader signed by a recognized authority (usually Microsoft), which acts as an intermediary between the firmware and the actual boot manager: normally GRUBThus, the firmware trusts shim because it is "officially" signed, and shim, in turn, decides which subsequent binaries it considers valid to continue booting.
It is precisely shim that integrates the use of the Machine Owner Key. Through MOK, shim can trust binaries that You yourself have signedprovided the corresponding public key has been previously registered using the MOK Manager. In this way, the flow would be something like this: UEFI checks the shim signature, shim validates GRUB and the kernel (and its modules) using both the keys included by the distribution and the MOK that you have registered.
Before this method existed, many distributions needed to rely almost entirely on Microsoft's signing infrastructure, which created considerable friction. Now, with MOK, it's not mandatory for everything to go through that centralized signing: the machine owner has a way to assume part of the control of the chain of trust.
In practice, this means that when you install some kernel drivers, virtualization tools like VirtualBox (module vboxdrv) or other components that load very early in the startup process, the system may ask you to generate a key pair, sign the modules, and register them in MOK Manager so that Secure Boot does not block its execution.

What exactly is MOK Manager and why does it ask for a password?
When you see that famous blue "BIOS" screen that mentions MOK ManagerWhat you're running is a small EFI program (usually the file mmx64.efiThis program manages the Machine Owner Keys. It launches immediately after you request any changes to the boot key settings.
The process usually starts from your Linux system, for example, with a command like mokutil –import to register a new public key. That command will ask you to set a temporary, one-time password, necessary so that later, during the reboot, MOK Manager can verify that it is you authorizing the operation and not an attacker.
On the next boot, before loading the system, the UEFI firmware launches shim, and upon detecting a new key pending registration, it launches MOK Manager. This is where the management menu appears, prompting you to perform one of the following actions: Register a new password, delete passwords, view already registered passwords, or continue without changes.
One of the most common mistakes is thinking that the password MOK Manager asks for is your Linux user password, your root password, or even your Windows password. It's not. It's the one-time password that you yourself wrote when running mokutilIf you make a mistake or if the keyboard does not match the expected layout (for example, QWERTY/AZERTY problem), you may think that the key is not being registered correctly when in reality you are just pressing different keys than you think.
After you correctly enter the password, MOK Manager registers the new key in the corresponding database. From that moment on, all binaries and modules signed with that key will be considered trusted by shim and can be run with Secure Boot enabled. This includes custom kernels, third-party modules, or any other component you have chosen to sign.
It is important to emphasize that accepting the registration of a MOK It does not break the Windows 11 boot process. Nor does it invalidate its signature. Windows will continue to boot as usual because what you're doing is adding an additional trusted key, not removing or replacing the ones already present in the system.
MOK in real-world scenarios: dual boot with Windows 11 and new motherboards
One of the most common cases where doubt arises about MOK Manager is when a user, with a modern motherboard that includes UEFI, TPM and Secure Boot Active by default, decide to install a distro like Linux Mint alongside Windows 11. If you're coming from an older motherboard without these features, it's normal that all this sounds like "black magic".
Imagine this scenario: you keep your Windows 11 installation as is on its SSD, enable Secure Boot (because Windows requires it for certain functions), and simultaneously install Linux Mint on another drive. During the Mint installation, or when installing certain drivers afterward, the system may ask you for a MOK passwordThis raises the questions: Will I break Windows if I accept? What happens if I do nothing? Should I disable Secure Boot?
The reality is that, as long as you follow the usual process, There is no risk to the Windows 11 partitionSecure Boot will remain operational, and Windows will continue to boot without issues. All MOK does is tell the firmware to also trust certain Linux components that weren't factory-signed, so it can boot into secure mode without the firmware blocking them.
Many modern distribution installers already automate part of this process. They can generate the key, execute the necessary commands (for example, high-level tools that internally call mokutil –import) and schedule MOK Manager to appear on the next startup so that you only have to accept the registration.
If you're manually configuring more advanced drivers (for example, NVIDIA driver backports and newer kernel versions on distros like Debian Buster to work well on recent gaming laptops), you'll probably need to take some extra steps: create the key pair yourself (usually MOK.pem, MOK.der and MOK.priv), sign the modules and then use mokutil to import the public key.
These files don't need to be in any special system location for MOK Manager to work. What's important is that the public key you imported is accessible at the time of registration and that Store the private key (MOK.priv) in a safe placebecause you will need it every time you want to sign new binaries or modules with that same owner identity.
Using mokutil, key registration, and common problems
The central tool for managing MOK keys from Linux is mokutilThrough this utility you can check the status of Secure Boot, view the keys already registered, import new keys, check which ones are pending, and modify certain advanced policies related to Secure Boot.
For example, to find out if Secure Boot is enabled on your machine, you can use the command mokutil –sb-stateThis command will tell you if the system is booting with Secure Boot enabled, disabled, or in some intermediate state controlled by UEFI.
Once you have your generated key pair (often MOK.pem and MOK.der, along with the private key MOK.priv), the typical step to prepare for enrollment is to run something like: mokutil –import MOK.derWhen you do this, mokutil will ask you for a one-time password, which you must remember because MOK Manager will ask for it upon restart to confirm the operation.
After importing, you can verify that the key has been marked for enrollment with mokutil –list-newYou should see the newly imported key in the list of pending items. If everything is correct, after the next reboot, MOK Manager should appear, prompting you to register the new key and enter the temporary password.
If after restarting nothing appears and the system boots directly to GRUB or the LUKS password prompt, something hasn't finished. In these cases, it's advisable to check the kernel messages, for example with dmesg | grep certto see if there are any references to newly added certificates or keys. It's also a good idea to confirm that the mmx64.efi file (the MOK Manager binary) is present in the directory / boot / efi or a similar route used by your distribution.
Another very common problem has to do with the keyboard layoutThe MOK Manager interface (like the LUKS password prompt in many atomic distributions) doesn't usually respect the keyboard layout configured on your system. It most commonly uses a different layout. US QWERTY by default, which may confuse users with AZERTY keyboards or different regional layouts.
In practice, this means that if your password includes symbols or letters whose position changes on your keyboard, you're likely entering a different sequence than you think. This discrepancy makes it seem like the password "doesn't work," when in reality, it's just interpreting different keys. Therefore, when setting a one-time password in Mokutil, it's advisable to use characters that do not change position between your keyboard and the standard US layout, or mentally figuring out which keys you are actually pressing on that map.
Verification, SBAT and advanced Secure Boot management
In addition to managing the registration of MOK keys, mokutil also allows you to view and adjust some advanced parameters related to the mechanism SBAT (Secure Boot Advanced Targeting)SBAT is used, among other things, to revoke older versions of critical boot components such as shim or GRUB2 using generation numbers.
The most recent versions of mokutil (from approximately 0.6.0 onwards) include options to check and update the SBAT revocation status. With the command mokutil –list-sbat-revocations You can see the current SBAT level your system is operating at, that is, what minimum generation of those binaries is still considered valid.
In many systems with Secure Boot enabled, the default SBAT policy is set to PreviousThis means that the previous revocations apply, but booting a relatively recent version of shim and GRUB2 may still be allowed. If you change the policy with mokutil –set-sbat-policy latestThe final layer of revocations will be applied, preventing older versions of those components from starting up.
Conversely, there is the option of going back to politics. Previous in case of need. Both policies (latest and previous) can only set a revocation level that is no earlier than that applied by the last installed shim package; that is, you will not be able to revert to a less secure situation than that determined by the recent updates.
For extreme diagnostic tasks or if something has broken after a complex update, you may need Reset the SBAT policy to the default revocation level. In such cases, the general recommendation is to disable Secure Boot first in the firmware and only then use a command like mokutil --set-sbat-policy delete, which clears that additional revocation policy so that the system returns to the starting point set by the current firmware and shim.
It's important to keep in mind that playing with SBAT and binary revocation is not something you should do lightly: if you revoke versions you're still using, you can end up with a system that It won't even start in safe mode until you reinstall critical components or reconfigure the UEFI firmware.
Is it really necessary to use MOK and Secure Boot on your computer?
Although from a theoretical point of view this whole mechanism of MOK, Secure Boot, shim, and SBAT provides an interesting layer of security, not all environments have the same needs. In a typical domestic environmentIn a system where the team rarely leaves home and no one else has physical access, the risk of an attacker tampering with the boot process without you noticing is relatively low.
Secure Boot is primarily intended for scenarios where there is concern that someone with physical access could inject malware into the boot chain or replace components with malicious versions. These cases are more common in companies, educational centers, laboratories or shared equipmentwhere there are many users and it is more difficult to control who touches what.
At home, if someone has forced their way in and is sitting down in front of your computer, the biggest problem is probably no longer whether or not they've installed a bootkit on your UEFI. Even so, many people prefer to keep Secure Boot enabled because it's a Windows 11 requirement and because it gives them added peace of mind knowing that the firmware It won't execute just anything without checking it..
That's where MOK becomes a good compromise tool: it allows you to continue enjoying Secure Boot and meet the requirements of Windows 11, but without giving up a fully functional Linux, with proprietary drivers, custom modules or specific kernels that, under normal conditions, Secure Boot would block for not being signed by the "official" entities.
If you don't want to complicate your life, there's always the radical option of disable Secure Boot In the UEFI configuration, you could completely forget about MOK, but you would lose that layer of boot security and, in some cases, you might encounter warnings or limitations from Windows. Therefore, on many modern computers, the most practical approach is to learn to live with Secure Boot and use MOK as a tool to seamlessly integrate your Linux systems.
Ultimately, understanding what MOK Manager is, what mokutil is for, and how these elements work with UEFI, shim, and SBAT will allow you to manage a system with much greater confidence. dual boot or multiboot environmentMOK's blue screens will no longer seem like strange errors and will simply become confirmation that you have control of the keys that govern your machine and what software can run during the first few seconds of your system's life.
Passionate writer about the world of bytes and technology in general. I love sharing my knowledge through writing, and that's what I'll do on this blog, show you all the most interesting things about gadgets, software, hardware, tech trends, and more. My goal is to help you navigate the digital world in a simple and entertaining way.