apt-key 命令超详细使用文档(Debian/Ubuntu 密钥管理)

发布时间:2026/7/10 22:13:24
apt-key 命令超详细使用文档(Debian/Ubuntu 密钥管理) 一、命令简介apt-key是Debian/Ubuntu系列系统中用于管理 APT 软件源GPG 密钥的工具用于校验软件包的完整性与真实性防止篡改与恶意源。⚠️重要提示自 APT 1.1 起apt-key add / del等直接操作全局密钥环的命令已弃用deprecated新版系统推荐使用密钥隔离的更安全方案。二、语法格式bash运行# 主语法 apt-key [选项] 命令 [命令参数] # 传统语法已弃用旧脚本常见 apt-key 命令 [命令参数]必须使用sudo/root权限执行三、常用选项及说明3.1 通用选项表格选项说明--keyring 文件名指定密钥环文件替代默认全局环-v, --verbose详细输出-q, --quiet安静模式--version查看版本--help帮助信息3.2 传统常用命令传统部分已弃用表格命令说明list列出所有已信任的 APT GPG 密钥add 文件弃用添加密钥到全局环del 密钥 ID弃用从全局环删除密钥adv传递参数给底层 gpgnet-update从密钥服务器更新四、示例用法4.1 列出所有受信任密钥bash运行sudo apt-key list4.2 添加密钥传统弃用 VS 现代推荐场景添加repo-key.ascbash运行# 传统方法已弃用 sudo apt-key add repo-key.asc # 现代方法 1放入 trusted.gpg.d推荐 sudo cp repo-key.asc /etc/apt/trusted.gpg.d/ # 现代方法 2源文件指定 signed-by最安全 # 编辑 /etc/apt/sources.list.d/xxx.list deb [signed-by/usr/share/keyrings/my-repo-key.gpg] https://repo.example.com/debian stable main4.3 从密钥服务器添加密钥bash运行# 传统方法已弃用 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABCDEF1234567890 # 现代方法独立密钥环 sudo gpg --no-default-keyring \ --keyring /etc/apt/trusted.gpg.d/my-repo.gpg \ --keyserver keyserver.ubuntu.com \ --recv-keys ABCDEF12345678904.4 删除密钥bash运行# 传统方法已弃用 sudo apt-key del ABCDEF12 # 现代方法直接删除密钥文件 sudo rm /etc/apt/trusted.gpg.d/xxx.gpg五、注意事项弃用警告add/del直接操作/etc/apt/trusted.gpg全局密钥环一钥泄漏全源风险已不推荐。现代最佳实践密钥隔离每个源使用独立密钥文件互不干扰优先在sources.list中用[signed-by/path/key.gpg]绑定密钥文件放/usr/share/keyrings/或/etc/apt/trusted.gpg.d/密钥格式必须是ASCII 装甲格式.asc以-----BEGIN PGP PUBLIC KEY BLOCK-----开头二进制.gpg需用gpg --dearmor转换权限操作/etc/apt/下文件必须用sudo作用说明密钥用于验证Release/InRelease元数据签名保障源可信而非逐个校验包