Linux 代码签名
本指南提供 Linux 包代码签名的相关信息。虽然在 Linux 上部署应用程序不需要工件签名,但它有助于提高已部署应用程序的信任度。对二进制文件进行签名可以让最终用户验证其真实性,并确保其未被其他不可信实体修改。
AppImage 可以使用 gpg 或 gpg2 签名。
必须准备用于签名的密钥。可以使用以下命令生成新密钥:
gpg2 --full-gen-key
有关更多信息,请参阅 gpg 或 gpg2 文档。您应该特别注意将您的私钥和公钥备份到安全位置。
您可以通过设置以下环境变量将签名嵌入到 AppImage 中:
- SIGN:设置为
1
以签署 AppImage。 - SIGN_KEY:可选变量,用于指定 GPG 密钥 ID 进行签名。
- APPIMAGETOOL_SIGN_PASSPHRASE:签名密钥密码。如果未设置,gpg 将显示一个对话框,您可以输入密码。在 CI/CD 平台中构建时必须设置此项。
- APPIMAGETOOL_FORCE_SIGN:默认情况下,即使签名失败也会生成 AppImage。要在错误时退出,可以将此变量设置为
1
。
您可以通过运行以下命令显示嵌入在 AppImage 中的签名:
./src-tauri/target/release/bundle/appimage/$APPNAME_$VERSION_amd64.AppImage --appimage-signature
请注意,您需要根据配置将 $APPNAME 和 $VERSION 的值更改为正确的值。
AppImage 验证工具可以从此处下载。选择其中一个 validate-$PLATFORM.AppImage
文件。
运行以下命令验证签名:
chmod +x validate-$PLATFORM.AppImage./validate-$PLATFORM.AppImage $TAURI_OUTPUT.AppImage
如果签名有效,输出将是:
Validation result: validation successfulSignatures found with key fingerprints: $KEY_ID====================Validator report:Signature checked for key with fingerprint $KEY_ID:Validation successful
© 2025 Tauri 贡献者。CC-BY / MIT