怎么为Hermes Agent设置防火墙规则 Hermes Agent网络安全加固

怎么为Hermes Agent设置防火墙规则 Hermes Agent网络安全加固

人工智能

Hermes Agent防火墙规则配置需五层防护:入站IP/端口白名单、skills_guard.py出站域名拦截、宿主机iptables UID级限制、云安全组最小权限策略、K8s eBPF网络策略。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您正在运行Hermes Agent容器,但发现其网络通信存在未授权访问或数据外泄风险,则可能是由于缺少精细化的防火墙规则控制。以下是为Hermes Agent设置防火墙规则的具体操作步骤:

一、配置容器入站访问白名单

通过环境变量限制可访问Hermes Agent服务的源IP与端口范围,避免暴露于不可信网络。该方法直接作用于容器启动阶段,无需额外安装防火墙组件。

1、使用docker run命令启动容器时,传入ALLOWED_IPS和ALLOWED_PORTS环境变量。

2、将企业内部可信网段填入ALLOWED_IPS,例如192.168.10.0/24,172.16.0.0/12

3、仅指定业务必需端口,如API服务端口8080和管理界面端口3000,禁止开放226379等高危端口。

4、执行完整命令示例:
docker run -e ALLOWED_IPS="192.168.10.0/24" -e ALLOWED_PORTS="8080" hermes-agent bash

二、启用skills_guard.py出站域名拦截

利用Hermes Agent内置的tools/skills_guard.py模块,在应用层实现对外部请求的目标域名过滤,防止敏感数据经Webhook外泄。

1、定位到项目目录下的tools/skills_guard.py文件。

2、在EXTERNAL_DOMAIN_BLOCKLIST元组中追加需拦截的可疑域名正则表达式,例如(r'hookbin\.com|webhook\.site', "external_webhook", "high", "exfiltration")

3、确保SKILLS_GUARD_ENABLED环境变量设为True

4、重启Agent服务使规则生效。

三、在宿主机部署iptables出站链规则

在Linux宿主机上配置iptables OUTPUT链,强制限制Hermes Agent容器进程(如UID为1001)仅能访问预授权的IP地址与端口,形成操作系统级网络隔离。

1、确认Hermes Agent容器所用用户UID,可通过ps -eo uid,comm | grep python获取。

2、添加OUTPUT链规则,仅允许该UID访问特定目标IP与端口:
iptables -A OUTPUT -m owner --uid-owner 1001 -d 10.20.30.40 -p tcp --dport 443 -j ACCEPT

AI Web Designer

AI网页设计师,快速生成个性化的网站设计

下载

3、拒绝该UID所有其他外发连接:
iptables -A OUTPUT -m owner --uid-owner 1001 -j DROP

4、保存规则并设置开机自启:
iptables-save > /etc/iptables/rules.v4

四、集成云平台安全组策略

当Hermes Agent部署于云服务器(如AWS EC2、阿里云ECS)时,应关闭实例层面的宽泛放行策略,改用最小权限安全组规则控制进出流量。

1、登录云服务商控制台,进入对应实例的安全组配置页面。

2、删除默认的0.0.0.0/0入站规则,仅保留来源为运维跳板机IP或VPC内网段的入站规则。

3、出站规则中禁用0.0.0.0/0全通策略,改为仅允许目标为api.kimi.cn解析IP、openrouter.ai解析IP及内部Redis服务IP的TCP连接。

4、启用安全组日志功能,定期导出并审计被拒绝的出站连接尝试,识别潜在异常行为。

五、部署eBPF网络策略控制器

在Kubernetes集群中运行Hermes Agent时,使用eBPF技术实现细粒度、零延迟的网络策略执行,绕过传统iptables性能瓶颈,并支持基于Pod标签和服务名称的策略定义。

1、安装Cilium或Calico eBPF模式作为CNI插件,确保节点启用bpf_lsm和cgroup v2。

2、创建NetworkPolicy资源,限定hermes-agent命名空间下Pod仅能访问label为app=auth-service的Service。

3、编写CiliumClusterwideNetworkPolicy,阻止所有匹配dns && domain =~ '.*\.pipedream\.net$'的DNS查询。

4、验证策略效果:运行cilium connectivity test确认策略已实时生效且无误阻断

本文地址:https://www.sztg.com.cn/article/617141.html

如非特殊说明,本站内容均来自于网友自主分享,如有任何问题均请联系我们进行处理!

猜您喜欢