news 2026/4/15 10:29:40

Debian packages 的签名与验证

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Debian packages 的签名与验证

1. 生成 GPG 密钥

首先需要生成 GPG (GNU Privacy Guard)密钥对用于签名:

# 生成 GPG 密钥 gpg --gen-key # 选择密钥类型(推荐 RSA) # 选择密钥大小(推荐 2048 或 4096) # 设置密钥有效期(0 表示永不过期) # 输入姓名、邮箱和注释信息 # 设置保护私钥的密码

查看生成的密钥:

gpg --list-keys

2. 导出公钥

将公钥导出以便其他人可以验证你的签名:

# 导出公钥到文件 gpg --armor --export your-email@example.com > public-key.gpg # 或者直接显示在终端 gpg --armor --export your-email@example.com

3. 安装 dpkg-sig 工具

sudo apt-get install dpkg-sig

4. 签名 Debian 包

使用 dpkg-sig 对 Debian 包进行签名:

# 获取 GPG 密钥 ID(从 gpg --list-keys 输出中获取) gpg --list-keys # 使用 dpkg-sig 签名包 dpkg-sig -k <GPG密钥ID> --sign builder package-name.deb # 示例 dpkg-sig -k E5124174 --sign builder aribas_1.64-6_amd64.deb

5. 验证签名

在同一台机器上验证:

dpkg-sig --verify package-name.deb

如果验证成功,将显示GOODSIG

在其他机器上验证:

  1. 首先导入签名者的公钥:

gpg --import public-key.gpg
  1. 然后验证包签名:

dpkg-sig --verify package-name.deb

6. 常见问题解决

旧版本 dpkg-sig 的兼容性问题

如果遇到BADSIG错误(特别是对于 xz 压缩的包),可能是 dpkg-sig 版本过旧:

# 手动下载新版本 wget http://archive.ubuntu.com/ubuntu/pool/main/d/dpkg-sig/dpkg-sig_0.13.1+nmu4_all.deb # 解压并提取可执行文件 ar vx dpkg-sig_0.13.1+nmu4_all.deb tar -xvf data.tar.xz # 使用新版本验证 ./usr/bin/dpkg-sig --verify package-name.deb

7. 完整流程示例

# 1. 生成密钥 gpg --gen-key # 2. 查看密钥ID gpg --list-keys # 3. 签名包 dpkg-sig -k E5124174 --sign builder my-package.deb # 4. 验证签名 dpkg-sig --verify my-package.deb # 5. 导出公钥供他人使用 gpg --armor --export your-email@example.com > my-public-key.gpg

注意事项

  • 确保使用足够强度的密钥(2048位或以上)

  • 妥善保管私钥和密码

  • 在验证环境中正确导入公钥

  • 定期更新密钥和检查签名有效性

通过以上步骤,你可以确保 Debian 包的完整性和来源可信性,满足安全标准要求。

参考:

https://hussainaliakbar.github.io/generating-and-using-GPG-keys/ https://hussainaliakbar.github.io/digitally-signing-and-verification-of-debian-packages-with-dpkg-sig/

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/6 21:11:41

Java计算机毕设之基于springboot的企业内部知识产权管理系统基于SpringBoot+Vue的企业内部知识产权管理系统(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/11 4:17:04

【毕业设计】基于springboot的面向大学生的职业兴趣评估与就业指导平台(源码+文档+远程调试,全bao定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/4 0:30:59

Java毕设项目推荐-基于springboot高校学生就业信息推送系统springboot的面向大学生的职业兴趣评估与就业指导平台【附源码+文档,调试定制服务】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/8 15:28:02

【课程设计/毕业设计】基于Spring boot食品安全信息管理系统基于springboot的食品安全管理系统【附源码、数据库、万字文档】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/14 14:24:55

维基百科志愿者创建AI写作特征库,现推出插件帮助规避检测

上周六&#xff0c;科技企业家Siqi Chen发布了一个开源插件&#xff0c;专门用于Anthropic公司的Claude Code AI助手&#xff0c;该插件能指导AI模型避免使用典型的AI写作风格。这个名为"Humanizer"的简单提示插件向Claude提供了一份包含24种语言和格式模式的清单&am…

作者头像 李华