On Thu, 2025-06-05 at 16:34 +0800, Coiby Xu wrote: > On Tue, Jun 03, 2025 at 09:03:22AM -0400, James Bottomley wrote: > > On Tue, 2025-06-03 at 10:52 +0200, Vitaly Kuznetsov wrote: > > > James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> writes: > > [...] > > > > Also, are you sure a config option is the right thing? > > > > Presumably Red Hat wants to limit its number of kernels and the > > > > design of just linking the machine keyring (i.e. MoK) was for > > > > the use case where trust is being pivoted away from db by shim, > > > > so users don't want to trust the db keys they don't control. > > > > If the same kernel gets used for both situations (trusted and > > > > untrusted db) you might want a runtime means to distinguish > > > > them. > > > > > > I was not personally involved when RH put the patch downstream > > > (and wasn't very successful in getting the background story) but > > > it doesn't even have an additional Kconfig, e.g.: > > > https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/commit/03d4694fa6511132989bac0da11fa677ea5d29f6 > > > so apparently there's no desire to limit anything, basically, > > > .platform is always trusted on Fedora/RHEL systems (for a long > > > time already). > > > > It sounds like that's just distro politics: RH wants to enable > > binary modules (by allowing them to be signed) but doesn't want to > > be seen to be signing them (so they can't be signed with the > > embedded RH key) so that gamers can have performant graphics > > drivers and the like. Thus it mixes in the db keyring, which > > usually contains several Microsoft certificates and also one from > > the ODM manufacturer, so now it can send would be shippers of > > binary modules to those groups to get them signed. If you only have > > the built in and MoK keyrings, the only possible signers are either > > RH or the machine owner ... who isn't a single entity to deal > > with. Personally I think this is a bit daft: Debian manages an out > > of tree module infrastructure using DKMS and MoK signing, so I > > can't see why RH can't get it to work in the same way. > > It's interesting to find that although Debian's wiki page [1] only > mentions DKMS and MOK, it actually has the same downstream kernel > patch [2][3] as Fedora/RHEL to allow using db keys to verify kernel > modules. > [1] https://wiki.debian.org/SecureBoot > [2] > https://salsa.debian.org/kernel-team/linux/-/blob/debian/latest/debian/patches/features/all/db-mok-keyring/KEYS-Make-use-of-platform-keyring-for-module-signature.patch?ref_type=heads > [3] > https://sources.debian.org/patches/linux/6.12.30-1/features/all/db-mok-keyring/KEYS-Make-use-of-platform-keyring-for-module-signature.patch/ > Well if you read the attached bug reports: https://bugs.debian.org/935945 https://bugs.debian.org/1030200 You can see that it's people trying to get an external module to work (actually zfs locally signed) by adding keys to MoK and it failed because of a configuration error (CONFIG_INTEGRITY_MACHINE_KEYRING wasn't set). They added this patch as part of the thrashing around trying to fix the problem because they found it in Fedora. Regards, James