主要观点:几年前作者曾介绍过在主机器上沙盒化不太信任应用的方法,现在方法改变需更新。作者不再使用 Firejail,而是采用 Flatpak 和 BubbleBox 相结合的方式。
关键信息:
- Firejail 配置易在更新时出错且调试困难,配置文件行数多且复杂。
- Flatpak 是由他人维护的易维护沙盒,对于有 Flatpak 的软件如 Signal 或 Zoom 是首选,但默认配置可能过宽。可通过全局覆盖来避免,还可使用 Flatseal 检查和更改权限。
- 并非所有软件都有 Flatpak 版本,如 Factorio 和 VSCodium 等有时需要在主机系统上运行但不访问主目录所有内容,bubblewrap 可提供解决方案,作者围绕其写了 BubbleBox 项目,周末添加了对 xdg-dbus-proxy 的支持,可让沙盒化应用访问特定 D-Bus 功能。
- 还有其他基于 bubblewrap 的沙盒解决方案,如 bubblejail、sloonz 的脚本等,作者在创作过程中也参考了它们。使用 bubblewrap 和 xdg-dbus-proxy 很愉快,它们出自 Flatpak 项目且易于使用和组合。
重要细节: - Flatpak 的全局覆盖配置:[Context]部分禁止 gpg-agent、pcsc、ssh-auth、system-bus、session-bus 等套接字,禁止 ~/.XCompose、xdg-config/fontconfig 以外的文件系统访问,禁止 ~/.gnupg、~/.ssh、xdg-documents、home、host 等;[Session Bus Policy]部分禁止 org.freedesktop.Flatpak 和 org.freedesktop.secrets。
- BubbleBox 是作者围绕 bubblewrap 写的项目,用于更方便地配置和管理沙盒。
- 提及 cargo-script 未来可能用于重写相关内容。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。