配置项参考
安装目录 .env 中的配置项:必填项、登录与账号、QRadar 连接与 AQL、模型与推理、输出语言、Offense 同步、定时报告、平台体检阈值、审计与保留、资源。
配置保存在安装目录的 .env 中。修改后执行 docker compose -f docker-compose.prod.yml up -d,网关容器重建后生效。未列在表中的配置项保持默认即可,完整说明见交付包中的 .env.example。
系统设置和 AI 配置中可以修改的项(QRadar 连接、日志源白名单、脱敏档位、审计、Offense 同步、provider)保存在网关的状态卷中,优先于 .env。.env 中的这些项只作为首次启动的初始值。
1.0.2 起,.env 中的全部配置项都传入网关容器。1.0.1 及更早版本的标准安装只传入 docker-compose.prod.yml 中列出的配置项,本页标注「1.0.2 起」的配置项写入 .env 后不生效。
| 配置项 | 说明 |
|---|
QRADAR_URL | QRadar Console 地址,例如 https://qradar.corp.local,不带路径 |
QRADAR_SEC_TOKEN | 授权服务 SEC Token,权限见 QRadar Token 权限 |
LLM_API_KEY、LLM_MODEL | 第一个大模型 provider 的 API key 和模型名 |
CADDY_SITE_ADDRESS | 分析师访问的域名 |
RST_GATEWAY_SHARED_SECRET | Caddy 与网关之间的共享密钥,deploy.sh 自动生成 |
RST_ADMIN_TOKEN | 运维 API 令牌,放在请求头 X-RST-Admin-Token 中,deploy.sh 自动生成 |
RST_USER_DB_PASSWORD | 账号库 PostgreSQL 的密码,deploy.sh 自动生成 |
GATEWAY_IMAGE_TAG | 运行的网关镜像版本,由 deploy.sh 和 rst-update.sh 写入 |
| 配置项 | 默认 | 说明 |
|---|
RST_ADMIN_USERNAME | admin | 首个管理员的账号名 |
RST_ADMIN_PASSWORD_HASH | 空 | 首个管理员的口令哈希,$ 写成 $$。为空时出厂口令只允许从网关主机本机登录 |
RST_SESSION_TTL_HOURS | 12 | 登录会话有效期,单位小时 |
RST_USER_DB_URL | deploy.sh 写入 | 账号库连接串。为空时只有一个管理员账号,不能添加用户 |
RST_ALLOW_DEFAULT_PASSWORD | 空 | 设为 1 时允许从网络以出厂口令登录,只用于隔离的试验环境 |
| 配置项 | 默认 | 说明 |
|---|
QRADAR_API_VERSION | 20.0 | REST API 版本。7.5 及以上用 20.0 |
RST_QRADAR_VERIFY_CERTS | false | 校验 Console 证书 |
RST_QRADAR_CA_CERT | 空 | 私有 CA 在容器内的路径,例如 /certs/qradar-ca.pem,文件放在安装目录的 ./certs/。设置后自动开启校验 |
RST_AQL_TIMEOUT_SECONDS | 120 | 单个 Ariel 搜索的时间预算。超时后取消搜索,返回 qradar_timeout |
RST_AQL_MAX_ROWS | 1000 | 结果行数上限。AQL 的 LIMIT 超过此值或缺失时改为此值 |
RST_AQL_DEFAULT_WINDOW_MINUTES | 60 | 问题中没有时间时使用的时间窗,单位分钟 |
RST_LOG_SOURCE_WHITELIST | 空 | 日志源白名单,逗号分隔的日志源名或 id,支持 *,例如 WinCollect @ *,PaloAlto-*,63。见 QRadar Token 权限 |
RST_LOG_SOURCE_CACHE_S | 300 | 日志源目录缓存时长,单位秒。1.0.2 起 |
RST_ARIEL_SCHEMA_CACHE_S | 900 | Ariel 字段定义缓存时长,单位秒。1.0.2 起 |
RST_DSL_CACHE_TTL_S | 600 | 相同问题生成 AQL 的缓存时长,单位秒,0 为关闭 |
RST_CONVERSATION_TTL_DAYS | 7 | 会话无活动多少天后过期 |
| 配置项 | 默认 | 说明 |
|---|
LLM_BASE_URL | https://ark.cn-beijing.volces.com/api/v3 | 第一个 provider 的端点 |
LLM_TIMEOUT_S | 180 | 单次模型调用超时,单位秒 |
RST_LLM_THINKING_TIMEOUT_S | 600 | 高推理强度调用(调查收尾)的超时,取它与 LLM_TIMEOUT_S 中较大的值。1.0.2 起 |
LLM_REASONING | auto | 第一个 provider 的推理强度:auto、off、low、high |
RST_NL2AQL_REASONING | low | 智能查询生成 AQL 一步的推理强度:none、low、high、native。1.0.2 起 |
RST_LLM_FIRST_TOKEN_TIMEOUT_S | 45 | 生成查询时等待模型首字的上限,单位秒,0 为不限 |
RST_AGENTIC_INVESTIGATE | 1 | Offense 调查由模型多轮执行 AQL 取证。0 为单步调查。模型不支持 function calling 时自动使用单步。1.0.2 起 |
RST_AGENTIC_MAX_STEPS | 8 | 调查的检索轮数上限,取值 1 到 20。1.0.2 起 |
RST_AGENTIC_DEADLINE_S | 180 | 一次调查的总时长预算,单位秒,0 为不限。1.0.2 起 |
RST_TRIAGE_LLM_CHUNK、RST_TRIAGE_LLM_CONCURRENCY | 4、3 | 批量研判每次送给模型的簇数和并发数。1.0.2 起 |
RST_MASKING_MODE | cloud | 脱敏档位:cloud、private、airgapped |
RST_TIMEZONE | UTC,deploy.sh 写入 +08:00 | 部署所在时区,支持 +08:00 和 Asia/Shanghai。模型解释「今天」和报告周期都按它计算 |
RST_OUTPUT_LANG | zh | 没有用户触发的后台任务(Offense 摘要、定时报告、消息通知)的输出语言:zh、en。分析员触发的输出跟随其界面语言。1.0.2 起 |
RST_RATELIMIT_GENERATE、RST_RATELIMIT_EXECUTE | 30、30 | 每个 IP 每分钟的查询生成与执行次数。多人共用一个出口 IP 时调大 |
| 配置项 | 默认 | 说明 |
|---|
RST_OFFENSE_INGEST_ENABLED | 1 | 定时从 QRadar 同步 Offense。0 为关闭,Offenses 页只能手动同步 |
RST_OFFENSE_INGEST_INTERVAL_SECONDS | 30 | 同步间隔,单位秒 |
RST_OFFENSE_INGEST_LOOKBACK | 7d | 首次同步回看的时长,单位 s、m、h、d、w,例如 6h、30d |
RST_OFFENSE_MIN_MAGNITUDE | 0 | magnitude 低于此值(0 到 10)的 Offense 不入库、不推送 |
RST_OFFENSE_INGEST_CONCURRENCY | 4 | 生成 AI 摘要的并发数,每条 Offense 调用一次模型 |
RST_ALERT_SUMMARY | 1 | 0 为只入库,不生成 AI 摘要。1.0.2 起 |
RST_ALERT_SUMMARY_MIN_SEVERITY | info | 只给不低于该级别的 Offense 生成摘要。1.0.2 起 |
每个同步周期最多拉取 10 页。积压超过这个量时,网关日志出现 offense_ingest_page_cap_reached,剩余部分在下一个周期继续拉取。
| 配置项 | 默认 | 说明 |
|---|
RST_REPORT_SCHEDULE | 空 | daily、weekly、monthly 的组合,逗号分隔。为空时不自动生成 |
RST_REPORT_TZ | 同 RST_TIMEZONE | 报告周期边界使用的时区 |
RST_REPORT_WEBHOOK_URL、RST_REPORT_WEBHOOK_HEADERS | 空 | 每份报告 POST 到该地址 |
RST_REPORT_PERSIST | 1 | 报告归档到 copilot.db |
RST_REPORT_CHECK_INTERVAL_SECONDS | 1800 | 调度器检查间隔,单位秒 |
RST_REPORT_CATCHUP_MAX | 7 | 停机后最多补生成的周期数,0 为不补 |
RST_REPORT_TRIAGE | 0 | 1 为报告末尾附一段自动研判,调用一次模型,需要付费许可。1.0.2 起 |
以下配置项 1.0.2 起生效。
| 配置项 | 默认 | 说明 |
|---|
RST_PLATFORM_EPS_WARN_PCT、RST_PLATFORM_EPS_FAIL_PCT | 85、100 | EPS 用量占许可额度的百分比 |
RST_PLATFORM_STALE_WARN_H、RST_PLATFORM_STALE_FAIL_H | 6、24 | 日志源多少小时没有事件算作迟滞 |
RST_PLATFORM_OFFENSE_WARN、RST_PLATFORM_OFFENSE_FAIL | 200、800 | OPEN 状态的 Offense 积压条数 |
RST_PLATFORM_OFFENSE_OLD_DAYS | 7 | Offense 开启多少天未处置算作陈旧 |
| 配置项 | 默认 | 说明 |
|---|
RST_AUDIT_ENABLED | true | 审计写入 copilot.db |
RST_AUDIT_RETENTION_DAYS | 180 | 审计保留天数 |
RST_AUDIT_SYSLOG_URL | 空 | 审计转发到 syslog,格式 udp://、tcp:// 或 tls://host:port,可以指向 QRadar 自身。企业版。1.0.2 起 |
RST_AUDIT_WEBHOOK_URL、RST_AUDIT_WEBHOOK_HEADERS | 空 | 审计转发到 webhook。企业版。1.0.2 起 |
RST_AUDIT_WEBHOOK_ALLOWLIST | 空 | 允许的 webhook 目标主机。为空时只拒绝回环和链路本地地址 |
RST_ANALYSIS_TTL_DAYS | 30 | 分析记录保留天数。1.0.2 起 |
RST_METRICS_TOKEN | 空 | /metrics 的抓取令牌 |
| 配置项 | 默认 | 说明 |
|---|
RST_GATEWAY_CPUS、RST_GATEWAY_MEM | 2、2g | 网关容器的 CPU 与内存上限 |
RST_STATE_DB | /app/state/copilot.db | SQLite 状态库在容器内的路径 |
SSO 相关配置项见 SSO。