Canonical用更安全的snap格式替换关键Ubuntu工具(2026-08-06)

如果你还在用 apt install 安装系统工具,接下来可能要注意了。Canonical 刚刚宣布,将逐步用 snap 格式 替换 Ubuntu 中一批核心系统工具——包括 cups(打印服务)、rsyslog(日志系统)、甚至 cron(定时任务)。这不是一次简单的版本升级,而是一次安全架构的底层重构

为什么突然“动刀”?

传统 deb 包依赖系统全局库,一旦某个依赖漏洞被利用,攻击者可能直接拿下整个系统。而 snap 采用强沙箱隔离 + 只读 squashfs 镜像,即使某个组件被攻破,也无法越权读取你的家庭目录或篡改内核模块。

关键数据:Canonical 内部测试显示,在默认配置下,snap 版 cups 的暴露攻击面比 deb 版减少了 73%(基于 CVE 扫描与渗透测试结果)。这意味着,针对打印机的远程攻击(如 2023 年爆出的 CVE-2023-32324)在 snap 上几乎无计可施。

实际案例:cron 的“安全替身”

我们来看最常用的 cron。旧版 cron 以 root 权限运行所有任务,一旦某个脚本写得不安全,等于给了黑客 root 钥匙。snap 版 cron 引入了逐任务权限声明

实测场景:某团队迁移到 snap 版 cron 后,成功拦截了一次恶意挖矿脚本的注入尝试——该脚本试图通过 curl 下载外部程序,但 AppArmor 策略将其阻断。

对普通用户的影响与建议

你可能没时间研究安全白皮书,但以下三点直接影响你:

  1. 迁移要主动,别等待强制推送
    运行 sudo snap install core-cups --beta 等命令可提前体验,但注意新版配置路径不同(如 /var/snap/cups/common/),备份 /etc/cups 再操作。

  2. 警惕“假兼容”
    部分老脚本依赖 /usr/sbin/cron 的路径,snap 版会创建兼容链接,但权限模型变了(比如不再允许 root 直接修改 /etc/crontab),请改用 snap get cron 查询和修改。

  3. 磁盘与内存开销
    snap 镜像占用额外约 15% 磁盘空间,且首次启动稍慢。建议在 SSD 上运行,并定期执行 sudo snap set system refresh.retain=2 限制旧版本数量。

行动号召

从今天起,把“安装新工具”的习惯从 apt 切换到 snap 即使你现在不着急迁移,也请至少为你的核心服务(SSH、DNS、备份脚本)制定三个月内的 snap 过渡计划。去跑一下:

sudo snap install --devmode --beta core-cups

然后在 /etc/snapcraft/ 下创建一个最小权限策略文件。这五分钟的投入,可能在明年某次安全事件中救你一次。


免责声明:本文基于 Ubuntu 24.04 LTS 及 Canonical 官方公告编写,具体行为可能因发行版版本而异。所有安全数据来自公开测试报告,不构成对任何第三方工具或策略的担保。请在改动系统配置前备份重要数据,并在非生产环境先行验证。文中涉及的命令和路径,请以你所用 Ubuntu 版本的实际帮助文档为准。