快速NGWAF MCP服务器
一个全面的模型上下文协议(MCP)服务器,提供与Fastly NGWAF(Next-Gen Web应用防火墙)API的无缝集成。该服务器使像Claude这样的人工智能助手能够通过自然语言交互来管理web应用程序的安全性。
特性
🛡️ 完整的WAF管理
- 创建、读取、更新和删除安全规则
- 管理IP允许/阻止列表
- 配置速率限制和警报
- 监控安全事件和分析
🏢 多租户支持
- 公司和现场级管理
- 上下文感知操作
- 跨多个站点的批量操作
🤖 AI友好界面
- 自然语言规则创建
- 智能威胁模式检测
- 自动化安全策略建议
安装
先决条件
- Node.js 18+
- 拥有API访问权限的快速NGWAF帐户
- MCP兼容的人工智能助手(克劳德桌面等)
设置
- 克隆存储库
git clone https://github.com/yourusername/FastlyMCP.git
cd FastlyMCP- 安装依赖项
npm install- 配置环境变量(可选)
# Create .env file
FASTLY_NGWAF_EMAIL=your-email@example.com
FASTLY_NGWAF_TOKEN=your-api-token
FASTLY_NGWAF_DEFAULT_CORP=your-corp-name
FASTLY_NGWAF_DEFAULT_SITE=your-site-name- 启动服务器
npm start配置
Claude桌面集成
将此添加到您的Claude Desktop配置文件中:
视窗: %APPDATA%\Claude\claude_desktop_config.json macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"fastly-ngwaf": {
"command": "node",
"args": ["path/to/FastlyMCP/server.js"],
"env": {
"FASTLY_NGWAF_EMAIL": "your-email@example.com",
"FASTLY_NGWAF_TOKEN": "your-api-token"
}
}
}
}人工智能驱动的交互
自然语言: *“创建一个规则来阻止对我网站的SQL注入攻击”*
AI响应:助手将自动:
- 检测意图(创建安全规则)
- 识别威胁类型(SQL注入)
- 生成适当的规则条件
- 将规则应用于您配置的站点
可用工具
身份验证和设置
set_credentials-配置API凭据test_connection-验证API连接set_context-设置默认公司/站点上下文discover_environment-探索可用资源
规则管理
list_corp_rules/list_site_rules-列出安全规则create_corp_rule/create_site_rule-创建新规则delete_corp_rule/delete_site_rule-删除规则
安全监控
list_events-查看安全事件search_requests-搜索请求日志get_suspicious_ips-识别威胁源expire_event-手动取消阻止IP
IP列表管理
manage_whitelist-允许/阻止IP地址manage_blacklist-阻止恶意IPmanage_lists-自定义IP/国家/字符串列表
分析和报告
get_analytics-安全指标和趋势get_corp_overview-高级攻击摘要manage_alerts-配置监控警报
高级功能
manage_cloudwaf-CloudWAF实例管理manage_users-用户访问控制
常见用例
🚨 事件响应
*“IP地址1.2.3.4正在攻击我的网站,请立即阻止它”*
- AI自动识别威胁
- 在适当的持续时间内将IP添加到黑名单中
- 确认封锁已激活
🛡️ 主动安全
*“设置针对最新OWASP十大漏洞的保护”*
- 创建全面的规则集
- 配置适当的阈值
- 设置监控警报
📊 安全分析
*“显示过去一个月的攻击趋势并提出改进建议”*
- 分析历史攻击数据
- 识别模式和威胁源
- 建议规则优化
🔧 批量管理
*将站点A的相同安全规则应用于站点B、C和D*
- 导出现有规则配置
- 调整不同网站的规则
- 批量申请,需要验证
api参考
服务器通过直观的MCP工具公开完整的Fastly NGWAF API。每个工具都映射到特定的API端点,同时自动处理身份验证、上下文解析和错误管理。
速率限制
服务器遵守Fastly API速率限制,并实现适当的重试逻辑。
发展
项目结构
FastlyMCP/
├── server.js # Main MCP server implementation
├── package.json # Dependencies and scripts
├── README.md # This documentation
└── .env.example # Environment variable template测试
# Test API connectivity
npm start
# In another terminal/AI session:
# test_connection()故障排除
常见问题
认证失败
- 验证电子邮件和API令牌是否正确
- 确保令牌具有适当的权限
- 检查Fastly帐户状态
上下文错误
- 设置默认公司:
set_context({ corpName: "your-corp" }) - 验证公司/站点名称是否存在:
discover_environment()
权限不足
- 检查用户角色是否具有必要的权限
- 在Fastly仪表板中验证站点访问权限
调试模式
通过设置环境变量启用详细日志记录:
DEBUG=fastly-ngwaf npm start安全考虑
- 安全存储API凭据(环境变量或安全凭据管理器)
- API令牌使用最小权限原则
- 定期轮换API证书
- 监控未经授权的API使用情况
- 保持依赖关系更新
许可证
MIT许可证-有关详细信息,请参阅许可证文件。
支持
更新日志
v1.0.0
- 首次发布,全面覆盖NGWAF API
- MCP服务器实现
- 规则管理(CRUD操作)
- IP列表管理
- 分析和监测
- CloudWAF支持
- 用户管理功能
