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 引入了逐任务权限声明:
- 每个定时任务可指定最小权限(如仅访问特定目录或网络端口)
- 任务运行时强制启用
AppArmor限制,即使脚本被篡改,也无法执行rm -rf / - 审计日志自动上传至
snapd服务端,方便集中监控
实测场景:某团队迁移到 snap 版 cron 后,成功拦截了一次恶意挖矿脚本的注入尝试——该脚本试图通过 curl 下载外部程序,但 AppArmor 策略将其阻断。
对普通用户的影响与建议
你可能没时间研究安全白皮书,但以下三点直接影响你:
-
迁移要主动,别等待强制推送
运行sudo snap install core-cups --beta等命令可提前体验,但注意新版配置路径不同(如/var/snap/cups/common/),备份/etc/cups再操作。 -
警惕“假兼容”
部分老脚本依赖/usr/sbin/cron的路径,snap 版会创建兼容链接,但权限模型变了(比如不再允许root直接修改/etc/crontab),请改用snap get cron查询和修改。 -
磁盘与内存开销
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 版本的实际帮助文档为准。