Kernel/signature/rpm

Материал из ALT Linux Wiki

Проверка целостности RPM пакетов

Получение RPM ключей и утилит

Актуальные RPM ключи ALT Linux Team находятся в пакете alt-rpmkeys, он установится автоматически вместе с утилитами из alt-rpmkeys-utils:

 # apt-get update
 # apt-get install -y alt-rpmkeys-utils

Проверка целостности пакета с ядром

Пример успешной проверки

Проверка, что RPM пакет подписан ALT Linux Team:

 $ alt-rpmkeys-checksig kernel-image-std-def-5.15.82-alt1.x86_64.rpm
 ALT Sisyphus <alt-sisyphus@altlinux.org>

В случае успеха, утилита выведет кем подписан пакет (это будет email из домена altlinux.org) и код возврата будет 0 (код успешного завершения).

Пример неуспешной проверки

На примере пакета подписанного другим дистрибутивом:

 $ alt-rpmkeys-checksig gpgme-1.15.1-2.fc34.x86_64.rpm
 gpgme-1.15.1-2.fc34.x86_64.rpm:
     Header V4 RSA/SHA256 Signature, key ID 45719a39: NOKEY
     Header SHA1 digest: OK (a16f31f5fac1f230566f97a911467a4cc408ac84)
     Verify signature: BAD PARAMETERS (273 0x55a0a804b1a7 1 (nil) (nil))
     V4 RSA/SHA256 Signature, key ID 45719a39: NOKEY
     MD5 digest: OK (9a61f0ec71eb59a33d6ef08c8b95f8a1)
 alt-rpmkeys-checksig: gpgme-1.15.1-2.fc34.x86_64.rpm: signature verification failed

Обратите внимание на текст signature verification failed, при этом утилита вернет код неуспешного завершения (не 0).

Пример отсутствия подписи

Допустим, вы собирали пакет локально и он не подписан.

 $ alt-rpmkeys-checksig example-1.0-alt1.x86_64.rpm
 alt-rpmkeys-checksig: example-1.0-alt1.x86_64.rpm: signature not found

Обратите внимание на текст signature not found, так же вернется код неуспешного завершения (не 0).