news 2026/8/21 11:02:55

第33篇-安全配置与最佳实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第33篇-安全配置与最佳实践

【Hermes Agent 从入门到精通】第 33 篇:安全配置与最佳实践

本系列定位:零基础入门,从安装配置到高级架构全覆盖。无论你是开发者、运维工程师、还是技术爱好者,本系列带你彻底掌握 Hermes Agent。


本篇你将学到

  • 危险命令审批机制详解
  • 密钥脱敏配置
  • PII 保护
  • 容器隔离部署
  • 生产环境安全检查清单

学完本篇,你的 Hermes 部署将达到生产级安全标准。


一、危险命令审批

1.1 三种审批模式

hermes configsetapprovals.mode manual# 手动(默认)hermes configsetapprovals.mode smart# 智能(推荐)hermes configsetapprovals.mode off# 关闭(不推荐)
模式低风险命令(ls/cat)高风险命令(rm/git push)说明
manual询问询问每次都问,最安全
smart自动放行询问辅助 LLM 判断风险
off自动放行自动放行完全信任

1.2 Smart 模式详解

Smart 模式用一个辅助 LLM 在执行命令前评估风险:

命令:ls -la /home/user/project → 辅助 LLM 判断:只读操作,低风险 → 自动放行 命令:rm -rf /home/user/project/node_modules → 辅助 LLM 判断:删除操作,中风险 → 询问用户 命令:git push --force origin main → 辅助 LLM 判断:强制覆盖远程,高风险 → 询问用户

1.3 安全扫描(Tirith)

# 启用安全扫描(默认开启)hermes configsetsecurity.tirith_enabledtrue

Tirith 安全扫描器检查:

  • 命令注入风险
  • 路径遍历
  • 不安全的网络请求
  • 敏感信息泄露

下面用流程图总结命令审批的决策逻辑:

manual

smart

off

低风险(如 ls、cat)

中风险(如 rm 目录)

高风险(如 git push --force)

用户发送命令

审批模式

每次都询问用户

辅助 LLM 评估风险

直接执行(不推荐)

用户确认后执行

风险评估结果

自动放行

弹窗询问用户

弹窗警告 + 询问用户

命令直接执行

二、密钥保护

2.1 密钥脱敏

hermes configsetsecurity.redact_secretstrue

效果:

原始输出: OPENAI_API_KEY=sk-proj-abc123def456ghi789 DATABASE_URL=postgresql://user:password@host:5432/db 脱敏后: OPENAI_API_KEY=sk-***REDACTED*** DATABASE_URL=postgresql://user:***@host:5432/db

重要redact_secrets在进程启动时读取,修改后需要重启 Hermes。这防止 Agent 在会话中自己关闭脱敏。

2.2 PII 脱敏

hermes configsetprivacy.redact_piitrue

效果:

原始消息:我的手机号是 13800138000,邮箱是 zhangsan@test.com 脱敏后:我的手机号是 [REDACTED_PHONE],邮箱是 [REDACTED_EMAIL]

PII 脱敏只影响到达模型的内容——你在终端看到的是原文。

2.3 .env 安全

# 确保 .env 不被 Git 跟踪echo".env">>.gitignore# 检查权限chmod600~/.hermes/.env# 只有所有者可读写

三、网站黑名单

3.1 禁止访问特定网站

security:website_blocklist:-"facebook.com"# 禁止访问-"twitter.com"-"*.gambling-*"# 通配符匹配

3.2 效果

当 Hermes 尝试用 web 工具访问黑名单中的网站时,请求被阻止。


四、容器隔离

4.1 Docker 隔离部署

# docker-compose.ymlservices:hermes:image:nousresearch/hermes-agent:latestvolumes:-./workspace:/workspace# 只暴露工作目录cap_drop:-ALL# 丢弃所有 Linux 能力security_opt:-no-new-privileges:true# 禁止提权read_only:falsenetwork_mode:bridge# 限制网络

4.2 隔离效果

措施效果
cap_drop: ALL不能执行特权操作(如 mount、iptables)
no-new-privileges不能通过 setuid 提权
只挂载 workspace宿主机其他目录不可访问
限制网络可以通过防火墙规则限制出站目标

五、终端后端安全

5.1 三种终端后端

