djadmin/fort
GitHub: djadmin/fort
fort 是一条命令即可审计并修复 macOS 安全漏洞的开源工具,无需 agent 或注册,可直接生成符合 SOC 2 和 ISO 27001 要求的合规报告。
Stars: 22 | Forks: 1
# fort
**了解你 Mac 的安全态势,修复漏洞,并保持锁定。一个命令搞定。**
[](https://github.com/djadmin/fort/actions)
[](https://github.com/djadmin/fort/releases)
[](LICENSE)
[](https://github.com/djadmin/fort)
[](plugin/)
`fort` 会在你的 Mac 上运行 15+ 项安全检查,安全地修复可以修复的问题,并生成一份可直接提交给审计员的报告。无需 agent,无需注册,无需 MDM 注册。只需一个单一的二进制文件。
适合任何想要强化其 Mac 安全性的人。对于准备通过 SOC 2 或 ISO 27001 的团队来说更是必不可少。
**[djadmin.github.io/fort](https://djadmin.github.io/fort)**
`fort` 会审计每一项控制措施并展示你的当前状态。`fort --fix` 会在你确认后,审查每一项更改然后再应用。
## 安装
**Homebrew** _(推荐)_
```
brew install djadmin/tap/fort
```
**直接下载 (macOS, Apple Silicon + Intel)**
```
curl -fsSL https://github.com/djadmin/fort/releases/latest/download/fort_darwin_all.tar.gz | tar xz && sudo mv fort /usr/local/bin/
```
**Go**
```
go install github.com/djadmin/fort/cmd/fort@latest
```
**从源码构建**
```
git clone https://github.com/djadmin/fort.git
cd fort && make install
```
**更新**
```
brew upgrade djadmin/tap/fort
```
## 用法
```
fort # audit your Mac
fort --dry-run # preview what --fix would change; nothing is applied
fort --fix # audit, show confirmation prompt, apply selected fixes
fort --fix --yes # skip prompt; for scripts, MDM push, or cron
fort --json # structured JSON output for automation
fort --report # write fort-report-YYYY-MM-DD.html (print to PDF)
fort --only filevault,firewall # run only the specified checks (comma-separated IDs)
```
退出码:`0` 全部通过 · `1` 任何失败 · `2` 任何警告
## 在 Claude Code 中使用
fort 提供了一个 [Claude Code](https://claude.com/claude-code) 插件,因此你只需通过提问即可审计并强化你的 Mac。只需说“我的 Mac 安全吗?”,Claude 就会运行审计,解释每一项发现及其重要性,然后仅修复你批准的内容,并首先展示确切的命令。
```
# 1. 安装 fort 二进制文件(插件会驱动它;Claude 也可以为你安装)
brew install djadmin/tap/fort
# 2. 添加插件
/plugin marketplace add djadmin/fort
/plugin install fort@fort
```
然后只需提问,或直接运行命令:`/fort-audit`(只读),`/fort-harden`(在你的批准下修复安全漏洞),`/fort-report`(HTML 证据)。该插件会在你的 Mac 上通过你的 shell 运行 `fort` 二进制文件,无需额外的服务,也不会上传任何内容。详情请参阅 [`plugin/`](plugin/)。
## 设计安全
- **审计不会发起任何网络调用。** `fort` 读取本地系统状态后退出。不上传任何内容,无需账户,无遥测数据。
- **没有黑盒操作。** 每次检查都会在终端、JSON 和 HTML 报告中打印出它运行的确切命令及其原始输出。请亲自验证它,而不是盲目信任它。
- **`--fix` 始终会先询问。** 它会显示每一项更改,并在应用前提示 `[y/N]`。使用 `--dry-run` 进行预览而不做任何改动,或者在自动化、cron、MDM 场景中使用 `--yes` 跳过提示。
- **一个基于 MIT 许可证的 Go 二进制文件。** 无 agent,无后台进程,不会进行全系统范围的安装。你可以直接阅读源代码。
完整详情请参阅 [PRIVACY.md](PRIVACY.md):零数据收集,无网络调用,没有任何数据离开你的设备。
## 检查内容
涵盖五个类别的 15+ 项 macOS 检查,每一项都映射到 SOC 2、ISO 27001、NIST CSF 和 CIS v8:
| 类别 | 检查项 |
|-------|--------|
| 核心安全 | 密码管理器、FileVault、屏幕锁定、防病毒软件 / EDR |
| 系统强化 | 防火墙、Gatekeeper、SIP、SSH |
| 访问控制 | 本地管理员权限、访客账户、自动登录、用于 sudo 的 Touch ID |
| 暴露面缩减 | 共享服务、AirDrop |
| 补丁更新 | 自动 OS 更新、OS 补丁状态 |
具体的检查项会随着时间推移不断增加。运行 `fort` 查看你机器上的每一项检查,并查看 [changelog](CHANGELOG.md) 了解最新动态。
## JSON 输出
```
{
"tool": "fort", "version": "0.3.0", "hostname": "alice-mbp",
"os_version": "15.5", "timestamp": "2026-06-09T10:00:00Z",
"summary": { "total": 16, "pass": 12, "fail": 2, "warn": 2, "score": "12/16" },
"policies": [{ "id": "filevault", "status": "pass", "current": "on",
"evidence": "$ fdesetup status\nFileVault is On.",
"frameworks": { "SOC 2": ["CC6.1", "CC6.7"], "ISO 27001": ["A.8.3"] } }]
}
```
`fort --report` 会生成一份独立的 HTML 证据报告:包括机器标识、序列号、OS 版本、时间戳、每次检查的结果(包含运行的确切命令及其逐字原始输出),以及框架控制参考。可在本地打开或打印为 PDF。请查看 [报告示例](https://djadmin.github.io/fort/sample-report.html)。
## 支持
如果 fort 为你节省了时间,请**[在 GitHub 上给它加星](https://github.com/djadmin/fort)**。这是支持该项目最简单的方式,也能帮助其他人发现它。
## 许可证
[MIT](LICENSE)
`fort` 会审计每一项控制措施并展示你的当前状态。`fort --fix` 会在你确认后,审查每一项更改然后再应用。
Watch a full run
标签:EVTX分析, 安全基线, 教学环境, 日志审计, 服务器监控, 系统加固