乐于分享
好东西不私藏

Skill之OpenClaw主机安全加固技能:评估风险、制定计划、分步执行 GitHub Stars 359k+

Skill之OpenClaw主机安全加固技能:评估风险、制定计划、分步执行 GitHub Stars 359k+

如何使用healthcheck技能对运行OpenClaw的主机进行全面的安全评估与加固。流程包括:建立系统上下文、运行OpenClaw安全审计、确定风险承受度、制定分步修复计划,并提供执行选项。遵循核心规则,优先采用可逆、分阶段的更改,确保在不中断访问的前提下,将主机安全状态调整至用户定义的风险级别。适用于Linux、macOS、Windows系统,帮助管理员系统化地提升主机安全性。

⚠️重要前提
安装AI Skills的关键前提是:必须科学上网,且开启TUN模式,这一点至关重要,直接决定安装能否顺利完成,在此郑重提醒三遍:科学上网,科学上网,科学上网。

OpenClaw 主机加固

概述

评估并加固运行 OpenClaw 的主机,然后将其调整至用户定义的风险承受度,同时不中断访问。将 OpenClaw 安全工具作为首要信号,但将操作系统加固视为一套独立、明确的步骤。

核心规则

  • 建议使用最先进的模型(例如,Opus 4.5、GPT 5.2+)运行此技能。代理应自检当前模型,若低于该级别则建议切换;不要阻止执行。
  • 任何会改变状态的操作都需要明确的批准。
  • 在未确认用户连接方式的情况下,不得修改远程访问设置。
  • 优先采用可逆、分阶段的更改,并制定回滚计划。
  • 切勿声称 OpenClaw 会更改主机防火墙、SSH 或操作系统更新;它不会。
  • 如果角色/身份未知,仅提供建议。
  • 格式要求:每组用户选项必须编号,以便用户可以用单个数字回复。
  • 建议进行系统级备份;尝试验证备份状态。

工作流程(按顺序执行)

0) 模型自检(非阻塞性)

开始前,检查当前模型。如果低于最先进水平(例如,Opus 4.5、GPT 5.2+),建议切换。不要阻止执行。

1) 建立上下文(只读)

在询问之前,尝试从环境中推断 1-5 项。如果需要确认,优先使用简单、非技术性的问题。

确定(按顺序):

  1. 操作系统和版本(Linux/macOS/Windows),容器与主机。
  2. 权限级别(root/admin 与 user)。
  3. 访问路径(本地控制台、SSH、RDP、tailnet)。
  4. 网络暴露情况(公网 IP、反向代理、隧道)。
  5. OpenClaw 网关状态和绑定地址。
  6. 备份系统及状态(例如,Time Machine、系统映像、快照)。
  7. 部署上下文(本地 Mac 应用、无头网关主机、远程网关、容器/CI)。
  8. 磁盘加密状态(FileVault/LUKS/BitLocker)。
  9. 操作系统自动安全更新状态。注意:这些不是阻塞项,但强烈建议启用,特别是当 OpenClaw 可以访问敏感数据时。
  10. 具有完全访问权限的个人助理的使用模式(本地工作站 vs 无头/远程 vs 其他)。

首先询问一次是否允许运行只读检查。如果获得许可,默认运行它们,并且只针对无法推断或验证的项目提问。不要询问运行时或命令输出中已可见的信息。将权限询问保持为单个句子,并将后续所需信息列为无序列表(非编号),除非您正在呈现可选择的选项。

如果必须提问,请使用非技术性提示:

  • “您使用的是 Mac、Windows PC 还是 Linux?”
  • “您是直接登录到这台机器,还是从另一台计算机连接?”
  • “这台机器可以从公共互联网访问,还是只能在您的家庭/内部网络访问?”
  • “您是否启用了备份(例如 Time Machine),并且它们是最新的吗?”
  • “磁盘加密是否已开启(FileVault/BitLocker/LUKS)?”
  • “自动安全更新是否已启用?”
  • “您如何使用这台机器?” 示例:
    • 与助手共享的个人机器
    • 为助手专用的本地机器
    • 远程访问的专用远程机器/服务器(始终在线)
    • 其他情况?