terminal:backend:local# 本地(默认)# backend: docker # Docker 隔离# backend: ssh # 远程 SSH
后端安全级别说明
local直接在宿主机执行命令
docker在 Docker 容器内执行
ssh在远程服务器上执行

5.2 Docker 终端后端

terminal:backend:dockerdocker:image:ubuntu:22.04# 执行环境镜像workdir:/workspacevolumes:-~/workspace:/workspace# 只挂载工作目录

Docker 终端后端让所有命令在隔离容器中执行——即使执行了危险命令,也不影响宿主机。


六、生产环境安全清单

上线前逐项检查:

## Hermes 生产安全清单 ### 访问控制 - [ ] 网关只响应授权用户 - [ ] 管理员列表已配置 - [ ] DM Pairing 已启用 - [ ] 普通用户的工具权限受限 ### 命令审批 - [ ] approvals.mode 设为 manual 或 smart - [ ] Tirith 安全扫描已启用 - [ ] --yolo 未被持久化设置 ### 密钥保护 - [ ] redact_secrets 已启用 - [ ] .env 权限 600 - [ ] .env 在 .gitignore 中 - [ ] API Key 未暴露在日志中 ### 隔离 - [ ] 终端后端为 docker 或 ssh - [ ] 工作目录限制在 workspace - [ ] 容器 cap_drop: ALL ### 网络 - [ ] PII 脱敏已启用(如需要) - [ ] 网站黑名单已配置 - [ ] 网关端口不直接暴露公网(用 Nginx 反代) ### 审计 - [ ] 日志保留策略已配置 - [ ] Token 用量监控已设置 - [ ] 异常告警已配置

本篇小结

知识点核心内容
approvals.modemanual / smart / off
Smart 模式辅助 LLM 自动判断风险
Tirith安全扫描器
redact_secrets工具输出密钥脱敏
redact_pii个人信息脱敏
网站黑名单security.website_blocklist
Docker 隔离cap_drop + 只挂载 workspace
终端后端local / docker / ssh
生产清单访问控制 + 审批 + 密钥 + 隔离 + 网络 + 审计

下篇预告

第 34 篇:性能调优与磁盘管理

Hermes 运行久了变慢?磁盘占用越来越大?下一篇学习性能优化和维护清理。


如果本篇内容对你有帮助,欢迎点赞收藏!有任何疑问,欢迎在评论区交流。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 11:01:46

多智能体LLM系统零回放调试:基于知识的轨迹分析与根因定位

1. 项目概述:当多智能体系统“失忆”,我们如何精准定位问题? 最近在折腾一个基于大语言模型的多智能体协作项目,团队里几个“AI同事”分工明确,一个负责规划,一个负责写代码,还有一个负责检查。…

作者头像 李华
网站建设 2026/8/21 11:01:38

迪康终端管理系统U盘精细化管控全方案(企业落地必备)

引言 在企业数字化办公场景中,U盘、移动硬盘等USB存储设备是日常办公文件传输、数据备份的核心工具,但同时也是企业数据泄露、病毒入侵、内网安全失控的高危入口。企业U盘安全管控方案必须从源头解决这一安全隐患。 针对企业USB外设管控的核心痛点&#…

作者头像 李华
网站建设 2026/8/21 11:01:28

人才盘点看到潜力,也要问他适合哪种战场

摘要:人才盘点不能只说一个人有潜力,还要判断他适合稳定经营、攻坚突破还是跨部门协同。肯耐珂萨提醒企业,潜力要放进场景里看。减少把合适的人放错位置的风险。很多 HR 会问:盘点会上大家都说一个人有潜力,为什么换到…

作者头像 李华
网站建设 2026/8/21 10:53:40

配置文件管理与权限设置:从解析到实战的完整指南

在实际开发或系统管理工作中,我们经常需要处理配置文件。无论是为 AI 辅助工具(如 Codex)、Web 服务器、数据库还是容器化应用进行配置,核心流程都遵循相似的逻辑:理解配置结构、准备环境、编写或修改文件、设置正确的…

作者头像 李华
网站建设 2026/8/21 10:51:50

大语言模型长上下文优化:Prompt Caching 原理与工程实践指南

在实际的大语言模型应用开发中,尤其是处理长上下文任务时,一个核心的矛盾日益凸显:模型强大的推理能力往往需要通过多次采样(如 Self-Consistency 方法)来提升答案的稳定性和准确性,但这会带来极高的计算成…

作者头像 李华