配置项参考
安装目录 .env 中的配置项:必填项、登录与账号、Zabbix 连接与数据范围、内容包与在线更新、实时故障、模型、报告与巡检、平台体检与远程诊断、审计与保留、资源。
配置保存在安装目录的 .env 中,其中的全部配置项都传入网关容器。修改后执行 docker compose -f docker-compose.prod.yml up -d,网关容器重建后生效。未列在表中的配置项保持默认即可,完整说明见交付包中的 .env.example。
设置中可以修改的项(主机组白名单、脱敏模式、审计与转发、角色权限、三员分立)保存在 gateway_state 卷的 settings.yml 中,优先于 .env。AI 配置中的 provider 保存在同一个卷的 llm_providers.yml 中。.env 中对应的项只作为首次启动的初始值。
.env 中的值含 $ 时写成 $$,例如密码哈希。
| 配置项 | 说明 |
|---|
ZABBIX_URL | Zabbix JSON-RPC 地址,以 /api_jsonrpc.php 结尾 |
ZABBIX_TOKEN | Zabbix API token,权限见 Zabbix 权限。也可以改用 ZABBIX_USER、ZABBIX_PASSWORD |
LLM_API_KEY、LLM_MODEL | 第一个大模型 provider 的 API key 和模型名 |
CADDY_SITE_ADDRESS | 使用者访问的域名或 IP,可以写多个,用空格分隔 |
RST_GATEWAY_SHARED_SECRET | Caddy 与网关之间的共享密钥,Caddy 在每个请求中注入。deploy.sh 自动生成 |
RST_ADMIN_TOKEN | 运维 API 令牌,放在请求头 X-RST-Admin-Token 中。deploy.sh 自动生成 |
RST_ADMIN_PASSWORD_HASH | 管理员 admin 的密码哈希,deploy.sh 按安装时输入的密码生成 |
账号在用户页管理,角色为管理员、分析员、查看者,企业版另有审计员。启用 SSO 时改由 IdP 管理账号,见 SSO。
| 配置项 | 默认 | 说明 |
|---|
RST_ADMIN_USERNAME | admin | 首个管理员的账号名 |
RST_ADMIN_PASSWORD_HASH | deploy.sh 写入 | 管理员 admin 的密码哈希,$ 写成 $$。手动生成:docker run --rm rst-ai-copilot-for-zabbix-gateway:<版本> python -m backend.session_auth '<密码>',网关运行时也可以用 docker exec rst-ai-copilot-for-zabbix-gateway python -m backend.session_auth '<密码>'。为空时使用出厂密码 Admin@123,只允许从网关主机本机登录。只在首次建账号时使用,或 admin 仍是出厂密码时应用;之后修改不改变 admin 的密码,忘记密码由其他管理员在用户页重置 |
RST_ALLOW_DEFAULT_PASSWORD | 空 | 设为 1 时允许从网络以出厂密码登录,只用于隔离的试验环境 |
RST_SESSION_TTL_HOURS | 12 | 登录会话有效期,单位小时 |
RST_TRUSTED_PROXIES | 127.0.0.0/8,::1/128,172.16.0.0/12 | 受信任代理。只有来自这些地址的请求,转发头和 SSO 身份头才被采信。Caddy 不在 Docker 默认网段时加入它的地址;不要加入办公网段 |
RST_SEPARATION_OF_DUTIES | 空 | 设为 1 开启三员分立并锁定,界面上不能关闭。企业版 |
RST_ROLE_OVERRIDES | 空 | 收紧角色权限,例如 analyst:script.execute,只能去掉权限。也可以在 设置 的 权限 中修改 |
| 配置项 | 默认 | 说明 |
|---|
ZABBIX_USER、ZABBIX_PASSWORD | 空 | ZABBIX_TOKEN 为空时使用的账号和密码 |
ZABBIX_PUBLIC_URL | 空 | 浏览器访问 Zabbix 前端的地址,用于「在 Zabbix 中打开」。为空时使用 ZABBIX_URL 的协议、主机和端口 |
RST_INDEX_WHITELIST | 空 | 主机组白名单,逗号分隔,支持 *。为空时不限制,只建议测试环境这样用 |
RST_MASKING_MODE | 空 | 脱敏模式:cloud、private、airgapped(离线)。为空时按许可决定 |
| 配置项 | 默认 | 说明 |
|---|
RST_CONTENT_AUTO_APPLY | 1 | 检查更新时发现的新内容包(提示词与模板)直接启用。网关每天自动检查一次,管理员也可以手动检查。设为 0 时只下载、校验并保存,由管理员在 设置 > 内容包 中选择该版本的 回滚到此版本 启用 |
RST_UPDATE_URL | https://github.com/reallysec/RST-AI-Copilot-for-Zabbix/releases | 版本清单和内容包的来源。内网镜像需要保持 GitHub Releases 的目录结构 |
| 配置项 | 默认 | 说明 |
|---|
RST_ALERT_INGEST_POLL | 1 | 定时从 Zabbix 拉取问题。0 为关闭 |
RST_ALERT_INGEST_INTERVAL_SECONDS | 15 | 拉取间隔,单位秒,最小 3 |
RST_ALERT_INGEST_GROUPS | 空 | 只拉取这些主机组的问题,逗号分隔,只取白名单内的组。为空时拉取全部主机组;但设置了主机组白名单时必须填写,否则不拉取,实时故障页显示原因 |
RST_ALERT_INGEST_LOOKBACK | 1h | 首次拉取回看的时长,单位 s、m、h、d、w,例如 24h、7d |
RST_ALERT_SUMMARY | 1 | 0 为只入库,不生成 AI 摘要 |
RST_ALERT_SUMMARY_MIN_SEVERITY | warning | 只给不低于该级别的问题生成摘要,取 Zabbix 级别名或 0 到 5 |
RST_ALERT_WEBHOOK_SECRET | 空 | 接收 Zabbix webhook 推送时校验的令牌,为空时不接收推送 |
RST_CORRELATION_WINDOW_S、RST_CORRELATION_STORM_MIN_HOSTS | 600、5 | 告警风暴的时间窗(秒)和最少主机数 |
Zabbix webhook 媒介向 https://<域名>/api/alerts/ingest 发送 POST,请求头 X-RST-Alert-Token 填 RST_ALERT_WEBHOOK_SECRET 的值。
| 配置项 | 默认 | 说明 |
|---|
LLM_BASE_URL | https://ark.cn-beijing.volces.com/api/v3 | 第一个 provider 的端点 |
LLM_TIMEOUT_S | 180 | 单次模型调用超时,单位秒 |
RST_LLM_GENERATE_TIMEOUT_S | 45 | 对话中生成查询一步的超时,单位秒 |
RST_OUTPUT_LANG | zh | 没有使用者触发的后台任务(告警摘要、定时报告、定时巡检)的输出语言:zh、en。使用者触发的输出跟随其界面语言 |
RST_RATELIMIT_GENERATE、RST_RATELIMIT_EXECUTE | 30、30 | 每分钟的查询生成与执行次数。启用 SSO 时按用户计,否则按来源 IP 计。多人共用一个出口 IP 时调大 |
RST_EMBED_MODEL、RST_EMBED_BASE_URL、RST_EMBED_API_KEY、RST_EMBED_DIM | 空 | 知识库使用的 embedding 端点。也可以在 AI 配置中设置 |
| 配置项 | 默认 | 说明 |
|---|
RST_REPORT_SCHEDULE | 空 | daily、weekly、monthly 的组合,逗号分隔。为空时不自动生成。需要付费许可。对外通道页的 推送排期 勾选了周期时以页面为准,本项和 RST_REPORT_TZ 不生效 |
RST_REPORT_TZ | UTC | 报告周期边界使用的时区 |
RST_BASELINE_CRON | 空 | 监控健康度定时检查,5 段 crontab 格式。为空时不定时运行 |
RST_PUBLIC_BASE_URL | 空 | 通知消息中回到本产品的链接地址,例如 https://copilot.corp.local |
| 配置项 | 默认 | 说明 |
|---|
RST_ZABBIX_SERVER_HOST | Zabbix server | 监控 Zabbix server 自身的主机名。平台体检从这台主机读取内部监控项 |
RST_DIAG_SCRIPT_PING、RST_DIAG_SCRIPT_TRACEROUTE | Ping、Traceroute | 远程诊断使用的 Zabbix 全局脚本名 |
RST_DIAG_RPM | 5 | 每个用户每分钟最多执行几次远程诊断 |
| 配置项 | 默认 | 说明 |
|---|
RST_AUDIT_ENABLED | true | 审计写入 gateway_state 卷中的 audit.db |
RST_ALERTS_TTL_DAYS | 30 | 告警副本保留天数 |
RST_ANALYSIS_TTL_DAYS | 30 | 分析记录保留天数 |
RST_CONVERSATION_TTL_DAYS | 7 | 对话无活动多少天后过期 |
RST_REPORT_RETENTION_DAYS | 90 | 报告保留天数 |
| 配置项 | 默认 | 说明 |
|---|
RST_GATEWAY_CPUS、RST_GATEWAY_MEM | 2、2g | 网关容器的 CPU 与内存上限 |
GATEWAY_IMAGE_TAG | compose 文件中的版本 | 运行的网关镜像版本,由 rst-update.sh 写入 |
CADDY_DEFAULT_SNI | 同 CADDY_SITE_ADDRESS | 浏览器不发送 SNI 时(例如用 IP 访问)Caddy 使用的证书名 |
Caddy 只终结 TLS 并注入共享密钥。/healthz、/readyz 不需要登录;/metrics 对外返回 404,Prometheus 在 compose 网络内抓取 gateway:8000/metrics。
SSO 相关配置项见 SSO。