Eu também não pude ter gpg2 --locate-keys
funcionando. Aqui estão os passos que funcionaram para mim.
Download do kernel:
$ curl -O https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.15.10.tar.xz
$ curl -O https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.15.10.tar.sign
Descompacte o kernel:
$ unxz linux-4.15.10.tar.xz
Tente verificar o kernel:
$ gpg2 --verify linux-4.15.10.tar.sign
gpg: assuming signed data in 'linux-4.15.10.tar'
gpg: Signature made Thu 15 Mar 2018 12:57:15 PM MSK
gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E
gpg: Can't check signature: No public key
A verificação falhará, mas você receberá a impressão digital da chave RSA: 647F28654894E3BD457199BE38DBBDC86092693E
. Agora receba a chave pública correspondente com gpg2 --recv-keys
:
$ gpg2 --recv-keys 647F28654894E3BD457199BE38DBBDC86092693E
gpg: key 38DBBDC86092693E: public key "Greg Kroah-Hartman <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1
Agora você tem chave pública para a impressão digital mencionada acima. Se você verificar o kernel novamente, receberá um aviso:
$ gpg2 --verify linux-4.15.10.tar.sign
gpg: assuming signed data in 'linux-4.15.10.tar'
gpg: Signature made Thu 15 Mar 2018 12:57:15 PM MSK
gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E
gpg: Good signature from "Greg Kroah-Hartman <[email protected]>" [unknown]
gpg: aka "Greg Kroah-Hartman <[email protected]>" [unknown]
gpg: aka "Greg Kroah-Hartman (Linux kernel stable release signing key) <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 647F 2865 4894 E3BD 4571 99BE 38DB BDC8 6092 693E
Assim como a página kernel.org oficial diz, você pode optar por usar o modelo de confiança TOFU e verificar o kernel usando isso:
$ gpg2 --tofu-policy good 647F28654894E3BD457199BE38DBBDC86092693E
...
$ gpg2 --trust-model tofu --verify linux-4.15.10.tar.sign
gpg: assuming signed data in 'linux-4.15.10.tar'
gpg: Signature made Thu 15 Mar 2018 12:57:15 PM MSK
gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E
gpg: checking the trustdb
gpg: no ultimately trusted keys found
gpg: Good signature from "Greg Kroah-Hartman <[email protected]>" [full]
gpg: aka "Greg Kroah-Hartman <[email protected]>" [full]
gpg: aka "Greg Kroah-Hartman (Linux kernel stable release signing key) <[email protected]>" [full]
gpg: [email protected]: Verified 1 signature in the past 0 seconds. Encrypted 0 messages.
gpg: [email protected]: Verified 1 signature in the past 0 seconds. Encrypted 0 messages.
gpg: [email protected]: Verified 1 signature in the past 0 seconds. Encrypted 0 messages.
A verificação está concluída. O modelo de confiança TOFU é salvo como padrão, portanto, depois, você pode usar apenas gpg2 --verify linux-4.15.10.tar.sign
para fazer verificações adicionais.