Ubuntu 隐私防护与利用 Exploit 的边界
一、先划定边界与原则
- 任何“Exploit”都指对系统进行未授权利用,可能触犯法律并损害他人隐私;本文仅讨论在 Ubuntu 上合法、可审计的隐私防护与加固措施。
- 隐私保护的核心在于:最小化暴露(身份、设备、行为)、最小化权限(应用沙盒)、最小化留存(日志、遥测、缓存)、可验证与可撤销(加密、备份、审计)。
二、安装与启动阶段的基础防护
- 启用全盘加密(LUKS):在安装器中勾选“Encrypt the new Ubuntu installation for security”,使用强口令并妥善离线备份恢复密钥。此步骤应在安装时完成,后期开启通常需要备份数据并重装。若使用命令行配置,可启用完整性校验(如 cryptsetup 的 –integrity)以降低篡改风险。
- 加密交换空间:优先使用加密交换分区或 ZRAM(部分发行版在安装时随加密盘自动配置)。这可防止明文敏感数据进入交换区被离线提取。
- 固件与 BIOS 层:启用 Secure Boot 以阻止未签名引导代码;为 BIOS/UEFI 管理员口令与硬盘 ATA 密码设置强口令,降低物理接触场景的数据泄露风险。
三、系统与网络层面的隐私设置
- 网络可识别性最小化:
- 随机化 Wi‑Fi MAC 地址:创建文件 /etc/NetworkManager/conf.d/00-macrandomize.conf,设置
- [connection]
- wifi.cloned-mac-address=random
- 然后重启 NetworkManager(sudo systemctl restart NetworkManager)。注意:随机 MAC 依赖网卡固件支持。
- 将主机名设为 localhost,减少局域网/日志中的设备标识暴露。
- 系统与软件遥测最小化:
- Ubuntu 的“欢迎向导”中可选择不发送系统信息;若已发送,可用命令强制发送“选择退出”报告:
- 关闭“错误报告”(apport)与“使用情况统计”(popularity-contest):
- sudo ubuntu-report -f
- echo ‘popularity-contest popularity-contest/participate boolean false’ | sudo debconf-set-selections && sudo dpkg-reconfigure popularity-contest
- 桌面与应用行为:
- 在“设置 → 隐私”中关闭“包含在线搜索结果”与“记录活动”(历史记录、最近使用等),减少本地与远端行为关联。
四、应用沙盒与权限最小化
- Flatpak 应用:
- 使用 Flatseal 或命令行对应用进行权限覆写,优先撤销宽泛权限,按需授予:
- 撤销网络:–nofilesystem=home(或精确目录)、–share=network=no
- 撤销音频:–socket=pulseaudio=no
- 撤销摄像头/设备:–device=all=no
- 在 Wayland 环境下可禁用 X11 与 IPC:–nosocket=x11、–unshare=ipc
- 文件系统遵循“默认拒绝,按需放行”原则:先移除 –filesystem=home/host,测试通过后再对特定目录放行;避免开启“无人值守自动更新”,以免上游新增权限被静默授予。
- Snap 应用:
- 优先选择“严格”限制的 snap;避免“经典”限制包(等效的 .deb 通常更可控)。
- 在 Ubuntu 之外的大多数系统需启用 cgroups v1(内核参数 systemd.unified_cgroup_hierarchy=0)以兼容 Snap 的沙盒;在 Ubuntu 上由系统管理。
- 通过 Snap Store 或控制中心管理接口/权限,定期审查已授予的接口与设备访问。
五、文件级加密与密钥管理
- 使用 **Seahorse(密码和密钥)**管理 GPG 密钥,创建 2048/4096 位密钥对用于文件/邮件加密与签名;在 Ubuntu 22.04+ 如需在文件管理器右键“加密”,安装扩展:sudo apt install seahorse-nautilus。
- 文件/文件夹加密实操:
- 单文件/目录:右键选择“加密”,选择接收者的公钥,生成 .pgp 加密文件;解密时右键“解密”并输入口令/使用密钥环。
- 目录归档加密:先压缩为 ZIP/7z 并设置密码,适合临时分享与跨平台场景。
- 旧方案提示:如 CryptKeeper 曾被报告存在“万能密码”漏洞,不建议使用;如需“登录即挂载”的私有目录,可考虑 ecryptfs-utils(现代系统更推荐 LUKS 全盘加密)。