资产管理
OpsKat 将你的基础设施组织为树状结构的资产清单。资产代表单个服务器、数据库或 Redis 实例。分组提供层级化的组织方式。
资产类型
SSH
用于终端访问、命令执行和文件传输的 SSH 服务器资产。
- 主机 — 主机名或 IP 地址
- 端口 — SSH 端口(默认:22)
- 用户名 — 登录用户
- 认证方式 —
密码或密钥 - 跳板机 — 可选的跳板机链,用于通过堡垒机访问
- 代理 — 可选的 SOCKS5/SOCKS4 代理
数据库(MySQL / PostgreSQL)
用于通过查询编辑器或 AI 智能体执行 SQL 查询的数据库资产。
- 驱动 —
mysql或postgresql - 主机 / 端口 — 数据库服务器地址(默认端口:MySQL 为 3306,PostgreSQL 为 5432)
- 用户名 / 密码 — 数据库凭据
- 数据库 — 默认数据库名
- 只读 — 启用后限制为只读连接
- SSH 资产 — 可选的 SSH 资产用于隧道连接(数据库通过 SSH 隧道经所选服务器访问)
Redis
用于命令执行和键浏览的 Redis 资产。
- 主机 / 端口 — Redis 服务器地址(默认端口:6379)
- 用户名 / 密码 — 可选的认证信息
- 数据库 — DB 索引(默认:0)
- TLS — 启用 TLS 连接
- SSH 资产 — 可选的 SSH 资产用于隧道连接
分组
分组通过父子关系将资产组织为树状层级结构。每个资产都属于某个分组(或根级别)。
- 创建嵌套分组来区分环境(例如"生产环境 > Web 服务器")
- 资产和分组可以通过拖拽重新排序
- 分组可以有自己的策略配置,子资产会继承这些策略
添加、编辑和删除资产
添加
点击资产侧边栏中的 + 按钮,选择资产类型,填写必填字段后点击 保存。
编辑
选择资产并点击 编辑(或右键 > 编辑)。修改任意字段后保存。
删除
右键点击资产并选择 删除。资产采用软删除方式(标记为已删除而非从数据库中移除),以保留审计历史。
凭据管理
所有凭据(密码和 SSH 私钥)在存储前都会使用 AES-256-GCM 加密。加密主密钥存储在操作系统密钥环中:
- macOS — Keychain
- Windows — Windows Credential Manager(Windows 凭据管理器)
- Linux — Secret Service(GNOME Keyring / KDE Wallet)
opsctl CLI 可以通过 --master-key 参数或 OPSKAT_MASTER_KEY 环境变量提供加密密钥,适用于无图形界面的环境。
SSH 密钥管理
你可以通过两种方式导入 SSH 私钥:
- 从文件导入 — 从磁盘选择密钥文件(例如
~/.ssh/id_rsa) - 从 PEM 导入 — 直接粘贴 PEM 编码的密钥内容
导入的密钥作为凭据存储,可以在多个资产之间复用。
导入 / 导出
OpsKat 支持从外部来源导入资产,也支持导出资产清单用于备份或共享。
导入来源
| 来源 | 说明 |
|---|---|
| SSH Config | 解析你的 ~/.ssh/config 文件。可预览条目并选择要导入的项目。 |
| Tabby | 从 Tabby 配置文件导入。 |
| 文件 | 从 OpsKat 备份文件(JSON 格式)导入。 |
| GitHub Gist | 从 GitHub Gist 导入(需要个人访问令牌)。 |
导入时可以先预览条目再确认,还可以选择是否与现有资产合并。
导出目标
| 目标 | 说明 |
|---|---|
| 文件 | 导出为本地 JSON 备份文件。 |
| GitHub Gist | 导出到 GitHub Gist(公开或私有)。需要具有 gist 权限的 GitHub 令牌。 |
导出内容包括资产、分组、凭据(加密)和策略配置。