关于 doca-argus
doca-argus 是面向安全和平台团队的 Agent 技能,用于在 BlueField 上运行 DOCA Argus Service 容器。它指导运行时威胁检测的部署与配置、发现结果的传递及性能校准。
主要功能
- 01BlueField 容器部署指导
- 02四轴配置规划
- 03运行时威胁检测运维
- 04向 SIEM 转发发现结果
- 05校准与性能问题排查
适用场景
- 01在 BlueField 主机群部署运行时安全
- 02选择检测策略与采样设置
- 03将发现结果转发到 Splunk、ELK 或 Sentinel
- 04排查未收到或过多的发现结果
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ nvidia/ skills --skill doca-argus安装后在 Claude Code 中输入/doca-argus确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
BENCHMARK.mdCAPABILITIES.mdskill-card.mdskill.oms.sigSKILLCARD.yamlTASKS.mdevals/evals.json详细介绍
DOCA Argus 服务
示例
- “容器状态正常,但没有收到任何发现结果。”——这属于范围内的问题。请检查 Argus 配置/转发器;不要在此处重写 SIEM 接收配置段。
- “在一组 BlueField-3 上启用运行时安全。”——在 BlueField Arm 上部署 Argus 服务容器;不要为新工作部署 App Shield 库代码。
说明
请遵循下文的加载顺序。配置/转发/调试相关问题,请打开任务配套文件。四轴配置相关问题,请打开功能配套文件。不要打开所有配套文件。
当前推荐的后继方案。 DOCA Argus 是 NVIDIA 当前主要推荐的框架,用于在 BlueField 上进行运行时威胁检测和主机内存取证。它取代了较早的、基于库的 DOCA App Shield 方案(DOCA App Shield 库不在此资源包的涵盖范围内——根据策略,它不包含在公开发布内容中;请参阅 AGENTS.md
## Non-goals(资源包AGENTS.md#non-goals-questions-the-agent-should-recognize-and-refuse-politely)第 7 项,并通过doca-public-knowledge-map/SKILL.md路由至公开文档)。 如果请求涉及“检查主机进程/检测可疑活动/运行时安全”,并且询问当前受支持的方案,应首先推荐 Argus;只有在确实需要 Argus 无法实现的定制 DPU 端工具时,才考虑使用底层的 App Shield 库,而该库不在此资源包范围内。
从何处开始: 此技能用于运行 DOCA Argus 服务容器,而不是用于链接到某个库。Argus 是以容器形式交付的打包安全 Agent,可通过其 API/仪表板/转发的 SIEM 提供发现结果;它不是主机端软件包,不是编程接口,也不是 DOCA App Shield 库(用于构建定制安全工具的底层内省库——不在此资源包范围内)。
要部署 Argus 容器,请打开 ## configure 下的任务配套文件。若要了解 Argus 服务的形态、检测内容以及发现结果的呈现方式,请从功能配套文件开始。如果 BlueField 上尚未安装 DOCA,请先转至 doca-setup/SKILL.md。如果要“编写针对主机内核状态的定制安全工具”,这涉及的是 App Shield 库,不在此资源包范围内;请通过 doca-public-knowledge-map/SKILL.md 转至公开文档。
如何使用此技能。 阅读此文件,然后在配套文件中查找问题所需的 ## <name> 标题,并阅读整个章节。答案必须完全基于该章节,且只引用其中的符号和命令。不要浏览文档;请使用 doca-public-knowledge-map 中的入口。对于超出范围的请求,请指出负责处理的技能,然后停止。
此技能擅长回答的示例问题
此技能旨在回答的 Argus 问题类别,每类都附有一个完整示例。类别是核心;完整示例只是其中一个实例。
- “对于生产环境中的 BlueField 安全工作流,我应该部署 Argus,还是基于 DOCA App Shield 库自行构建?” — 完整示例: “我想为一组 BlueField-3 提供运行时安全防护,以保护生产数据库层;我应该优先考虑什么?”。答案可从 能力配套文档中的 Argus 与 App Shield 路径选择规则 以及 任务配套文档中的路径选择步骤中找到。
- “启动 Argus 容器前,我必须确定哪四个配置维度?” — 完整示例:“由 Argus 监控的生产主机、将发现结果转发到 Splunk、误报预算较低”。答案可从 能力配套文档中的四维配置表 以及 任务配套文档中的四维配置步骤中找到。
- “Argus 容器正在运行,但我没有看到任何发现结果——我漏了什么?” — 完整示例:“容器状态正常,24 小时内没有收到任何发现结果”。答案可从 能力配套文档中的检测策略和采样条目 以及 任务配套文档中的分层排查流程中找到。
- “我每小时收到数百条发现结果,看起来像噪声——Argus 出故障了吗?” — 完整示例:“发现结果太多;安全运营团队开始忽略这个频道”。 答案可从能力配套文档中的校准期和检测策略规则 以及 任务配套文档中的分层排查流程中找到。
- “如何将 Argus 与现有的 SIEM(Splunk / ELK / …)配合使用?” — 完整示例:“将发现结果转发到 Splunk,供安全运营团队审查”。答案可从 能力配套文档中的转发维度条目 以及 任务配套文档中的转发步骤中找到。
- “我的 Argus 部署影响了工作负载的性能——我应该调整什么?” — 完整示例:“Argus 启动后,生产主机的 CPU 使用率明显上升”。答案可从 能力配套文档中的采样维度条目 以及 任务配套文档中的采样调优条目中找到。
适用对象
此技能面向部署 DOCA Argus Service 容器的外部安全运营人员和平台团队,帮助他们在 BlueField + 主机组合上实现运行时安全,并将发现结果发送到团队现有的 SIEM。具体而言,适用于在 BlueField Arm 上运行 Argus 容器、根据公开的 Argus 指南选择检测策略 / 转发目标 / 采样方式 / 主机覆盖范围、配置 SIEM 端的摄取流程以便安全运营团队收到发现结果,并在信任该通道用于生产级决策前验证端到端管道的人员。
此技能不适用于为 Argus 本身做出贡献的 NVIDIA 开发者,也不是关于如何基于 DOCA 库构建安全工具的编程指南(参见
doca-programming-guide/SKILL.md;
对于 App Shield 库,请参阅公开文档 — 本资料包不涵盖 App Shield)。Argus 是一项服务,不是库:
运营人员运行容器,并通过 API / 仪表板 / SIEM 转发器接收发现结果;没有可供链接的 libargus.so。
预先选择路径(至关重要)。 如果用户希望在 BlueField 上通过打包好的工作流实现生产环境运行时安全,请使用 Argus — 大多数运营人员都应选择 Argus,而不是基于 App Shield 库自行构建;只有当 Argus 确实无法满足需求时,开发者才需要使用该库(例如,发布具有自有决策逻辑的安全产品)。以下情况不要选择 Argus:(a) 用户没有安全态势方面的顾虑(Argus 会带来不必要的沉重开销);(b) 用户需要的是可观测性 / 指标,而非安全(请转向 DOCA Telemetry Service,参见
doca-public-knowledge-map ## DOCA services(doca-public-knowledge-map/SKILL.md#doca-services));
(c) 用户正在构建自定义 DPU 端安全工具(请使用 App Shield 库 — 本资料包不涵盖;通过 doca-public-knowledge-map/SKILL.md 路由)。
何时加载此技能
当用户在已安装 DOCA 的 BlueField 上实际部署 Argus时,请加载此技能。具体包括:
- 判断 Argus 是否适合用户的安全态势(相较于基于 App Shield 库的自定义工具 — 本资料包不涵盖;相较于选择可观测性而非安全;或不部署任何工具)。
- 在 BlueField Arm 上部署 Argus 容器 — 根据公开的 Argus Service Guide 获取镜像源、挂载配置,并根据公开的 Container Deployment Guide 启动 / 停止容器。
- 为部署选择四个配置维度 — 检测策略、转发目标(本地日志 / Splunk / ELK / Sentinel)、采样方式 / 灵敏度、主机覆盖范围。
- 配置 SIEM 端的摄取流程,确保发现结果确实到达安全运营团队的审核界面 — 否则 Argus 生成的发现结果只会石沉大海。
- 验证端到端管道(容器 → 发现结果 → 转发器 → SIEM 摄取 → 运营审核),并在信任该通道前完成校准期。
- 查看容器日志或有文档说明的发现结果流,确认部署按配置正常工作。
- 排查容器运行正常但没有发现结果到达、发现结果过多、发现结果始终未到达 SIEM,或 Argus 影响工作负载性能等部署问题。
一般性的 DOCA 入门、安装 DOCA 本身、库 API 问题或非安全主题,不要加载此技能。对于这些情况,请通过
doca-public-knowledge-map/SKILL.md、
doca-setup/SKILL.md 或相应的
libs/<library> 技能进行路由(如果用户正在构建自己的 DPU 端安全工具,则请转向 DOCA App Shield 库的公开文档,因为本资料包不涵盖 App Shield)。
此技能提供的内容
这是一个轻量加载器。实质性内容位于两个配套文件中:
- capabilities 配套文件 — Argus 的架构(长期运行的容器,负责 BlueField 上的运行时安全观测面)、四个配置维度(检测策略 / 转发 / 采样 / 主机覆盖范围)、部署形态(根据公开的 Container Deployment Guide,在 BlueField Arm 上运行容器)、配对面(SIEM 消费端 — Splunk、ELK、Sentinel、……)、可观测面(容器日志 + 发现信息流 + SIEM 侧摄取确认)、错误分类(容器运行时 / 检测策略 / 转发 / 采样性能 / 主机覆盖范围),以及安全策略(Argus 与 App Shield 路径选择、绝不静默禁用发现、预留校准期、先进行冒烟测试再批量操作)。
- tasks 配套文件 — 适用范围内 Argus 操作的分步工作流:
configure、build、modify、run、test、debug,以及一个用于转交范围外问题的Deferred task verbs部分和一份常用命令的Command appendix。
此技能假设 BlueField 上已安装 DOCA,且操作人员拥有公开 Argus Service Guide 所要求的权限,可以在 BlueField Arm 上拉取、运行和配置容器。此技能不涵盖安装 DOCA(请转至 doca-setup/SKILL.md),也不详细介绍 SIEM 侧的摄取 — SIEM 是用户现有的基础设施,由其自身文档负责;Argus 会以文档规定的转发器格式发出发现信息,SIEM 团队负责接收。
此技能明确不提供的内容
此技能是Agent 指南,而不是模板或示例配置包。为明确界限,此技能刻意不包含以下内容 — 也不应通过拉取请求添加:
- 预先制作的 Argus 配置文件(完整的检测策略区块、可直接运行的转发器配置、采样模板)。检测策略与工作负载高度相关;复制粘贴策略几乎必然会导致大量误报或不易察觉的盲区。安全的做法是根据用户的工作负载,参照公开的 Argus Service Guide 制定配置,然后完成校准期。Agent 规定的是流程和四维决策,而不是用户可能未经修改就直接运行的配置。
- 容器镜像名称、标签或注册表路径。 权威镜像来源是可通过
doca-public-knowledge-map ## DOCA services(doca-public-knowledge-map/SKILL.md#doca-services)访问的公开 DOCA Argus Service Guide;Argus 的镜像标签与版本绑定,且会随 DOCA 版本更新而变化。编造或记住某个标签是服务技能最典型的幻觉失误。 - SIEM 侧的摄取配置(Splunk 转发器 stanza、Logstash 管道定义、Sentinel 数据连接器区块)。这些配置因 SIEM 环境而异,属于 SIEM 侧内容,不在 Argus 容器内。此技能会说明转发目标需要接通,以及文档规定的转发器格式;SIEM 侧的摄取配置应由用户的 SIEM 团队负责,并参照相应 SIEM 的文档。
- 任何类型的检测规则包(“必须告警”的模式列表、阈值表、命名的 CVE 映射)。检测策略属于公开 Argus Service Guide 的范畴,应根据用户的工作负载具体决定;随附规则包会绕过这两者,并在下一个版本发布时过时。
- 任何类型的
samples/、templates/或reference/子目录。 标注为 “reference” 的模拟产物会让人以为它已可用于生产并通过安全审查,而此技能无法保证这两点。
加载顺序
- 首先阅读此技能,确认用户的问题属于范围之内,并确认 Argus 确实是合适的答案(而不是基于 DOCA App Shield 库进行构建——此套件未涵盖此方案,也不是不部署任何内容,或改为部署可观测性方案)。
- 有关 Argus 的部署形态、四个配置维度、SIEM 配对方式、错误分类、可观测性界面和安全策略(包括校准期规则及绝不静默禁用规则),请参阅功能配套文档。
- 有关分步工作流——配置、构建、修改、运行、测试、调试——请参阅任务配套文档。
相关技能
doca-public-knowledge-map/SKILL.md— 用于指向公开 DOCA Argus Service Guide 及其他公开 DOCA 文档的路由表。Argus URL 列在## DOCA services(doca-public-knowledge-map/SKILL.md#doca-services)下。doca-setup/SKILL.md— 在运行 Argus 容器的 BlueField 上准备环境并验证安装,其中包括通过公开 NGC DOCA 容器进行的 我还没有安装 流程。此技能假定 BlueField Arm 上的前置条件已满足。doca-version/SKILL.md— 规范的 DOCA 版本处理规则。Argus 的容器标签与版本绑定;此技能的## Version compatibility交叉引用四方匹配规则,并补充了容器标签落后于主机软件包这一适用于所有其他 DOCA 服务容器的规则。doca-structured-tools-contract/SKILL.md— 本套件的结构化工具优先级规则(检测/优先使用/回退/报告)。任务配套文档中的命令附录遵循此约定。doca-programming-guide/SKILL.md— 通用 DOCA 模式。Argus 属于服务形态而非库形态,因此其中的构建/修改/首个应用模式不直接适用;但跨库调试规范(先前端后后端、先环境后程序、绝不臆造标志)仍然有用,尤其是在 Argus 报告的错误源自容器运行时或其调用的 DOCA 库时。- DOCA App Shield 库 — 库的对应方案,是一种较低层级的内省库,开发者可基于它构建自定义 DPU 端工具。此套件未涵盖此方案(根据政策,已排除在公开发布内容之外);当 Argus 确实无法满足需求且团队需要构建自己的安全产品时,请通过
doca-public-knowledge-map/SKILL.md转到公开文档。 功能配套文档中的路径选择规则会在生产安全场景下优先引导用户使用 Argus。 doca-dms/SKILL.md和doca-firefly/SKILL.md— 同类服务技能,具有相同的服务技能结构(BlueField Arm 上的容器、Container Deployment Guide 配方、先冒烟测试再批量部署、环境前置条件),但面向不同领域(DMS = 通过 gNMI / gNOI 进行设备管理;Firefly = 通过 PTP 进行时间同步;Argus = 通过发出发现项实现运行时安全)。doca-debug/SKILL.md— 跨领域调试阶梯(安装/版本/构建/链接/运行时/程序/驱动程序)。Argus 特有的调试问题(没有收到发现项、发现项过多、发现项未转发、性能影响)会在此阶梯的基础上进一步处理。