读取系统状态
通过 fwupd D-Bus、/proc/cmdline、/proc/sys、DMI / 设备树、Flatpak 目录与 USB 总线等只读来源,采集当前机器的真实状态。
ComputeSec 是一个基于 GTK4 的 Linux 桌面安全评估工具。它读取你的系统状态,与安全基线对比,用通俗的语言解释每一项检查的意义与缺失的危害,并给出可以直接复制粘贴的修复方法。做得好的地方会用绿色告诉你:继续保持!🤗
不是冷冰冰的一长串 PASS / FAIL,而是告诉你「这是什么、缺了会怎样、现在该怎么做」。
通过 fwupd D-Bus、/proc/cmdline、/proc/sys、DMI / 设备树、Flatpak 目录与 USB 总线等只读来源,采集当前机器的真实状态。
内置 HSI 说明、按架构区分的内核参数与 sysctl 加固列表、厂商安全信誉库,逐项比对,找出缺失与风险。
用通俗语言解释每项检查的意义与危害,按「操作系统内 / 固件设置中」分组给出可直接复制粘贴的修复步骤。
从最底层的固件安全,到日常使用习惯,一站式呈现在一个原生 GNOME 风格的窗口里。
一眼看清整体状况。
通过 fwupd D-Bus(或 fwupdmgr security)获取 HSI 检测结果,逐项解释含义与未开启时的危害;「您可以修复」栏目按「操作系统内」与「固件设置中」分组给出具体步骤,涵盖 IOMMU、Kernel Lockdown、加密 swap、Secure Boot、TPM、s2idle 等要点。
读取 /proc/cmdline 与 /proc/sys(等价于 sysctl -a),按当前架构分别与内置 amd64 / aarch64 推荐 kargs 与 sysctl 加固列表对比。
读取 DMI / 设备树识别硬件厂商,并对照内置的厂商安全信誉库。对存在安全污点的品牌,提示不建议用于高安全性计算环境。
安全不只是配置,也关乎日常。这一页关注那些容易被忽视的使用方式。
克隆直接运行适合开发者,以及想随时跟进最新代码的人;Flatpak 更省心,权限可随时用 Flatseal 收回。
依赖:Python ≥ 3.9、PyGObject、GTK 4、libadwaita ≥ 1.4(Fedora 39+ / Ubuntu 24.04+ / Debian 13+ / Arch),以及 fwupd(用于 HSI)。
# Fedora sudo dnf install python3-gobject gtk4 libadwaita fwupd git clone https://github.com/lingyicute/ComputeSec.git cd ComputeSec python3 run.py
# Debian / Ubuntu sudo apt install python3-gi gir1.2-gtk-4.0 gir1.2-adw-1 fwupd git clone https://github.com/lingyicute/ComputeSec.git cd ComputeSec python3 run.py
# Arch sudo pacman -S python-gobject gtk4 libadwaita fwupd git clone https://github.com/lingyicute/ComputeSec.git cd ComputeSec python3 run.py
想让它出现在应用菜单里、并让任务栏 / Dock 正确显示图标(Wayland 下需要 .desktop 文件与 App ID 匹配):
python3 run.py --install # 安装 .desktop 与 SVG 图标到 ~/.local/share python3 run.py --uninstall # 移除
在 Releases 下载对应架构的 .flatpak,或在本地构建。
flatpak install --user ./ComputeSec-x86_64.flatpak flatpak run uk._92li.lingyicute.ComputeSec
flatpak install flathub org.gnome.Platform//50 org.gnome.Sdk//50 flatpak-builder --user --install --force-clean build-dir \ uk._92li.lingyicute.ComputeSec.json flatpak run uk._92li.lingyicute.ComputeSec
flatpak-spawn --host 执行的命令均为只读命令;收回任何权限后,对应功能只会显示「无法获取」,不影响其他检查。
uk._92li.lingyicute.ComputeSec · 由 GitHub Actions 自动构建 x86_64 / aarch64 包。
可用 Flatseal 随时收回,对应功能会显示「无法获取」。/proc/cmdline、/proc/sys、/sys/class/dmi、/sys/bus/usb 在沙箱内默认可读,无需额外权限。
| 权限 | 用途 |
|---|---|
| --system-talk-name=org.freedesktop.fwupd | 通过 D-Bus 读取 HSI 结果 |
| --talk-name=org.freedesktop.Flatpak | 在 fwupdmgr、lsblk、flatpak list 需要时通过 flatpak-spawn --host 执行(仅只读命令) |
| --filesystem=/var/lib/flatpak:ro --filesystem=~/.local/share/flatpak:ro | 统计已安装的 Flatpak 应用 |
| --filesystem=/run/udev:ro --filesystem=/boot/efi:ro --filesystem=/efi:ro | 检测 NTFS 分区与 Windows 引导器 |
四个 Python 模块各司其职:窗口与导航、页面构建、数据采集比对、知识库。
run.py 启动器(克隆运行 / Flatpak 内为 /app/bin/computesec) computesec/ ├── main.py 应用与窗口、导航、后台检测线程 ├── ui.py 五个页面的构建 ├── checks.py 数据采集与比对(fwupd、cmdline、sysctl、DMI、Flatpak、uptime、USB、NTFS) └── data.py 知识库:HSI 说明、内核参数、sysctl、厂商信誉 data/ └── 图标和构建信息 uk._92li.lingyicute.ComputeSec.json Flatpak 清单 .github/workflows/build.yml Build Workflow
内核参数列表中的 root=、rootflags=、rw、rhgb、quiet、vconsole.keymap 等条目是你的机器专属启动配置。ComputeSec 不会评估它们,也请您不要修改它们,尤其是不要照搬别人的系统中的 root=UUID=...。
module.sig_enforce=1 会阻止 NVIDIA 私有驱动加载,ia32_emulation=0 会让 Steam / Wine 无法运行,mitigations=auto,nosmt 会关闭超线程。建议先在 GRUB 菜单按 e 临时添加试运行一次。
出于安全性上的考虑,梨不建议您使用 NVIDIA 闭源驱动和闭源内核模块,也不建议您使用 Wine 运行来源未知的 Windows 程序。
厂商信誉信息来自公开报道与 CVE 记录,仅供参考。