这个项目能做什么
Linux Hardener 是一款用 Rust 编写的 Linux 系统综合安全自动化工具。它扫描主机的安全错误配置,应用加固修复,并通过签名检查点支持完全回滚。每一项变更在实施前都会进行快照,因此 `hardener rollback` 可以将主机恢复到之前的状态。
该工具以单个 CLI 二进制文件和桌面应用程序形式提供,桌面应用程序基于 Tauri 和 Leptos/WASM 前端构建。八个加固插件涵盖内核参数、SSH 配置、防火墙规则、PAM 认证、服务最小化、审计规则、文件权限以及 MAC 系统(SELinux/AppArmor)。扫描结果映射到十个合规框架:CIS、STIG、NIST 800-53、PCI-DSS、HIPAA、GDPR、ISO/IEC 27001:2022、SOC 2、NIST SP 800-171 Rev 3 和 FedRAMP。引擎无法评估的控制项会被报告为需要人工审核,而不是假定为通过。
发行版支持基于家族,涵盖 Debian、Ubuntu、Fedora、RHEL、Arch Linux 和 openSUSE。该工具在 openSUSE 上读取 `/etc` 和 `/usr/etc` 两层,并处理 SSH drop-in 配置以保留供应商的 `Include` 行。一个基于 `FROM scratch` 的 Docker 镜像支持只读审计,无需修改主机。
主要特性包括:基于检查点的回滚,使用 Ed25519 签名的 SQLite 存储;哈希链审计日志;带过期日期的策略例外;不适用控制项的范围排除;通过守护进程或 systemd 定时器进行计划扫描;以及通过 SSH 进行机群操作,支持并发批量扫描和应用。桌面应用程序提供仪表板,显示安全评分、按框架的合规视图、按严重程度分组的结果,以及带分阶段预览的机群应用界面。
配置按顺序从四个来源加载:`/etc/linux-hardener/config.toml`、用户配置(root 下跳过)、`--config` 标志和 `HARDENER_*` 环境变量。该工具区分 `scan`(只读,无需 root)、`apply --dry-run`(预览变更)和 `apply`(执行变更)。批量操作默认使用 dry-run,需要 `--execute` 才会进行更改。
该项目包含 2343 个通过的测试、一个跨发行版测试套件(在六个已启动的容器上应用并回滚),以及一个差分测试套件,通过独立 oracle 比较应用前后的主机状态。代码库组织为插件、合规、调度器、核心、状态和发行版检测等域 crate,并提供用于公共工具和 WASM 安全类型的共享基础 crate。
评论
0 评分人数达到10人后显示
登录后参与讨论。