防火墙管理协议服务

PAN-OS MCP Server是一个通过自然语言管理Palo Alto Networks防火墙的模型控制协议服务,支持系统信息检索、操作命令执行和配置管理等功能。

  • by edoscars
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 edoscars/pan-os-mcp

使用说明

PAN-OS MCP服务器

该项目提供了一个模型控制协议(MCP)服务器,用于使用XML API与Palo Alto网络防火墙进行交互。它允许您使用Claude或其他兼容工具通过自然语言管理和配置您的PAN-OS设备。

特性

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

需求

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

安装

  1. 克隆存储库:

    git clone https://github.com/edoscars/pan-os-mcp.git
    
  2. 安装依赖项:

    pip install -r requirements.txt
    
  3. 添加到您的Claude Desktop配置中(在args中添加正确的路径):

    {
      "mcpServers": {
        "pan-os":{
          "command": "uv",
          "args":[
            "--directory",
            "C:\\Users\\USER\\pan-os",
            "run",
            "pan-os.py"
          ]
        }
      }
    }
    
  4. 编辑 pan-os.py 配置PAN-OS设备的文件:

# -----------------------------------------------------------------------------
# Pan-OS / Panorama Configuration (adjust to your environment)
# -----------------------------------------------------------------------------
PA_HOST = "your-firewall-ip"
PA_API_KEY = "your-api-key"  

可用命令

服务器提供了几个与PAN-OS交互的工具:

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

安全考虑

  • 该项目旨在在受控环境中进行演示和使用。
  • 代码中的API密钥应保持安全,并且不应提交给公共存储库。
  • 对于生产使用,请确保适当的身份验证控制,并考虑添加TLS验证。

许可证

MIT许可证