配置文件
了解如何通过配置文件进行自定义设置
SIREN 客户端与服务端均支持通过 YAML 配置文件进行自定义设置。
配置文件查找顺序
启动时,SIREN 会按以下顺序查找配置文件(找到即停止):
- 通过
-c/--config参数指定的路径 - 当前工作目录下的
config.yaml(客户端)或server_config.yaml(服务端) ./config/目录下的config.yaml或server_config.yaml
敏感信息
配置文件中不包含任何敏感凭证信息(如 AccessKey、API Key 等),所有凭证均通过环境变量设置,详见凭证设置。
客户端配置
server: 127.0.0.1 # 服务端地址
port: 443 # 服务端端口
recon:
commandTimeout: 30 # 命令执行超时时间
user: true # 用户信息收集开关
# ...other modules
oss:
region: cn-hongkong # OSS Bucket Region
bucketName: ir-transfer-station # OSS Bucket 名称
objectPath: tmp/siren_upload # 文件上传路径
docObjectPath: tmp/siren_upload/docs # 信息收集文档上传路径
plugins:
marketplace: https://example.com/plugins # 插件市场地址
jdump: true # 启用 jdump 插件
rules: # 信息收集规则
IPWhitelist: 140\.205\.11\.\d+|8\.147\.237\.0
# ...other rules配置项说明
| 配置项 | 类型 | 默认值 | 说明 |
|---|---|---|---|
server | string | 127.0.0.1 | 远程模式下连接的服务端地址 |
port | int | 443 | 远程模式下连接的服务端端口 |
recon.commandTimeout | int | 30 | 信息收集中每条命令的超时时间(秒) |
recon.<module> | bool | true | 各信息收集模块的开关(如 user、process、network 等),完整列表见信息收集模块 |
oss.region | string | - | OSS Bucket 所在地域 |
oss.bucketName | string | - | OSS Bucket 名称 |
oss.objectPath | string | tmp/siren_upload | 文件上传的 OSS 路径前缀 |
oss.docObjectPath | string | tmp/siren_upload/docs | 信息收集文档上传的 OSS 路径前缀 |
plugins.marketplace | string | - | 插件市场 URL,用于下载和更新插件 |
plugins.<name> | bool | - | 启用或禁用指定的 command 类型插件 |
rules | map | - | 信息收集规则,值为正则表达式 |
关于 rules
rules 用于在信息收集结果中标记或过滤特定内容。例如 IPWhitelist 可以在网络连接信息中标识已知的白名单 IP 地址,减少排查噪音。规则值支持正则表达式,支持白名单(过滤已知正常项)和黑名单(高亮可疑项)两种类型。
服务端配置
listen: 0.0.0.0 # 服务器监听地址
port: 443 # 服务器监听端口
mcpPort: 8080 # MCP 服务器监听端口
cert: certs/cert.pem # TLS 证书路径
key: certs/key.pem # TLS 密钥路径
mcp:
cmdBlacklist: # MCP run 命令黑名单(正则表达式)
- rm\\s
- kill\\s
- shutdown
- reboot
# ...more patterns
air:
cliPath: claude # 大模型 CLI 工具路径
prompt: 启动安全应急响应,UID:%s,... # 告警事件模式的 prompt 模板
customPromptPrefix: 在 SIREN Client %d 上... # 自定义 prompt 模式的前缀
args: # 传递给大模型 CLI 的额外参数
- --allowedTools
- "mcp__siren__run,Read,Bash(ls *),..."
oss:
region: cn-hongkong # OSS Bucket Region
bucketName: ir-transfer-station # OSS Bucket 名称
objectPath: tmp/siren_upload # 文件上传路径
docObjectPath: tmp/siren_upload/docs # 信息收集文档上传路径配置项说明
| 配置项 | 类型 | 默认值 | 说明 |
|---|---|---|---|
listen | string | 0.0.0.0 | 服务器监听地址 |
port | int | 443 | 服务器监听端口 |
mcpPort | int | 8080 | MCP 服务器监听端口 |
cert | string | certs/cert.pem | TLS 证书文件路径 |
key | string | certs/key.pem | TLS 私钥文件路径 |
mcp.cmdBlacklist | list | 见MCP 集成 | MCP run 工具的命令黑名单,值为正则表达式列表 |
air.cliPath | string | claude | Agentic 应急响应使用的大模型 CLI 工具路径 |
air.prompt | string | - | 告警事件模式下的 prompt 模板(支持 %s UID、%s Event ID、%d Client ID) |
air.customPromptPrefix | string | - | 自定义 prompt 模式下的前缀(支持 %d Client ID) |
air.args | list | - | 传递给大模型 CLI 的额外参数 |
oss.* | - | - | OSS 配置,与客户端配置相同 |