只有在了解系统上下文后才询问风险承受度。

如果用户授予只读权限,默认运行适合操作系统的检查。如果未授予,则提供(编号的)检查选项。示例:

  1. 操作系统:uname -asw_verscat /etc/os-release
  2. 监听端口:
    • Linux:ss -ltnup(如果 -u 不支持,则使用 ss -ltnp)。
    • macOS:lsof -nP -iTCP -sTCP:LISTEN
  3. 防火墙状态:
    • Linux:ufw statusfirewall-cmd --statenft list ruleset(选择已安装的)。
    • macOS:/usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate 和 pfctl -s info
  4. 备份(macOS):tmutil status(如果使用 Time Machine)。

2) 运行 OpenClaw 安全审计(只读)

作为默认只读检查的一部分,运行 openclaw security audit --deep。仅在用户要求时提供替代方案:

  1. openclaw security audit
    (更快,非探测性)
  2. openclaw security audit --json
    (结构化输出)

提供应用 OpenClaw 安全默认设置的选项(编号):

  1. openclaw security audit --fix

明确说明 --fix 仅收紧 OpenClaw 默认设置和文件权限。它不会更改主机防火墙、SSH 或操作系统更新策略。

如果启用了浏览器控制,建议在所有重要账户上启用双因素认证,优先使用硬件密钥,短信认证不足够。

3) 检查 OpenClaw 版本/更新状态(只读)

作为默认只读检查的一部分,运行 openclaw update status

报告当前渠道以及是否有可用更新。

4) 确定风险承受度(在了解系统上下文后)

请用户选择或确认风险承受度以及任何必需开放的服务/端口(以下编号选项)。不要将其硬塞入固定配置文件;如果用户愿意,捕获需求而非选择配置文件。提供建议的配置文件作为可选默认值(编号)。请注意,大多数用户选择家庭/工作站平衡型:

  1. 家庭/工作站平衡型(最常见)
    :防火墙开启并采用合理的默认设置,远程访问限制在局域网或 tailnet。
  2. VPS 加固型
    :默认拒绝入站防火墙,开放端口最少,仅密钥 SSH,禁止 root 登录,自动安全更新。
  3. 开发者便利型
    :允许更多本地服务,有明确的暴露警告,但仍经过审计。
  4. 自定义型
    :用户定义的约束(服务、暴露程度、更新频率、访问方法)。

5) 制定修复计划

提供一个包含以下内容的计划:

  • 目标配置文件
  • 当前状态摘要
  • 与目标的差距
  • 包含确切命令的分步修复步骤
  • 访问保持策略和回滚方案
  • 风险和潜在锁定场景
  • 最小权限说明(例如,避免使用管理员权限,在安全的情况下收紧所有权/权限)
凭据卫生说明(OpenClaw 凭据的位置,优先使用磁盘加密)

在进行任何更改之前始终展示计划。

6) 提供执行选项

提供以下选项之一(编号以便用户可以用单个数字回复):

  1. 为我执行(引导式,逐步批准)
  2. 仅显示计划
  3. 仅修复关键问题
  4. 导出命令供以后使用

7) 执行并确认

对于每个步骤:

  • 显示确切的命令
  • 解释影响和回滚方法
  • 确认访问将保持可用
  • 在出现意外输出时停止并请求指导

8) 验证和报告

重新检查:

  • 防火墙状态
  • 监听端口
  • 远程访问是否仍然有效
  • OpenClaw 安全审计(重新运行)

交付最终状态报告并注明任何延期项目。

必需确认项(始终)

以下操作需要明确批准:

  • 防火墙规则更改
  • 打开/关闭端口
  • SSH/RDP 配置更改
  • 安装/移除软件包
  • 启用/禁用服务
  • 用户/组修改
  • 计划任务或启动持久化
  • 更新策略更改
  • 访问敏感文件或凭据

如果不确定,请询问。

定期检查

在 OpenClaw 安装或首次加固完成后,至少运行一次基线审计和版本检查:

  • openclaw security audit
  • openclaw security audit --deep
  • openclaw update status

