Я не подписываю свои RPM, но они все равно имеют подписи. "Заголовок V4 RSA/SHA1 подпись: BAD"

Я создаю RPM с помощью sbt-native-packager на моем Mac, который не может быть установлен на машинах RHEL 5, потому что он имеет подпись V4. Результат rpm -v --checksig на моем Mac:

Header V4 RSA/SHA1 signature: OK, key ID f769fd38
Header SHA1 digest: OK (2ee9b411052b2aeadcb0efa5401f246af8ca6e68)
MD5 digest: OK (b78e1256caba2959428b1e5544d562a6)

И результат rpm -v --checksig на машине RHEL 5:

Header V4 RSA/SHA1 signature: BAD, key ID f769fd38
Header SHA1 digest: OK (2ee9b411052b2aeadcb0efa5401f246af8ca6e68)
MD5 digest: OK (b78e1256caba2959428b1e5544d562a6)

Я видел этот ответ, который подразумевал, что это было связано с подписями GPG, но это не суммирует.

RPM-плагин sbt-native-packager не подписывает подписчиков, о чем свидетельствует rpmbuild команда это испускает:

rpmbuild -bb --target noarch-PayPal-Linux --buildroot /Users/2rs2ts/src/my-app/my-app/target/rpm/buildroot --define _topdir /Users/2rs2ts/src/my-app/my-app/target/rpm --define _tmppath /var/folders/gp/l9gt6r791p1bdcgtf2b2dppw392tbp/T/sbt_8f0f0597 myapp.spec

Плюс у меня нет gpg установлен на моем Mac, так что исправление в связанном ответе на самом деле не относится ко мне. Я понимаю что rpm обычно поставляется с установкой gpg поэтому, возможно, он использует это для создания подписей, но я понятия не имею, какой ключ он использует или как заставить его подписать V3 или полностью прекратить подпись. Я не уверен, было ли это последнее утверждение разумным, поскольку у меня очень ограниченный опыт работы с rpm,

Тем не менее я попытался хотя бы изменить ~/.rpmmacros как подсказывало это руководство, но безрезультатно. У меня нет потенциальных клиентов. Почему у моих RPM есть подписи, если я их не подписывал, и как я могу предотвратить появление этих подписей V4?

Отредактируйте по запросу, вот вывод из sbt (я считаю, что строки "error" - это просто особенности реализации, а не фактические ошибки):

[debug] Executing rpmbuild with: rpmbuild -bb --target noarch-PayPal-Linux --buildroot /Users/2rs2ts/src/my-app/my-app/target/rpm/buildroot --define _topdir /Users/2rs2ts/src/my-app/my-app/target/rpm --define _tmppath /var/folders/gp/l9gt6r791p1bdcgtf2b2dppw392tbp/T/sbt_8f0f0597 myapp.spec
[info] Building target platforms: noarch-PayPal-Linux
[info] Executing(%install): /bin/sh -e /var/folders/gp/l9gt6r791p1bdcgtf2b2dppw392tbp/T/sbt_8f0f0597/rpm-tmp.67386
[error] + umask 022
[error] + cd /Users/2rs2ts/src/my-app/my-app/target/rpm/BUILD
[error] + /bin/rm -rf /Users/2rs2ts/src/my-app/my-app/target/rpm/buildroot
[error] + /bin/mkdir -p /Users/2rs2ts/src/my-app/my-app/target/rpm/buildroot
[error] + '[' -e /Users/2rs2ts/src/my-app/my-app/target/rpm/buildroot ']'
[error] + mv /Users/2rs2ts/src/my-app/my-app/target/rpm/tmp-buildroot/etc /Users/2rs2ts/src/my-app/my-app/target/rpm/tmp-buildroot/var /Users/2rs2ts/src/my-app/my-app/target/rpm/tmp-buildroot/x /Users/2rs2ts/src/my-app/my-app/target/rpm/buildroot
[error] + exit 0
[info] Processing files: myapp-VersionNotSet-ReleaseNotSet.noarch
[info] Provides: config(myapp) = 0:VersionNotSet-ReleaseNotSet
[info] Requires(interp): /bin/sh /bin/sh /bin/sh /bin/sh
[info] Requires(pre): /bin/sh
[info] Requires(post): /bin/sh
[info] Requires(preun): /bin/sh
[info] Requires(postun): /bin/sh
[info] Checking for unpackaged file(s): /usr/local/Cellar/rpm/5.4.15/lib/rpm/check-files /Users/2rs2ts/src/my-app/my-app/target/rpm/buildroot
[info] Wrote: /Users/2rs2ts/src/my-app/my-app/target/rpm/RPMS/noarch/myapp-VersionNotSet-ReleaseNotSet.noarch.rpm

1 ответ

Я могу рискнуть предположить: проблема в том, что RSA нарушается несколькими способами в RHEL5 об / мин. Самым простым решением является попытка подписи с DSA, а не с RSA.

DSA "работает" как на MAC, так и на RHEL5?

Другие вопросы по тегам