PAN-OS MCP Server

PAN-OS MCP Server

site icon
2025.04.01 0
Python防火墙管理网络配置开发效率交流协作
PAN-OS MCP Server 是一个用于通过 XML API 与 Palo Alto Networks 防火墙交互的模型控制协议(MCP)服务器。它允许用户使用 Claude 或其他兼容工具通过自然语言管理和配置 PAN-OS 设备。
View on GitHub

Overview

基本能力

产品定位

PAN-OS MCP Server 是一个用于管理和配置 Palo Alto Networks 防火墙的工具,通过自然语言接口简化操作流程。

核心功能

  • 使用 API 密钥与 PAN-OS/Panorama 设备进行认证
  • 检索系统信息
  • 执行操作命令
  • 提交配置
  • 执行配置操作(设置、编辑、删除、重命名等)
  • 将策略从 Panorama 推送到托管设备

适用场景

  • 需要自动化管理 Palo Alto Networks 防火墙的场景
  • 希望通过自然语言接口简化防火墙配置的场景
  • 需要批量操作或集成到现有自动化流程中的场景

工具列表

  • get_system_info: 检索基本系统信息
  • op_command: 使用 XML 执行操作命令
  • commit_config: 提交候选配置
  • commit_all_shared_policy: 将策略从 Panorama 推送到托管设备
  • config_action: 使用 XPath 执行配置操作

常见问题解答

  • 安全问题:API 密钥应妥善保管,不应提交到公共仓库
  • 生产环境使用:建议添加 TLS 验证和适当的认证控制

使用教程

使用依赖

  • Python 3.13+
  • Palo Alto Networks 防火墙
  • PAN-OS 设备的 API 访问权限

安装教程

  1. 克隆仓库: bash git clone https://github.com/edoscars/pan-os-mcp.git

  2. 安装依赖: bash pip install -r requirements.txt

  3. 添加到 Claude Desktop 配置(在 args 中添加正确的路径): bash { "mcpServers": { "pan-os":{ "command": "uv", "args":[ "--directory", "C:\\Users\\USER\\pan-os", "run", "pan-os.py" ] } } }

  4. 编辑 pan-os.py 文件配置 PAN-OS 设备: python # ----------------------------------------------------------------------------- # Pan-OS / Panorama Configuration (adjust to your environment) # ----------------------------------------------------------------------------- PA_HOST = "your-firewall-ip" PA_API_KEY = "your-api-key"

调试方式

安装完成后,可以通过运行配置好的命令来测试与 PAN-OS 设备的连接和基本功能。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。