关于 chaitin-cli
chaitin-cli 是通过统一命令行操作长亭安全产品的技能。它涵盖 SafeLine、DDR、X-Ray、CodeInsight、CodeForce、CloudWalker、VeinMind 和 T-Answer 等产品,并支持配置及各产品专属的命令输出。
主要功能
- 01一个命令行管理多个长亭产品
- 02各产品独立命令组
- 03支持配置文件、环境变量和标志
- 04各产品专属输出格式
- 05在支持的产品中试运行
适用场景
- 01通过命令行管理 SafeLine WAF
- 02执行 X-Ray 扫描器操作
- 03用一个命令行操作已配置的长亭产品
- 04通过配置文件切换产品环境
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ chaitin/ chaitin-cli --skill chaitin-cli安装后在 Claude Code 中输入/chaitin-cli确认已加载。
附带文件scripts/install-chaitin-cli.sh
详细介绍
chaitin-cli 使用指南
Chaitin 安全产品的统一命令行工具。通过单个工具管理 SafeLine WAF、DDR、X-Ray 扫描器、CodeInsight、CodeForce、CloudWalker CWPP、VeinMind 容器安全和 T-Answer。
无参数时的行为
在不带任何参数(ARGUMENTS 为空)的情况下调用 /chaitin-cli 时:
- 根据 SKILL.md 的内容,以格式清晰的方式向用户问候并介绍此技能。
- 运行
command -v chaitin-cli,检查是否已安装chaitin-cli。 - 如果找到,报告安装路径(例如:
chaitin-cli is installed at /opt/homebrew/bin/chaitin-cli)。 - 如果未找到,按平台进行安装:
- Windows:告知用户从
https://github.com/chaitin/chaitin-cli/releases手动下载最新版本,解压chaitin-cli.exe,并将其添加到 PATH。不要尝试在 Windows 上自动安装。 - macOS、Linux:运行
bash scripts/install-chaitin-cli.sh。脚本会在 stdout 中输出已安装二进制文件的路径(最后一行)。记住此路径——后续命令必须使用完整路径(例如:/home/user/.local/bin/chaitin-cli),因为每次调用 Bash 都会启动一个新 shell,安装目录可能尚未在 PATH 中。
- Windows:告知用户从
- 完成设置检查后,简要告知用户接下来可以做什么,例如:“现在可以使用 chaitin-cli 管理 SafeLine、DDR、X-Ray、CodeInsight、CodeForce、CloudWalker、VeinMind 或 T-Answer。告诉我你想做什么,或者运行
chaitin-cli --help来查看命令。”
工具解析
此技能需要使用 chaitin-cli 时,不要在每次运行命令前检查其是否可用。
- 直接运行用户请求的
chaitin-cli ...命令。 - 仅当 shell 报告
command not found、No such file or directory,或因缺少chaitin-cli而返回退出代码127时,才按平台进行安装:- Windows:告知用户从
https://github.com/chaitin/chaitin-cli/releases手动下载最新版本,解压chaitin-cli.exe,并将其添加到 PATH。不要尝试在 Windows 上自动安装。 - macOS、Linux:运行
bash scripts/install-chaitin-cli.sh。脚本会在 stdout 中输出已安装二进制文件的路径(最后一行,例如:/home/user/.local/bin/chaitin-cli)。记住此路径,以便在本次会话剩余时间内使用。
- Windows:告知用户从
- 安装后,后续
chaitin-cli命令要使用已安装文件的完整路径(例如:/home/user/.local/bin/chaitin-cli safeline site list),而不是直接使用chaitin-cli,因为每次调用 Bash 都会启动一个新 shell,安装目录可能尚未在 PATH 中。 - 如果
chaitin-cli已存在,不要查询 GitHub Releases,不要重新安装,也不要检查版本,除非用户明确要求。
安装程序会检测当前操作系统和架构,从 https://github.com/chaitin/chaitin-cli/releases 下载匹配的最新 chaitin-cli 发布归档,并将其安装为可直接运行的 chaitin-cli;优先安装到用户 PATH 目录,必要时则尝试系统范围安装。
Windows:Windows 没有自动安装程序。请从
https://github.com/chaitin/chaitin-cli/releases下载最新版本,解压chaitin-cli.exe,并手动将其添加到 PATH。
安装与运行
# On-demand installer used only when `chaitin-cli` is missing
# macOS / Linux
bash scripts/install-chaitin-cli.sh
# The installer fetches the matching GitHub release package
# and installs the extracted binary as `chaitin-cli`.
# Windows: download the latest release manually from
# https://github.com/chaitin/chaitin-cli/releases
# Extract chaitin-cli.exe and add it to PATH.
# Or build from source
git clone https://github.com/chaitin/chaitin-cli.git
cd chaitin-cli
go build -o chaitin-cli .
# Run
chaitin-cli <product> <command> [flags]
前提条件
运行任何 chaitin-cli 命令前:
- 网络连通性 — 运行
chaitin-cli的机器必须能够访问每个产品的控制台 / API 端点。 - API 密钥 — 在每个产品的界面中生成密钥(SafeLine → System → API Token;X-Ray → System Settings → API Key;等等),并通过
--api-key、产品环境变量或config.yaml提供。 - 使用自签名证书的 TLS —
chaitin-cli xray提供--insecure(默认关闭)。chaitin-cli safeline也提供--insecure,但默认值为true(已跳过验证);传入--insecure=false可重新启用验证。对于需要跳过 TLS 证书验证的环境,chaitin-cli tanswer提供--insecure。其他产品各不相同,不确定时请查看产品帮助。 - 从源代码构建 — 需要 Go 1.25+(参见
go.mod)。否则请使用 GitHub Releases 中预先构建的二进制文件。
配置
如需项目专属配置,请在工作目录中创建可识别的 ./config.yaml(其中必须至少包含一个 chaitin-cli 产品名称,例如 tanswer)。否则,请将相同配置放在 ~/.chaitin-cli/config.yaml 中,这是默认配置路径:
对于 T-Answer,请使用 --url、--api-key、--timeout 和 --insecure;TANSWER_URL、TANSWER_API_KEY、TANSWER_TIMEOUT 和 TANSWER_INSECURE;或者在共享配置文件中使用 tanswer.url、tanswer.api_key、tanswer.timeout 和 tanswer.insecure。
safeline:
url: https://your-safeline-server
api_key: YOUR_API_KEY
xray:
url: https://your-xray-server/api/v2
api_key: YOUR_API_KEY
cloudwalker:
url: https://your-cloudwalker-server/rpc
api_key: YOUR_API_KEY
ddr:
url: https://your-ddr-server/qzh/api/v1
api_key: YOUR_API_KEY
veinmind:
url: https://your-veinmind-server
api_key: YOUR_64_CHARACTER_API_TOKEN
tanswer:
url: 'https://<全悉 Web 端 IP>'
api_key: '<全悉 OpenAPI Token>'
timeout: 30s
insecure: false
codeinsight:
url: https://your-codeinsight-server
access_token: YOUR_ACCESS_TOKEN
也可以使用环境变量 / .env 文件:
SAFELINE_URL=https://your-safeline-server
SAFELINE_API_KEY=YOUR_API_KEY
XRAY_URL=https://your-xray-server/api/v2
XRAY_API_KEY=YOUR_API_KEY
DDR_URL=https://your-ddr-server/qzh/api/v1
DDR_API_KEY=YOUR_API_KEY
CODEINSIGHT_URL=https://your-codeinsight-server
CODEINSIGHT_TOKEN=YOUR_ACCESS_TOKEN
TANSWER_URL='https://<全悉 Web 端 IP>'
TANSWER_API_KEY='<全悉 OpenAPI Token>'
TANSWER_TIMEOUT=30s
TANSWER_INSECURE=false
优先级:flags > environment/.env > recognized ./config.yaml > ~/.chaitin-cli/config.yaml。如果本地 ./config.yaml 不包含可识别的 chaitin-cli 产品,则会被忽略,因此不会意外覆盖其他项目的配置。
使用 -c 切换配置文件(例如,切换不同环境):
chaitin-cli -c ./configs/prod.yaml safeline stats overview
chaitin-cli -c ./configs/staging.yaml safeline stats overview
全局标志
| 标志 | 描述 |
|---|---|
-c, --config | 显式指定配置文件路径。不使用此标志时,CLI 会先尝试可识别的 ./config.yaml,然后尝试 ~/.chaitin-cli/config.yaml。 |
--dry-run | 当产品支持时,打印 API 请求但不执行。根命令会将其应用于 xray、cloudwalker 和 veinmind。safeline 会注册自己的 --dry-run 并将其转发给子命令。safeline-ce 继承根标志,但当前代码库只会保存该值而不使用;tanswer 会忽略它。 |
查找命令
--help 是权威信息来源 — 本文档不会列出所有标志。
chaitin-cli <product> --help # List subcommand groups for a product
chaitin-cli <product> <group> --help # List commands in a group
chaitin-cli <product> <group> <cmd> --help # List flags for a specific command
chaitin-cli xray 命令根据 X-Ray OpenAPI 规范自动生成(包含数百个操作);chaitin-cli xray <category> --help 是唯一完整的参考。chaitin-cli cloudwalker 有 60+ 个命令组,内容深度类似。chaitin-cli veinmind 根据 VeinMind OpenAPI 规范生成;请务必使用 chaitin-cli veinmind <group> <cmd> --help 确认末级标志。
操作规则
对于 SafeLine、X-Ray、DDR、CodeInsight、CloudWalker、VeinMind、T-Answer 和 SafeLine-CE 相关任务,只能将 chaitin-cli 视为受支持的操作接口。
- 优先使用
chaitin-cli ... --help和现有的chaitin-cli子命令,而不是curl、临时 HTTP 请求、浏览器调试或猜测端点。 - 如果
chaitin-cli未提供所需的产品操作,请停止并说明当前 CLI 不支持该操作。不要仅仅为了“试一试”而改用直接 API 调用。 - 不要使用
curl或原始 HTTP 请求来执行chaitin-cli未实现的状态变更或可能造成危险的产品操作。 - 通过检查源代码确认命令是否可用及其行为,而不是绕过 CLI 并重构私有 API 调用。
- 如果受支持的命令可能改变状态,且产品确实支持
--dry-run,请优先先检查该路径。
输出格式
每个产品都使用自己的输出约定;chaitin-cli 没有统一的 -f / --format 标志。
| 产品 | 默认格式 | 切换为 JSON | 其他 |
|---|---|---|---|
chaitin-cli safeline | 表格 | --indent | — |
chaitin-cli safeline-ce | 表格 | -o json(或 --output json) | --verbose |
chaitin-cli ddr | JSON | -o json 已是默认格式 | -o table 便于快速手动阅读;-v 用于请求调试 |
chaitin-cli xray | JSON(无其他格式) | — | --debug 用于调试日志 |
chaitin-cli cloudwalker | 文本 | -f json(或 --format json) | --no-trunc 用于禁用文本截断 |
chaitin-cli veinmind | 表格 | -o json(或 --output json) | -v 用于请求调试;--dry-run 会打印请求摘要 |
chaitin-cli tanswer | JSON | 默认格式;无需切换格式 | --insecure 用于绕过 TLS 证书验证 |
通过管道传入 jq 时请注意,SafeLine 使用 --indent(而不是 -o / -f),T-Answer 默认输出 JSON。
按功能快速查找
按任务选择,而非按产品名称选择。以下按常见程度从高到低排列。
| 任务 | 命令路径 |
|---|---|
| 阻止/允许 IP、限速、手动 ACL | safeline acl · safeline ip-group · safeline-ce rule |
| 在 URL 路径 / 请求头 / 请求体上添加自定义规则 | safeline policy-rule · safeline-ce rule |
| 管理受保护的网站 / Web 服务 | safeline site · safeline-ce site |
| 查询攻击 / 访问 / 限速日志 | safeline log · safeline-ce log |
| 启用检测模块(SQLi、XSS、…) | safeline policy-group · safeline-ce module · safeline-ce skynet |
| 启动 / 停止漏洞扫描 | xray plan |
| 查询扫描结果、漏洞并生成报告 | xray result · xray vulnerability · xray report |
| 管理 CodeInsight 项目和扫描任务 | codeinsight project · codeinsight task · codeinsight repo-config |
| 管理 CodeForce 项目、AI 任务、代码库和降噪工作流 | codeforce project · codeforce audit · codeforce denoise · codeforce repository · codeforce git-auth |
| 资产清单(Web / 域名 / IP) | xray web_asset · xray domain_asset · xray ip_asset |
| 基线 / 合规检查 | xray baseline · cloudwalker baseline_v2 |
| 容器安全 Agent 管理 | veinmind agent |
| 容器 / 镜像 / Kubernetes 清单 | veinmind img · veinmind container · veinmind cluster · veinmind host |
| 容器软件 / 网站 / Web 框架清单 | veinmind app · veinmind website · veinmind web-framework |
| 容器安全基线 / 合规事件 | veinmind baseline |
| 容器运行时和镜像风险事件 | veinmind risk |
| 主机级事件响应(Webshell、反向 Shell、暴力破解) | cloudwalker webshell_event · cloudwalker revshell_event · cloudwalker brute_force |
| 主机资产清单(进程 / 端口 / 容器 / 用户) | cloudwalker process_asset · cloudwalker port_asset · cloudwalker docker_container · cloudwalker user_asset |
| 勒索软件防护、文件隔离、终止进程 | cloudwalker anti_ransomware · cloudwalker file_disposal · cloudwalker process_kill |
| 主机防火墙 / 网络拦截 | cloudwalker firewall · cloudwalker network_reject |
| DDR 设备清单 / 文件扫描任务 | ddr device list · ddr device filescantask · ddr device filescantask list |
| DDR 审批 / 策略日志 | ddr disposal approvalinstance list · ddr policylog channel list · ddr policylog softwarenetwork list |
| DDR 行为控制策略 | ddr policy channel · ddr policy landing · ddr policy email · ddr policy codecontrol · ddr policy clipboard · ddr policy webpost-control |
| DDR 设备卸载 | ddr device status-action --operation uninstall |
| 流量威胁检测与响应操作 | tanswer alarm · tanswer file-alarm · tanswer asset · tanswer policy · tanswer response |
| 系统信息 / 许可证管理 | safeline system · safeline-ce cert info/get · xray system_info · xray system_service PostSystemLicense |
SafeLine(雷池 WAF)
全局标志(SafeLine)
| 标志 | 环境变量 | 说明 |
|---|---|---|
--url | SAFELINE_URL | SafeLine Skyview API 地址(必填) |
--api-key | SAFELINE_API_KEY | API 令牌 |
--indent | — | 输出经过美化排版的 JSON,而非默认表格。SafeLine 不提供单独的 -o/--output 标志——这是切换格式的唯一方式。 |
--insecure | — | 跳过 TLS 证书验证。默认值:true——SafeLine 默认会跳过验证。传入 --insecure=false 可重新启用验证。 |
完整工作流:应对攻击
本操作指南介绍典型的事件响应流程——从发现攻击到阻止攻击者。
步骤 1:查看仪表盘
# View last 24 hours stats
chaitin-cli safeline stats overview --duration h
# View last 30 days stats
chaitin-cli safeline stats overview --duration d
步骤 2:列出受保护的网站
chaitin-cli safeline site list
第 3 步:查看近期攻击日志
# List the latest 20 attack events
chaitin-cli safeline log detect list --count 20
# Get full details of a specific event
chaitin-cli safeline log detect get \
--event-id "6edb4c7eb69042cd996045e3ee5526d9" \
--timestamp "1774857841"
第 4 步:封禁攻击者的 IP
选项 A — 创建 IP 组,并使用 ACL 规则封禁:
# Create an IP group for malicious IPs
chaitin-cli safeline ip-group create \
--name "Blocklist" \
--ips "203.0.113.42,198.51.100.7" \
--comment "Attackers from incident 2024-01"
# Create an ACL template that forbids the group
chaitin-cli safeline acl template create \
--name "Block Malicious IPs" \
--template-type manual \
--target-type cidr \
--action forbid \
--ip-groups <group-id>
选项 B — 不创建组,直接封禁指定 IP:
chaitin-cli safeline acl template create \
--name "Emergency Block" \
--template-type manual \
--target-type cidr \
--action forbid \
--targets "203.0.113.42,198.51.100.7"
第 5 步:添加自定义规则,封禁恶意路径
# Block requests to /admin/upload with high risk level
chaitin-cli safeline policy-rule create \
--comment "Block malicious upload path" \
--target urlpath \
--cmp infix \
--value "/admin/upload" \
--action deny \
--risk-level 3
第 6 步:确认检测模块已启用
# Check the policy group
chaitin-cli safeline policy-group list
chaitin-cli safeline policy-group get <id>
# Enable SQL injection and XSS detection
chaitin-cli safeline policy-group update <id> \
--module m_sqli,m_xss \
--state enabled
第 7 步:监控访问日志
chaitin-cli safeline log access list --count 50
chaitin-cli safeline log access get \
--event-id "1e1ef8e9b21d42cd996045e3ee5526d9" \
--req-start-time "1775117700"
第 8 步:解除误报的封禁
# List active ACL rules (blocked IPs)
chaitin-cli safeline acl rule list --template-id <template-id>
# Remove the block and add IP to whitelist
chaitin-cli safeline acl rule delete <rule-id> --add-to-whitelist
# Or clear all rules for a template
chaitin-cli safeline acl rule clear --template-id <template-id>
SafeLine 命令参考
stats
chaitin-cli safeline stats overview --duration h # 24h stats
chaitin-cli safeline stats overview --duration d # 30d stats
site
chaitin-cli safeline site list # List all sites
chaitin-cli safeline site get <id> # Get site details
chaitin-cli safeline site enable <id> # Enable a site
chaitin-cli safeline site disable <id> # Disable a site
chaitin-cli safeline site update <id> --policy-group <group-id> # Attach a policy group to a site
chaitin-cli safeline site update <id> --policy-group 0 # Detach policy group from a site
ip-group(别名:ipgroup)
chaitin-cli safeline ip-group list # List all IP groups
chaitin-cli safeline ip-group list --name "office" --count 50 --offset 0 # Filter by name with pagination
chaitin-cli safeline ip-group get <id> # Get IP group details
chaitin-cli safeline ip-group create --name "DC" --ips "172.16.0.0/16" --comment "Data center" # Create a new IP group
chaitin-cli safeline ip-group delete <id> # Delete an IP group
chaitin-cli safeline ip-group delete 1 2 3 # Batch delete IP groups
chaitin-cli safeline ip-group add-ip <id> --ips "10.0.1.0/24" # Add IPs to an IP group
chaitin-cli safeline ip-group remove-ip <id> --ips "10.0.1.0/24" # Remove IPs from an IP group
acl template
chaitin-cli safeline acl template list # List all ACL templates
chaitin-cli safeline acl template list --name "limit" # Filter templates by name
chaitin-cli safeline acl template get <id> # Get ACL template details
chaitin-cli safeline acl template enable <id> # Enable an ACL template
chaitin-cli safeline acl template disable <id> # Disable an ACL template
chaitin-cli safeline acl template delete <id> # Delete an ACL template
# Create manual block rule (specific IPs)
chaitin-cli safeline acl template create \
--name "Block IPs" --template-type manual \
--target-type cidr --action forbid \
--targets "192.168.1.100,10.0.0.50"
# Create auto rate-limit rule
chaitin-cli safeline acl template create \
--name "Rate Limit" --template-type auto \
--period 60 --limit 100 --action forbid
# Create throttle rule (allow but slow down)
chaitin-cli safeline acl template create \
--name "Throttle" --template-type auto \
--period 60 --limit 100 \
--action limit_rate \
--limit-rate-limit 10 --limit-rate-period 60
acl rule(被封禁的 IP 条目)
chaitin-cli safeline acl rule list --template-id <id> # List blocked IP entries for a template
chaitin-cli safeline acl rule delete <id> # Delete a blocked IP entry
chaitin-cli safeline acl rule delete <id> --add-to-whitelist # Delete and move IP to whitelist
chaitin-cli safeline acl rule clear --template-id <id> # Clear all blocked IP entries for a template
chaitin-cli safeline acl rule clear --template-id <id> --add-to-whitelist # Clear all and move IPs to whitelist
policy-group
chaitin-cli safeline policy-group list # List all policy groups
chaitin-cli safeline policy-group get <id> # Get policy group details
chaitin-cli safeline policy-group update <id> --module m_sqli,m_xss --state enabled # Enable detection modules
chaitin-cli safeline policy-group update <id> --module m_cmd_injection --state disabled # Disable a detection module
可用模块:m_sqli m_xss m_cmd_injection m_file_include m_file_upload m_php_code_injection m_php_unserialize m_java m_java_unserialize m_ssrf m_ssti m_csrf m_scanner m_response m_rule
policy-rule
chaitin-cli safeline policy-rule list # List all policy rules (global by default)
chaitin-cli safeline policy-rule list --global=false # List site-specific rules only
chaitin-cli safeline policy-rule get <id> # Get policy rule details
chaitin-cli safeline policy-rule enable <id> # Enable a policy rule
chaitin-cli safeline policy-rule disable <id> # Disable a policy rule
chaitin-cli safeline policy-rule delete <id> # Delete a policy rule
# Create simple rule
chaitin-cli safeline policy-rule create \
--comment "Block /admin" \
--target urlpath --cmp infix --value "/admin" \
--action deny --risk-level 3
# List available targets and operators
chaitin-cli safeline policy-rule targets
chaitin-cli safeline policy-rule targets --cmp urlpath
# Actions: deny | dry_run | allow
# Risk levels: 0=none 1=low 2=medium 3=high
log
# Attack logs
chaitin-cli safeline log detect list --count 50
chaitin-cli safeline log detect list --current-page 1 --target-page 2
chaitin-cli safeline log detect get --event-id "<id>" --timestamp "<ts>"
# Access logs
chaitin-cli safeline log access list --count 50
chaitin-cli safeline log access get --event-id "<id>" --req-start-time "<ts>"
# Rate-limit logs (alias: rl)
chaitin-cli safeline log rate-limit list --count 50 --offset 0
system
chaitin-cli safeline system license # Get license information
chaitin-cli safeline system machine-id # Get machine ID (for license activation)
chaitin-cli safeline system log list --count 50 --offset 0 # List system operation logs
network(仅限硬件模式)
chaitin-cli safeline network workgroup list # alias: wg list
chaitin-cli safeline network workgroup get <name> # alias: wg get
chaitin-cli safeline network interface list # alias: if list
chaitin-cli safeline network interface ip <name> # alias: if ip
chaitin-cli safeline network gateway get # alias: gw get
chaitin-cli safeline network route list # alias: sr list
X-Ray(洞鉴漏洞扫描器)
全局标志(X-Ray)
| 标志 | 环境变量 | 说明 |
|---|---|---|
--url | XRAY_URL | X-Ray API 地址(必填) |
--api-key | XRAY_API_KEY | API 令牌 |
--debug | — | 启用调试日志 |
--insecure | — | 跳过 TLS 证书验证 |
基本命令
# Quick scan (create and immediately execute a task)
chaitin-cli xray plan PostPlanCreateQuick \
--targets=10.3.0.4,10.3.0.5 \
--engines=<engine-id> \
--project-id=1
# List scan tasks
chaitin-cli xray plan PostPlanFilter \
--filterPlan.limit=10 \
--filterPlan.offset=0
# Stop a scan task
chaitin-cli xray plan PostPlanStop --stopPlanBody.id=<id>
# Resume a scan task
chaitin-cli xray plan PostPlanExecute --executePlanBody.id=<id>
# Delete a scan task
chaitin-cli xray plan DeletePlanID --id=<id>
命令类别
| 命令 | 说明 |
|---|---|
chaitin-cli xray asset_property | 资产管理 |
chaitin-cli xray audit_log | 审计日志管理 |
chaitin-cli xray baseline | 基线检查管理 |
chaitin-cli xray custom_poc | 自定义 POC 管理 |
chaitin-cli xray domain_asset | 域名资产管理 |
chaitin-cli xray insight | 数据洞察与分析 |
chaitin-cli xray ip_asset | IP/主机资产管理 |
chaitin-cli xray plan | 扫描任务管理 |
chaitin-cli xray project | 项目管理 |
chaitin-cli xray report | 报告管理 |
chaitin-cli xray result | 扫描结果管理 |
chaitin-cli xray role | 角色管理 |
chaitin-cli xray service_asset | 服务资产管理 |
chaitin-cli xray system_info | 系统信息 |
chaitin-cli xray system_service | 系统服务管理 |
chaitin-cli xray task_config | 任务配置管理 |
chaitin-cli xray template | 策略模板管理 |
chaitin-cli xray user | 用户管理 |
chaitin-cli xray vulnerability | 漏洞管理 |
chaitin-cli xray web_asset | Web 资产管理 |
chaitin-cli xray xprocess | XProcess 任务实例管理 |
chaitin-cli xray xprocess_lite | XProcess lite 管理 |
CloudWalker(云溯 CWPP)
全局标志(CloudWalker)
| 标志 | 环境变量 | 说明 |
|---|---|---|
--url | CLOUDWALKER_URL | CloudWalker RPC 地址(必填) |
--api-key | CLOUDWALKER_API_KEY | API 密钥 |
注意:CloudWalker 未提供
--insecure,但其 HTTP 客户端始终设置InsecureSkipVerify: true,因此可直接使用自签名证书,无需安装 CA 或回退到 HTTP。
命令类别
每个类别都有子命令 — 运行 chaitin-cli cloudwalker <category> --help 可查看子命令列表。
安全事件
| 命令 | 描述 |
|---|---|
chaitin-cli cloudwalker abnormal_login_event | 异常登录事件 |
chaitin-cli cloudwalker brute_force | 暴力破解事件 |
chaitin-cli cloudwalker elevation_process_event | 权限提升进程事件 |
chaitin-cli cloudwalker event_stat | 事件管理与统计 |
chaitin-cli cloudwalker full_command | 完整命令执行记录 |
chaitin-cli cloudwalker honeypot | 蜜罐诱捕事件 |
chaitin-cli cloudwalker malware_event | 恶意软件事件 |
chaitin-cli cloudwalker memory_webshell_event | 内存 Webshell 事件 |
chaitin-cli cloudwalker network_audit_event | 网络异常事件 |
chaitin-cli cloudwalker non_white_process | 非白名单进程事件 |
chaitin-cli cloudwalker revshell_event | 反向 Shell 事件 |
chaitin-cli cloudwalker suspicious_operation | 可疑操作事件 |
chaitin-cli cloudwalker webshell_event | Webshell 事件 |
资产清单
| 命令 | 描述 |
|---|---|
chaitin-cli cloudwalker application_asset | 应用资产 |
chaitin-cli cloudwalker asset_cert | 证书资产 |
chaitin-cli cloudwalker asset_config | 资产采集配置 |
chaitin-cli cloudwalker asset_crontab | 定时任务资产 |
chaitin-cli cloudwalker asset_env | 环境变量资产 |
chaitin-cli cloudwalker asset_registry | 注册表资产 |
chaitin-cli cloudwalker asset_startup | 启动项资产 |
chaitin-cli cloudwalker docker_container | Docker 容器资产 |
chaitin-cli cloudwalker docker_image | Docker 镜像资产 |
chaitin-cli cloudwalker docker_network | Docker 网络资产 |
chaitin-cli cloudwalker host_asset | 主机资产(包括 Agent 管理) |
chaitin-cli cloudwalker host_discovery | 未知主机发现 |
chaitin-cli cloudwalker host_nic_asset | 网络接口卡资产 |
chaitin-cli cloudwalker host_partition_asset | 分区资产 |
chaitin-cli cloudwalker host_route_asset | 路由资产 |
chaitin-cli cloudwalker port_asset | 端口资产 |
chaitin-cli cloudwalker process_asset | 进程资产 |
chaitin-cli cloudwalker user_asset | 用户资产 |
chaitin-cli cloudwalker website_asset | 网站资产 |
安全防护
| 命令 | 描述 |
|---|---|
chaitin-cli cloudwalker anti_ransomware | 反勒索软件防护 |
chaitin-cli cloudwalker baseline_v2 | 基线检查管理 |
chaitin-cli cloudwalker detection_rule | 检测规则管理 |
chaitin-cli cloudwalker file_disposal | 文件处置(隔离/删除) |
chaitin-cli cloudwalker firewall | 防火墙规则管理 |
chaitin-cli cloudwalker mimicry | 拟态防御 |
chaitin-cli cloudwalker network_reject | 网络阻断管理 |
chaitin-cli cloudwalker port_scan | 端口扫描防护 |
chaitin-cli cloudwalker process_kill | 进程终止 |
chaitin-cli cloudwalker security_check | 安全检查 |
chaitin-cli cloudwalker sensitive_file | 敏感文件管理 |
chaitin-cli cloudwalker sensitive_file_scan | 敏感文件扫描 |
chaitin-cli cloudwalker sensitive_port | 敏感端口管理 |
chaitin-cli cloudwalker sensitive_user | 敏感用户管理 |
chaitin-cli cloudwalker tamper_proof | 文件防篡改保护 |
chaitin-cli cloudwalker vuln | 漏洞管理 |
chaitin-cli cloudwalker weak_passwd | 弱密码检测 |
chaitin-cli cloudwalker whitelist | 白名单规则管理 |
平台管理
| 命令 | 描述 |
|---|---|
chaitin-cli cloudwalker admin_agent | Agent 模块更新管理 |
chaitin-cli cloudwalker admin_monitor | 系统监控管理 |
chaitin-cli cloudwalker admin_strategy | 策略管理 |
chaitin-cli cloudwalker agent | Agent 管理 |
chaitin-cli cloudwalker agent_detector | 恶意文件 Agent 管理 |
chaitin-cli cloudwalker agent_module | Agent 模块管理 |
chaitin-cli cloudwalker alert_config | 告警配置 |
chaitin-cli cloudwalker audit_log | 审计日志 |
chaitin-cli cloudwalker business_group | 业务组管理 |
chaitin-cli cloudwalker crontab | 定时任务管理 |
chaitin-cli cloudwalker emergency_vuln_v1 | 紧急漏洞管理 |
chaitin-cli cloudwalker endpoint | Agent 连接配置 |
chaitin-cli cloudwalker log_collect | 日志收集 |
chaitin-cli cloudwalker message_queue | 消息队列管理 |
chaitin-cli cloudwalker organization | 组织管理 |
chaitin-cli cloudwalker package_service | 更新包服务 |
chaitin-cli cloudwalker patch_info | 补丁情报 |
chaitin-cli cloudwalker patch_info_event | 补丁风险事件 |
chaitin-cli cloudwalker report | 报告管理 |
chaitin-cli cloudwalker scout_agent_api | 事件收集 Agent 管理 |
chaitin-cli cloudwalker security_strategy | 安全维度策略管理 |
chaitin-cli cloudwalker security_tool | 安全工具 |
chaitin-cli cloudwalker statistics | 事件统计概览 |
chaitin-cli cloudwalker threat_overview | 威胁概览 |
chaitin-cli cloudwalker vuln_info | 漏洞情报 |
VeinMind(容器安全)
VeinMind 命令根据内嵌的 OpenAPI 规范生成。使用 chaitin-cli veinmind --help 列出所有分组,然后使用 chaitin-cli veinmind <group> --help 和 chaitin-cli veinmind <group> <cmd> --help 逐级查看详情。
全局标志(VeinMind)
| 标志 | 环境变量 | 描述 |
|---|---|---|
--url | VEINMIND_URL | VeinMind API 地址 |
--api-key | VEINMIND_API_KEY | 完整的 64 字符 VeinMind API 令牌 |
-o, --output | — | 输出格式:table(默认)或 json |
-v, --verbose | — | 打印请求 URL、标头和正文 |
--dry-run | — | 打印请求摘要,但不发送产品请求 |
注意:VeinMind 通过将 64 字符 API 令牌拆分为密钥/键部分并创建会话来进行身份验证。其 HTTP 客户端会跳过 TLS 验证,因此产品的自签名证书无需额外标志。
容器安全命令组
| 命令 | 主要用途 |
|---|---|
chaitin-cli veinmind agent | 探针/扫描器管理、分组、安装命令、启动/停止/重启/修复/删除 |
chaitin-cli veinmind app | 按软件名称/版本及相关镜像查询软件资产清单 |
chaitin-cli veinmind host | 非集群主机资产清单及相关主机镜像 |
chaitin-cli veinmind baseline | 左移合规基线元数据和事件 |
chaitin-cli veinmind img | 镜像资产清单、详情、层、历史记录、来源信息、修复建议 |
chaitin-cli veinmind container | 容器资产清单、容器详情、网络、端口、进程、卷 |
chaitin-cli veinmind cluster | Kubernetes 集群和资源:节点、Pod、服务、角色、密钥、工作负载、PV/PVC |
chaitin-cli veinmind website | 网站资产以及对外提供网站的容器 |
chaitin-cli veinmind web-framework | Web 框架资产以及对外提供框架的容器 |
chaitin-cli veinmind risk | 运行时/镜像风险事件、事件详情、响应操作、事件状态更新 |
常见只读查询
解析或汇总结果时,优先使用 -o json。大多数列表命令使用 --offset 和 --page-size;具体筛选条件因命令而异,因此添加筛选条件前请先查看叶子命令的帮助信息。
# Probes / scanners
chaitin-cli veinmind agent scanner-list --offset 0 --page-size 20 -o json
chaitin-cli veinmind agent scanner-list --state 2 --host-ip <ip> -o json
# Image and container inventory
chaitin-cli veinmind img list --offset 0 --page-size 20 --risk 5 -o json
chaitin-cli veinmind img base-info --id <image-list-id> -o json
chaitin-cli veinmind container list --offset 0 --page-size 20 --state 3 --risk 4 -o json
chaitin-cli veinmind container get --id <container-list-id> -o json
# Kubernetes and host inventory
chaitin-cli veinmind cluster cluster-list --offset 0 --page-size 20 --status 1 -o json
chaitin-cli veinmind cluster pod-list --cluster-id <cluster-id> --offset 0 --page-size 20 -o json
chaitin-cli veinmind host list --offset 0 --page-size 20 --name <host-name> -o json
# Software, web site, and web framework assets
chaitin-cli veinmind app agg-list --offset 0 --page-size 20 --name nginx -o json
chaitin-cli veinmind website list --offset 0 --page-size 20 --container-name <container-name> -o json
chaitin-cli veinmind web-framework list --offset 0 --page-size 20 --name spring -o json
# Baseline metadata and events
chaitin-cli veinmind baseline meta -o json
chaitin-cli veinmind baseline events --set-id <set-id> --item-id <item-id> --offset 0 --page-size 20 -o json
# Risk events
chaitin-cli veinmind risk real-time-event-list -o json
chaitin-cli veinmind risk container-webshell-list --offset 0 --page-size 20 --risk 5 --manage-status 1 -o json
chaitin-cli veinmind risk container-malicious-file-list --offset 0 --page-size 20 --risk 5 -o json
chaitin-cli veinmind risk container-revshell-event-list --offset 0 --page-size 20 --risk 4 -o json
chaitin-cli veinmind risk event-info --event-type 8 --id <event-id> -o json
命令帮助中的实用枚举提示:
| 字段 | 值 |
|---|---|
--risk | 1 无风险,2 低,3 中,4 高,5 严重 |
--state on container list | 1 创建中,2 已创建,3 运行中,4 已停止 |
--status on cluster cluster-list | 1 可访问,2 不可访问 |
--manage-status on risk event lists | 1 有风险,2 确认中,3 已解决,4 误报,5 已忽略 |
--event-type on risk event-info | 1 镜像敏感文件,2 镜像恶意文件,3 镜像 WebShell,5 容器命令审计,6 反向 Shell,7 容器恶意文件,8 容器 WebShell,9 暴力破解,10 弱密码,11 内存木马,12 紧急漏洞,22 逃逸,23 异常连接 |
变更/响应命令
将 agent start/stop/restart/repair/delete、agent group create/update/delete、cluster delete、risk batch-tag-events、risk container-op、risk file-op 和 risk resume-* 命令视为变更操作。如果命令支持请求正文,先使用 --dry-run -v。对于 JSON 负载,优先使用 --body-file,而非内联的 --body。
# Inspect the request shape before changing event status
chaitin-cli --dry-run veinmind risk batch-tag-events --body-file /tmp/veinmind-event-status.json -v -o json
# Inspect the request shape before container / Pod response actions
chaitin-cli --dry-run veinmind risk container-op --body-file /tmp/veinmind-container-op.json -v -o json
不要臆造 VeinMind 请求正文。使用 --help 确认叶子命令;如有需要,检查相关的 OpenAPI/源码映射,并且只有在确认目标事件、资产或探针 ID 后,才执行变更命令。
T-Answer(全悉流量威胁检测)
处理 T-Answer 任务时,请遵循以下协议:
- 连接并进行身份验证。 配置
TANSWER_URL和TANSWER_API_KEY(或tanswer配置节)。运行chaitin-cli tanswer auth status检查本地配置,并在访问产品前运行chaitin-cli tanswer auth check。如果缺少配置或授权,请询问用户;不要臆造值。 - 先探索,再操作。 首先运行
chaitin-cli tanswer --help,然后查看领域命令和叶子命令的--help。通过帮助信息或chaitin-cli tanswer manifest探索未知命令、标志、输出字段和受保护写入的要求;不要依赖仓库中的产品文档,也不要猜测命令。 - 读取操作。 优先使用语义命令,而非
api;完成身份验证后执行只读操作,并向用户概述返回的 JSON。 - 受保护的语义写入需要用户授权。 首先使用
--preview运行目标命令。向用户说明目标、变更摘要、影响和风险警告,然后等待用户明确确认该项具体变更。只有用户确认后,才可使用文档中准确记载的--confirm令牌调用命令。可从帮助信息或清单中查到的令牌只是 CLI 的机械性要求,并不代表用户授权;切勿自行使用该令牌执行写入操作。 - 开放 API 回退方案。 只有在没有语义命令支持所请求的功能,且用户已提供已知并获授权的端点、方法和请求正文时,才使用
chaitin-cli tanswer api。不要猜测 RPC 方法、路径或请求正文。GET/HEAD 请求可以直接运行。对于其他所有 HTTP 方法,先在不带--confirm或带--preview的情况下运行命令;向用户说明方法、路径、查询参数、正文和风险;等待用户明确确认该具体请求;然后使用--confirm CONFIRM_TANSWER_RAW_API_WRITE。根级别的--dry-run标志不适用于tanswer。
Fast Agent Workflow(T-Answer)
开始自主执行 T-Answer 工作前,请运行 chaitin-cli tanswer auth check 和 chaitin-cli tanswer manifest,除非当前会话已验证过环境。对于创建、更新、删除、导入、启用、禁用或响应操作,请先使用 --preview 运行命令;除非用户或上游系统明确提供确切的确认令牌,否则不要填写 --confirm。
对于常规只读任务,本节已足够。对于复杂路由、写操作规划或含糊的策略/响应决策,请继续查看相关领域/叶级 --help 和 chaitin-cli tanswer manifest;不要猜测。需要特定命令的完整标志、输出字段、详细示例或边界说明时,请使用 products/tanswer/COMMAND_REFERENCE.md。入门指南、Token 设置、权限要求、冒烟测试和故障排除请参阅 products/tanswer/README.md。
快速路由(T-Answer)
| 用户意图 | 优先使用 |
|---|---|
| 验证连接、本地配置或 Token 是否可用 | tanswer auth status、tanswer auth check |
| 查询支持的命令、标志、风险级别、输出字段 | tanswer manifest |
| 系统版本、License、节点状态、健康状况摘要 | tanswer system status |
| 整体威胁态势、告警分布、攻击者/受害者排行榜 | tanswer alarm overview |
| 用于值班处置的严重/高危成功攻击或受入侵告警 | tanswer alarm high-priority |
| 原始威胁告警记录或单条告警详情 | tanswer alarm list,然后运行 tanswer alarm detail --id <doc_id> |
| 与某条源告警相关的告警 | tanswer alarm related --id <doc_id> |
| 恶意文件、Webshell 或沙箱结果调查 | tanswer file-alarm overview、malicious、webshell、sandbox、detail |
| 已配置的资产清单、分组树、导入/导出、资产维护 | tanswer asset ... |
| 按协议查询流量元数据、高级查询、详情或告警上下文 | tanswer metadata ... |
| 检测白名单或自定义 IOC 情报 | tanswer policy ... |
| 绕过拦截策略、拦截记录、响应白名单、联动设备、自动响应 | tanswer response ... |
只有在通过列表/详情命令或用户获取所需 ID 后,才能使用 alarm detail、file-alarm detail、asset detail、metadata detail、metadata near-alarm 以及基于告警的策略/响应命令。
安全规则(T-Answer)
- 对于会更改状态的操作,不要使用
curl绕过chaitin-cli tanswer。 - 不要猜测 RPC 方法或请求正文。请使用语义化命令、
manifest、命令--help,或用户提供且经授权的 Open API 文档。 - 不要使用
file-alarm下载样本、提交样本或触发新的沙箱分析。 - 将
metadata near-alarm视为调查上下文,而非独立的攻击证据。 - 未经单独验证,不要将 T-Answer 响应记录视为第三方设备已完成处置的证明。
SafeLine-CE(雷池社区版)
SafeLine-CE 是 SafeLine WAF 的社区版。其命令结构与企业版不同。
全局标志(SafeLine-CE)
| 标志 | 说明 |
|---|---|
--url | SafeLine-CE 服务地址(例如 https://your-server:9443) |
--api-key | 用于身份验证的 API 密钥 |
-o, --output | 输出格式:table(默认)或 json |
--verbose | 详细输出 |
注意:SafeLine-CE 不提供
--insecure,但其 HTTP 客户端始终设置InsecureSkipVerify: true。
配置
safeline-ce:
url: https://your-safeline-ce-server:9443
api_key: YOUR_API_KEY
也可以使用环境变量:
SAFELINE_CE_URL=https://your-safeline-ce-server:9443
SAFELINE_CE_API_KEY=YOUR_API_KEY
命令参考
stat
chaitin-cli safeline-ce stat overview # Aggregated stats: QPS, access, intercept counts
site
chaitin-cli safeline-ce site list # List all web services
chaitin-cli safeline-ce site create # Create a web service
chaitin-cli safeline-ce site update # Update a web service
chaitin-cli safeline-ce site delete # Delete a web service
rule(自定义策略规则)
chaitin-cli safeline-ce rule list # List all custom rules
chaitin-cli safeline-ce rule create # Create a custom rule
chaitin-cli safeline-ce rule update # Update a custom rule
chaitin-cli safeline-ce rule delete # Delete a custom rule
chaitin-cli safeline-ce rule switch # Enable or disable a custom rule
ipgroup
chaitin-cli safeline-ce ipgroup list # List all IP groups
chaitin-cli safeline-ce ipgroup get # Get IP group details
chaitin-cli safeline-ce ipgroup create # Create an IP group
chaitin-cli safeline-ce ipgroup update # Update an IP group
chaitin-cli safeline-ce ipgroup delete # Delete an IP group
chaitin-cli safeline-ce ipgroup append # Add IPs to an IP group
log
chaitin-cli safeline-ce log attack list # List attack logs
chaitin-cli safeline-ce log attack get # Get attack log detail by ID
chaitin-cli safeline-ce log rule list # List rule-triggered attack logs
chaitin-cli safeline-ce log rule get # Get rule-triggered attack log detail
chaitin-cli safeline-ce log audit list # Get audit logs
skynet(增强检测规则)
chaitin-cli safeline-ce skynet get # Get enhanced rule configuration
chaitin-cli safeline-ce skynet update # Update enhanced rule configuration
chaitin-cli safeline-ce skynet switch get # Get global enable status of enhanced rules
chaitin-cli safeline-ce skynet switch set # Enable or disable enhanced rules globally
module(全局语义)
chaitin-cli safeline-ce module get # Get global semantics mode
chaitin-cli safeline-ce module update # Update global semantics mode
cert(系统/许可证)
chaitin-cli safeline-ce cert info # Get system info
chaitin-cli safeline-ce cert get # Get license info
chaitin-cli safeline-ce cert update # Update management certificate
DDR(数据安全运营)
Global Flags (DDR)
| Flag | Env Var | Description |
|---|---|---|
--url | DDR_URL | DDR API address, usually ending with /qzh/api/v1 |
--api-key | DDR_API_KEY | API key or Serval token |
-o, --output | — | Output format: json (default) or table |
-v, --verbose | — | Print request URL, headers, and body |
DDR commands default to JSON output. Keep -o json in examples when the result will be parsed, and use -o table only when the user asks for a compact human-readable summary.
创建资产扫描任务流程
- 根据设备名称查询设备 UID。Example for
PC-000006:
chaitin-cli ddr device list --accept application/json --accept-language zh --content-type application/json --if-none-match '' --x-cs-header-crypt none --x-cs-header-debug false --x-cs-header-timezone Asia/Shanghai -o json --search PC-000006 --limit 20 --page 1
- 从返回结果里取设备
id,并用该设备名称和 ID 修改扫描任务 body 里的name、include[0].name、include[0].id、binding_config.include.device_ids。建议创建临时 JSON 文件,避免命令行转义问题:
{
"file_size_lower_measure": "MB",
"file_size_lower": 0,
"file_size_upper_measure": "MB",
"file_size_upper": 100,
"name": "2222-1",
"description": "3222",
"scope": "common",
"include": [
{
"name": "PC-000341",
"id": "62515059-0700-46a8-8441-bb75413e75de",
"type": "device",
"expand": {
"ip": "192.168.96.247",
"code": "PC-000341",
"username": "orange@orangedeMacBook-Pro",
"os_icon": ["macOS"],
"status": "activated",
"conn_status": "online",
"agent_version": "3.9.100",
"tags": []
}
}
],
"frequency": "immediately",
"worktime_point": [
{"begin": "00:00", "end": "23:59", "week": 1},
{"begin": "00:00", "end": "23:59", "week": 2},
{"begin": "00:00", "end": "23:59", "week": 3},
{"begin": "00:00", "end": "23:59", "week": 4},
{"begin": "00:00", "end": "23:59", "week": 5},
{"begin": "00:00", "end": "23:59", "week": 6},
{"begin": "00:00", "end": "23:59", "week": 7}
],
"scan_mode": "custom",
"dirs_scan_options": {
"Windows": [{"path": "C:\\Users"}, {"path": "D:\\"}, {"path": "E:\\"}],
"macOS": [{"path": "/tmp/123"}],
"Linux": [{"path": "/home"}, {"path": "/data"}],
"Kylin": [{"path": "/home"}, {"path": "/data"}],
"UOS": [{"path": "/home"}, {"path": "/data"}]
},
"scan_all_das": true,
"expand": {"web": {"file_size_operator": "lt", "file_size_num": 100, "file_size_unit": "MB"}},
"file_scan_mode": "speed",
"advanced_option": false,
"binding_config": {
"source": "file_scan",
"include": {"device_ids": ["62515059-0700-46a8-8441-bb75413e75de"]},
"exclude": {}
},
"file_exclude_ids": [],
"file_include_ids": [],
"custom_whitelist": [],
"notification_config": [],
"governance_id": null
}
Run the task with the JSON body content:
chaitin-cli ddr device filescantask --body "$(cat /tmp/ddr-filescantask.json)"
查看扫描任务结果
Query the latest scan task and summarize the result for the user in a compact table when possible:
chaitin-cli ddr device filescantask list --body '{"page": 1, "limit": 1, "search": ""}' -o json
查看审批任务列表
chaitin-cli ddr disposal approvalinstance list --page 1 --limit 10 --search "" -o json
外发管控日志查询
chaitin-cli ddr policylog channel list --page 1 --limit 20 --search "" -o json
网络管理日志查询
chaitin-cli ddr policylog softwarenetwork list --page 1 --limit 20 --search "" -o json
卸载设备
This is a mutating operation. Confirm the target device UUID before execution and prefer --dry-run first when available.
./bin/chaitin-cli ddr device status-action --device-id <device uuid> --operation uninstall
终端扫描
chaitin-cli ddr device filescantask list # 终端扫描任务列表
chaitin-cli ddr device filescantask get --task-id <task id> # 终端扫描任务结果详情
chaitin-cli ddr device filescantask instance-device-list --task-id=<task_id> --instance-id=<instance_id> # 拉取扫描设备列表
chaitin-cli ddr device filescantask instance-results-list --task-id=<task_id> --instance-id=<instance_id> # 拉取命中结果列表
chaitin-cli ddr device filescantask remove --task-id=<task_id> # 删除资产扫描任务
渠道管理
chaitin-cli ddr system channeldefgroup list # 获取渠道列表
外发管控
chaitin-cli ddr policy list # 外发管控策略列表
chaitin-cli ddr policy channel get --policy-id <policy_id> # 外发管控策略详情
chaitin-cli ddr policy channel --body='{"mode":"quick","name":"<name>","policy_group_ids":["<policy_group_id>"],"description":"222","risk_level":3,"scope":"common","expression_fields":[{"field":"channel","operator":"contains","value":["<channel_id>"]},{"field":"file_size_limit_mb","operator":"gt","value":10}],"action":"approval","action_template_id":"<action_template_id>","binding_config":{"source":"channel","include":{"device_ids":["<device_id>"]},"exclude":{}}}' # 创建外发管控策略 body 内容建议创建临时文件,避免转移问题, <name> 替换为策略名称, <policy_group_id> 替换为策略组ID, <channel_id> 替换为渠道ID, <device_id> 替换为设备ID, <action_template_id> 替换为动作模板ID
创建外发管控策略 body 内容样例
{"mode":"quick","name":"<name>","policy_group_ids":["0f2ad6aa-d1cc-4a4e-a0b0-3bd749579868"],"description":"222","risk_level":3,"scope":"common","expression_fields":[{"field":"channel","operator":"contains","value":["6509b799-78e7-4ede-9af4-2c743897e6c6"]},{"field":"file_size_limit_mb","operator":"gt","value":10}],"action":"approval","action_template_id":"90144b18-e9d2-49ad-9c1d-cef0a4146ccc","binding_config":{"source":"channel","include":{"device_ids":["ebf62d82-f02b-4805-b6c3-31d1475b8061"]},"exclude":{}}}
软件管控
chaitin-cli ddr softwaremanager list --page 1 --limit 50 --search "" # 软件管控-软件列表
chaitin-cli ddr softwaremanager software-hash-list --software-hash=<software-hash> --limit=10 --page=1 --search= --body='{"is_pirated":false,"use_default_query":false,"search":"","queries":[]}' # 软件管控-安装详情 <software-hash> 取 软件管控-软件列表 里的 total_view_digest 字段
行为管控策略通用约定
创建或更新策略时优先把 JSON 写到临时文件,再用 --body-file,避免 shell 转义错误。启停动作已用 chaitin-cli --dry-run ddr ... -v 校验,最小 body 是 {"operation":"activate"};停用通常把 activate 换成 deactivate。
OpenAPI 里的 webpost_control 在 CLI 中会归一化为 webpost-control,命令必须写连字符。
落盘管控
chaitin-cli ddr system channeldefgroup landing-list -o json # 落盘管控源列表
chaitin-cli ddr policy landing list # 落盘管控列表
chaitin-cli ddr policy landing action --uid <policy_id> --body '{"operation":"activate"}' # 启用落盘管控策略
chaitin-cli ddr policy landing action --uid <policy_id> --body '{"operation":"deactivate"}' # 停用落盘管控策略
chaitin-cli ddr policy landing get --uid <policy_id> # 落盘管控详情
chaitin-cli ddr policy landing remove --uid <policy_id> # 删除落盘管控策略
chaitin-cli ddr policy landing --body-file /tmp/ddr-policy-landing.json # 创建落盘管控策略
创建 落盘管控 body 内容样例
{"name":"test_langding","scope":"common","expression_fields":[{"field":"channel","operator":"contains","value":["6509b799-78e7-4ede-9af4-2c743897e6c6"]}],"action":"notify","category":"landing","policy_group_ids":[null],"binding_config":{"source":"landing","include":{"device_ids":["0578ae3e-6369-4cc4-bad6-ff48f1cf6ceb"]},"exclude":{}}}
邮件管控 - email
chaitin-cli ddr system channeldefgroup email-list -o json # 邮件管控源列表
chaitin-cli ddr policy email list -o json # 邮件管控策略列表
chaitin-cli ddr policy email get --uid <policy_id> -o json # 邮件管控策略详情
chaitin-cli ddr policy email action --uid <policy_id> --body '{"operation":"activate"}' # 启用邮件管控策略
chaitin-cli ddr policy email action --uid <policy_id> --body '{"operation":"deactivate"}' # 停用邮件管控策略
chaitin-cli ddr policy email remove --uid <policy_id> # 删除邮件管控策略
chaitin-cli ddr policy email --body-file /tmp/ddr-policy-email.json # 创建邮件管控策略
chaitin-cli ddr policy email entitywhitelist-list -o json # 邮件管控实体白名单列表
chaitin-cli ddr policylog email timelinelist --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' -o json # 邮件管控时间线
chaitin-cli ddr policylog email stafflist --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' -o json # 邮件管控员工列表
创建 邮件管控 body 内容样例
{"name":"邮件策略","description":"策略描述","scope":"global","binding_config":{"source":"email","include":{},"exclude":{}},"action":"notify","expression":"N/A","expression_relation":"all","expression_fields":[{"field":"channel","operator":"contains","value":["all_channels"]}]}
代码管控 - codecontrol
chaitin-cli ddr policy codecontrol list --page 1 --page-size 20 --search "" -o json # 代码管控策略列表
chaitin-cli ddr policy codecontrol get --policy-id <policy_id> -o json # 代码管控策略详情
chaitin-cli ddr policy codecontrol action --policy-id <policy_id> --body '{"operation":"activate"}' # 启用代码管控策略
chaitin-cli ddr policy codecontrol action --policy-id <policy_id> --body '{"operation":"deactivate"}' # 停用代码管控策略
chaitin-cli ddr policy codecontrol remove --policy-id <policy_id> # 删除代码管控策略
chaitin-cli ddr policy codecontrol create --body-file /tmp/ddr-policy-codecontrol.json # 创建代码管控策略
chaitin-cli ddr policy codecontrol update --policy-id <policy_id> --body-file /tmp/ddr-policy-codecontrol.json # 更新代码管控策略
chaitin-cli ddr policy codecontrol configwhitelist-list -o json # 代码管控配置白名单列表
chaitin-cli ddr policy codecontrol controlwhitelist-list -o json # 代码管控管控白名单列表
chaitin-cli ddr policy codecontrol entitywhitelist-list -o json # 代码管控实体白名单列表
chaitin-cli ddr policylog code timelinelist --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' -o json # 代码管控时间线
chaitin-cli ddr policylog code stafflist --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' -o json # 代码管控员工列表
chaitin-cli ddr policylog code download --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' # 代码管控导出
创建 代码管控 body 内容样例
{"name":"代码管控策略","description":"策略描述","scope":"global","period_category":"permanent","period_options":{"period_value":["2023-01-01 00:00:00","2023-01-01 00:00:00"]},"binding_config":{"include":{"device_ids":[],"device_tag_ids":[],"staff_ids":[],"staff_tag_ids":[],"dept_ids":[]},"exclude":{},"source":"code_control"},"control_action":{"category":"upload","expression_fields":{"git":{"left":"repository_url","operator":"contains","value":["github.com/example"]},"svn":{"left":"repository_url","operator":"contains","value":["svn.example.com"]}}},"action":"notify","action_template_id":"<action_template_id>"}
剪贴板管控 - clipboard
chaitin-cli ddr policy clipboard --body-file /tmp/ddr-policy-clipboard.json # 创建剪贴板管控策略
chaitin-cli ddr policylog clipboard list --page 1 --limit 20 --search "" --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板管控日志列表
chaitin-cli ddr policylog clipboard timelinelist --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板管控时间线
chaitin-cli ddr policylog clipboard stafflist --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板管控员工列表
chaitin-cli ddr clipboardbehavior timelinelist --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板行为时间线
chaitin-cli ddr clipboardbehavior stafflist --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板行为员工列表
创建 剪贴板管控 body 内容样例
{"name":"剪贴板策略","period_category":"permanent","scope":"common","family":"Windows","control_category":"copy","expression_fields":[{"field":"source_process","operator":"contains","value":["example.exe"]}],"action":"notify","binding_config":{"source":"clipboard","include":{"device_ids":["<device_id>"]},"exclude":{}}}
网页管控 - webpost_control
chaitin-cli ddr policy webpost-control list --page 1 --limit 20 --search "" -o json # 网页管控策略列表
chaitin-cli ddr policy webpost-control get --policy-id <policy_id> -o json # 网页管控策略详情
chaitin-cli ddr policy webpost-control action --policy-id <policy_id> --body '{"operation":"activate"}' # 启用网页管控策略
chaitin-cli ddr policy webpost-control action --policy-id <policy_id> --body '{"operation":"deactivate"}' # 停用网页管控策略
chaitin-cli ddr policy webpost-control remove --policy-id <policy_id> # 删除网页管控策略
chaitin-cli ddr policy webpost-control create --body-file /tmp/ddr-policy-webpost-control.json # 创建网页管控策略
chaitin-cli ddr policy webpost-control update --policy-id <policy_id> --body-file /tmp/ddr-policy-webpost-control.json # 更新网页管控策略
chaitin-cli ddr policy webpost-control whitelist-list -o json # 网页管控管控白名单列表
chaitin-cli ddr policy webpost-control entitywhitelist-list -o json # 网页管控实体白名单列表
创建 网页管控 body 内容样例
{"name":"网页管控策略","description":"策略描述","scope":"global","period_category":"permanent","period_options":{"period_hours_value":[{"begin":"00:00","end":"23:59","week":1},{"begin":"00:00","end":"23:59","week":2},{"begin":"00:00","end":"23:59","week":3},{"begin":"00:00","end":"23:59","week":4},{"begin":"00:00","end":"23:59","week":5},{"begin":"00:00","end":"23:59","week":6},{"begin":"00:00","end":"23:59","week":7}]},"binding_config":{"include":{"device_ids":[],"device_tag_ids":[],"staff_ids":[],"staff_tag_ids":[],"dept_ids":[]},"exclude":{},"source":"webpost_control"},"control_action":{"expression_fields":[{"left":"content","operator":"contains","value":["secret"]}]},"action":"notify","action_template_id":"<action_template_id>","checked_urls_options":{"left":"url","operator":"contains","value":["example.com"]},"detect_position":"form_internal"}