建议进行持续监控。使用 OpenClaw cron 工具/CLI 来安排定期审计(网关调度器)。未经明确批准,不要创建计划任务。将输出存储在用户批准的位置,避免在日志中包含秘密信息。在安排无头 cron 运行时,输出中应包含一条说明,指示用户调用 healthcheck 以便修复问题。

安排计划时的必需提示(始终)

在任何审计或加固运行后,明确提供安排计划的选项并要求直接回应。使用简短的提示,例如(编号):

  1. “您是否希望我通过 openclaw cron add 安排定期审计(例如,每日/每周)?”

如果用户同意,询问:

频率(每日/每周)、首选时间窗口和输出位置
是否同时安排 openclaw update status

使用稳定的 cron 作业名称,以便更新是确定性的。优先使用确切的名称:

  • healthcheck:security-audit
  • healthcheck:update-status

创建之前,运行 openclaw cron list 并精确匹配 name。如果找到,则 openclaw cron edit <id> ...。如果未找到,则 openclaw cron add --name <name> ...

同时提供定期版本检查选项,以便用户决定何时更新(编号):

  1. openclaw update status
    (适用于源码检出和渠道检查)
  2. npm view openclaw version
    (发布的 npm 版本)

OpenClaw 命令准确性

仅使用受支持的命令和标志:

  • openclaw security audit [--deep] [--fix] [--json]
  • openclaw status
     / openclaw status --deep
  • openclaw health --json
  • openclaw update status
  • openclaw cron add|list|runs|run

不要发明 CLI 标志或暗示 OpenClaw 强制执行主机防火墙/SSH 策略。

日志记录和审计跟踪

记录:

  • 网关身份和角色
  • 计划 ID 和时间戳
  • 批准的步骤和确切命令
  • 退出代码和修改的文件(尽力而为)

对秘密信息进行编辑。切勿记录令牌或完整的凭据内容。

内存写入(有条件)

仅当用户明确选择加入且会话是私有/本地工作空间(根据 docs/reference/templates/AGENTS.md)时,才写入内存文件。否则,提供一个经过编辑、可供粘贴的摘要,供用户决定保存到其他地方。

遵循 OpenClaw 压缩使用的持久内存提示格式:

将持久性笔记写入 memory/YYYY-MM-DD.md

每次审计/加固运行后,如果用户选择加入,将一个简短的、带日期的摘要追加到 memory/YYYY-MM-DD.md(检查了什么、关键发现、采取的措施、任何计划的 cron 作业、关键决策以及所有执行的命令)。仅追加:切勿覆盖现有条目。编辑敏感主机详细信息(用户名、主机名、IP、序列号、服务名称、令牌)。如果有持久的偏好或决策(风险承受度、允许的端口、更新策略),也更新 MEMORY.md(长期内存是可选的,仅在私有会话中使用)。

如果会话无法写入工作空间,请求权限或提供确切的条目供用户粘贴到内存文件中。

安装命令


npx skills add https://github.com/steipete/clawdis --skill healthcheck

每周安装数

526

仓库

https://github.com/steipete/clawdis

GitHub 星标数

359K

首次出现

2026年2月3日

安全审计

Gen Agent Trust HubPass SocketPass SnykWarn

安装于

opencode494

codex491

gemini-cli491

openclaw487

github-copilot486

cursor486

更多技能>>>

怎么安装AI Skills

find-skills 技能搜索工具 – 让AI更智能的skill

Skills之Tailwind CSS v4 开发技能:GitHub Stars 5.3万,安装10万+

Skills之FastAPI官方技能:Python Web开发最佳实践与CLI工具使用指南

Skills之Java 21+ 专家技能:虚拟线程、Spring Boot 3.x、JVM优化与云原生开发指南

Skills之OpenAPI 3.1 规范生成与验证工具 – 从代码生成、设计优先到SDK生成全流程

Skills之Laravel安全最佳实践指南 | 防范CSRF、SQL注入、XSS攻击

Skills之Nuxt 4 模式指南:SSR、混合渲染、路由规则与数据获取最佳实践

Skills之Claude技能创建器指南:构建模块化AI技能包,优化工作流与工具集成

Skills之Figma自动化工具:通过Rube MCP实现设计文件管理、组件提取与图像导出