Agent Skills
返回列表
🔒

gh-aw-firewall 出站域名白名单

IT 运维与安全 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/restrict-outbound-domains-for-github-agentic-workflows-before-repository-agents-can-browse-freely-with-gh-aw-firewall

技能介绍

核心问题:失控的出站访问

在配置 GitHub Agentic Workflows 时,如果直接赋予仓库代理宽泛的网络访问权限,它们可能会向任意外部域名发起请求。这种失控的出站访问不仅可能导致敏感数据泄露,还容易让自动化流程暴露在供应链投毒或恶意 API 回调的风险之下。在代理能够自由浏览网络之前,必须先建立严格的出站边界。

工作原理与核心能力

gh-aw-firewall(awf)通过将执行命令封装在 Docker 沙箱中来解决这一问题。其核心机制包括:

  • 三容器沙箱架构:在隔离的运行环境中截获并检查所有网络流量。
  • 域名白名单过滤:强制任务仅能与 allowlist 中明确授权的域名通信,阻断未知或恶意的出站请求。
  • API-Key Sidecar:提供可选的密钥边车模式,在隔离环境中安全注入凭证,避免在主进程或日志中暴露敏感信息。

通过这种组合,开发者可以在不改变 Agentic Workflows 核心逻辑的前提下,大幅收敛代理的网络暴露面。

适用边界与注意点

该方案并非开箱即用的纯软件库,而是依赖特定运行时的基础设施配置:

  • 环境依赖:需要 Docker 20.10+ 及 Docker Compose v2,且建议在 Ubuntu 22.04+ 或兼容的 Linux 发行版(x86_64/arm64)上运行。
  • 构建要求:若需从源码构建,需准备 Node.js 20.19.0+ 环境。
  • 适用范围:主要针对 GitHub Agentic Workflows 的出站限制场景,无法替代企业级全局零信任网络代理。

使用场景

  • 在 GitHub Actions 流水线中运行 Agent 任务前,需要限制其只能向指定的 API 域名发起请求,防止访问未知外部站点。
  • 代码仓库代理开始自由浏览前,要在 Docker 沙箱内验证其所有网络请求都严格命中配置好的域名白名单,确保无额外出站连接。
  • 执行需要外部 API 调用的工作流时,通过 Sidecar 容器注入凭证并限制出站域名,避免密钥在日志或主进程中暴露。
  • 在 Ubuntu 主机上搭建隔离环境,使用三容器架构来运行自定义的 Agentic Workflows 并强制实施出站网络策略。

适合人员

  • 平台工程师:负责构建隔离的 CI/CD 容器运行环境,并希望为自动化 Agent 任务配置严格的出站网络控制策略。
  • 安全工程师:负责审计自动化工作流的网络请求,希望在代理运行前强制实施域名白名单以阻断潜在的数据外发行为。
  • GitHub Actions 开发者:编写依赖外部 API 的自动化任务,需要在不改变业务逻辑的前提下安全地管理凭证和收敛网络暴露面。