
【免费下载链接】community-templatesZabbix Community Templates repository项目地址https://gitcode.com/gh_mirrors/co/community-templates点击查看免费下载本指南围绕 Zabbix Community Templates 仓库中的template_checkpoint_fw-1_interfaces模板展开讲解如何通过「外部脚本发现 SNMP 采集」的组合方式对 CheckpointCheck Point防火墙的接口级包过滤统计Accept / Drop / Reject进行自动化监控。读完本文你将掌握该模板的完整部署前置条件、发现规则与监控项原型的底层原理并能结合仓库源码文件XML / YAML独立完成导入、配置与验证。模板定位专注接口层包过滤统计CheckPoint FW-1 Interfaces模板的核心用途用模板自身的 Overview 一句话概括就是Use this template to monitor Checkpoint firewalls interfaces and packet filtering.见 5.4/6.0 版 README。它不监控 CPU、内存或 HA 状态——那是同目录下 CheckPoint FW-1 模板 的职责该模板采集svnVersion、fwModuleState、fwInstallTime、haWorkMode、fwNumConn、内存及多核 CPU 时间等。本模板只做一件事通过低级别发现LLD自动枚举防火墙上的所有接口并为每个接口采集 8 个包过滤计数器从而回答流量被接受了多少、被丢弃了多少、被拒绝了多少这类防火墙日常运维的核心问题。模板位于仓库的Network_Devices/Checkpoint/分类下提供三个 Zabbix 版本的导入文件Zabbix 版本导入文件格式仓库路径5.0XMLtemplate_checkpoint_fw-1_interfaces.xml5.4YAMLtemplate_checkpoint_fw-1_interfaces.yaml6.0YAMLtemplate_checkpoint_fw-1_interfaces.yaml三个版本的逻辑完全一致5.4 与 6.0 的 YAML 文件在 5.4 版模板定义 与 6.0 版模板定义 中逐项对应仅序列化格式不同。工作原理外部脚本发现 SNMP 原型采集整个模板只包含一条发现规则和 8 个监控项原型但它的数据链路却涉及三个层次外部脚本发现External checkZabbix Server 周期调用advsnmp.discovery外部脚本对防火墙执行 SNMP 遍历输出 JSON 格式的 LLD 数据发现哪些接口SNMP 原型采集SNMP agent对每个被发现的接口根据原型定义用 CHECKPOINT-MIB 中的 OID 轮询对应计数器预处理CHANGE_PER_SECOND将 SNMP 返回的累计计数器转换为每秒变化率速率再送入图形展示。其中advsnmp.discovery是本模板以及同目录多数 Checkpoint 模板共用的外部脚本其出处记录在 5.0 版 additional_info.txt 中Simon Kowallik 的 Zabbix-Addons 项目需自行下载部署到 Zabbix Server 的 ExternalScripts 目录。该脚本的存在意义在于Checkpoint 的接口表索引并非普通ifIndex无法用 Zabbix 内置 SNMP LLD 规则直接解析必须借助这个专门的外部脚本把 OID 索引拆解成多个宏{#ADVSNMPVALUE}、{#ADVSNMPINDEX1}、{#ADVSNMPINDEX2}等模板再基于这些宏生成监控项原型。发现规则Interfaces Discovery模板中唯一的发现规则定义如下来自 5.0 README 与 5.0 XML属性值名称Interfaces Discovery类型External checkKeyadvsnmp.discovery[{HOSTNAME},-v2c -c{$SNMP_COMMUNITY},1.3.6.1.4.1.2620.1.1.25.5.1.2,1.3]更新间隔900 秒15 分钟Key 的四个参数逐一拆解{HOSTNAME}Zabbix 自动替换为当前主机的名称脚本据此定位目标防火墙-v2c -c{$SNMP_COMMUNITY}传给底层 SNMP 工具的选项-v2c表示 SNMPv2c-c{$SNMP_COMMUNITY}使用主机级用户宏{$SNMP_COMMUNITY}作为团体字符串Zabbix 内置同名宏默认值为public可在主机或模板上覆盖1.3.6.1.4.1.2620.1.1.25.5.1.2要遍历的 OID。1.3.6.1.4.1.2620是 Check Point 的私有企业号前缀.1.1.25.5.1.2落在 fw1 产品分支下的接口统计表区域即防火墙接口级计数器表1.3索引拆分定义。从 5.0 XML 的snmp_oid使用{#ADVSNMPINDEX2}可以推断脚本按该参数把完整 OID 索引拆成两段{#ADVSNMPINDEX1}1 个子标识符与{#ADVSNMPINDEX2}3 个子标识符后者被模板用作原型 SNMP OID 的索引部分。发现出的每个接口同时产出{#ADVSNMPVALUE}完整索引后缀与{#ADVSNMPINDEX2}3 段子索引分别服务于监控项命名和 OID 构造。部署前置条件在导入模板之前需要依次满足以下条件均来自模板 Overview 与仓库文件1. 防火墙侧开启 SNMP在 Check Point GAiA / SmartConsole 中启用 SNMP 代理并配置与{$SNMP_COMMUNITY}一致的团体字符串默认模板期望为public生产环境建议自定义并在 Zabbix 主机宏中覆盖。2. Zabbix Server 安装 CHECKPOINT-MIB模板中的 SNMP 监控项直接引用CHECKPOINT-MIB::fwAcceptBytesIn这类符号 OID见 5.0 XML因此CHECKPOINT-MIBchkpnt.mib必须正确安装到 Zabbix Server 的 MIB 目录Overview 中明确说明。安装后可借助snmpwalk手工验证例如snmpwalk -v2c -c public -m CHECKPOINT-MIB 防火墙IP 1.3.6.1.4.1.2620.1.1.25.5.1.23. 部署 advsnmp.discovery 外部脚本将advsnmp.discovery脚本放入 Zabbix Server 配置的 ExternalScripts 目录并保证运行 Zabbix Server 的系统用户有执行权限。部署完成后可在服务器本机做一次冒烟测试advsnmp.discovery 防火墙主机名 -v2c -c public 1.3.6.1.4.1.2620.1.1.25.5.1.2 1.3正常输出应为 JSON 数组每个元素包含{#ADVSNMPVALUE}、{#ADVSNMPINDEX1}、{#ADVSNMPINDEX2}等字段。4. 创建值映射 Checkpoint standard statusCheckpoint 模板集合要求预先创建名为Checkpoint standard status的值映射映射关系固定为原始值映射显示值0OK1Warning2Error在 Zabbix 前端「管理 → 一般 → 值映射」中创建即可。虽然本模板自身的监控项未直接使用该映射README 中 Macros used 与 Template links 均为空但它属于整个 Checkpoint 模板集如template_checkpoint_fw-1的 HA/状态类监控项的公共依赖。5. 导入模板并关联主机Zabbix 5.0导入 5.0/XMLZabbix 5.4 / 6.0分别导入 5.4/YAML 或 6.0/YAML。导入后把模板链接到代表防火墙的主机确认主机上配置了 SNMP 接口IP/端口 161以及正确的{$SNMP_COMMUNITY}宏值。模板归属Templates组监控项归属应用ApplicationCheckpoint FW-15.0 XML 中以applications声明5.4/6.0 YAML 中以标签Application: Checkpoint FW-1体现。监控项原型8 个接口级计数器发现规则生成接口后每个接口自动实例化 8 个监控项README 的 Items collected 表与 5.0 XML 的item_prototypes完全一致监控项名称KeySNMP OID类型更新间隔Interface {#ADVSNMPVALUE} fwAcceptBytesInfwAcceptBytesIn[{#ADVSNMPVALUE}]CHECKPOINT-MIB::fwAcceptBytesIn.{#ADVSNMPINDEX2}SNMP agent120sInterface {#ADVSNMPVALUE} fwAcceptBytesOutfwAcceptBytesOut[{#ADVSNMPVALUE}]CHECKPOINT-MIB::fwAcceptBytesOut.{#ADVSNMPINDEX2}SNMP agent120sInterface {#ADVSNMPVALUE} fwAcceptPcktsInfwAcceptPcktsIn[{#ADVSNMPVALUE}]CHECKPOINT-MIB::fwAcceptPcktsIn.{#ADVSNMPINDEX2}SNMP agent120sInterface {#ADVSNMPVALUE} fwAcceptPcktsOutfwAcceptPcktsOut[{#ADVSNMPVALUE}]CHECKPOINT-MIB::fwAcceptPcktsOut.{#ADVSNMPINDEX2}SNMP agent120sInterface {#ADVSNMPVALUE} fwDropPcktsInfwDropPcktsIn[{#ADVSNMPVALUE}]CHECKPOINT-MIB::fwDropPcktsIn.{#ADVSNMPINDEX2}SNMP agent120sInterface {#ADVSNMPVALUE} fwDropPcktsOutfwDropPcktsOut[{#ADVSNMPVALUE}]CHECKPOINT-MIB::fwDropPcktsOut.{#ADVSNMPINDEX2}SNMP agent120sInterface {#ADVSNMPVALUE} fwRejectPcktsInfwRejectPcktsIn[{#ADVSNMPVALUE}]CHECKPOINT-MIB::fwRejectPcktsIn.{#ADVSNMPINDEX2}SNMP agent120sInterface {#ADVSNMPVALUE} fwRejectPcktsOutfwRejectPcktsOut[{#ADVSNMPVALUE}]CHECKPOINT-MIB::fwRejectPcktsOut.{#ADVSNMPINDEX2}SNMP agent120s计数器语义从命名可以清晰对应 Checkpoint 包过滤的三种处置结果均为入站In/出站Out双向Accept被防火墙策略接受并放行的流量——fwAcceptBytesIn/Out是字节计数fwAcceptPcktsIn/Out是包计数Drop被防火墙静默丢弃的包不回复任何报文fwDropPcktsIn/OutReject被防火墙拒绝并主动回复 RST/ICMP 的包fwRejectPcktsIn/Out。其中Drop与Reject的比值是判断防火墙是否在拦截异常流量、策略是否过严的常用观察点。关键实现细节源码级对照 5.0 XML5.4/6.0 YAML 中逐项相同可以看到每个原型共有的三处实现值类型为 FLOAT8 个原型的value_type均为FLOAT为后续做速率计算预留数值精度预处理 CHANGE_PER_SECOND每个原型都挂载了preprocessingsteptypeCHANGE_PER_SECOND/type/step/preprocessing。SNMP 返回的字节/包计数是自设备启动以来持续累加的计数器该步骤把两次取值之差/时间差换算为每秒速率因此图形和告警表达式拿到的直接就是 bps / pps 量纲OID 引用 {#ADVSNMPINDEX2}原型 OID 形如CHECKPOINT-MIB::fwAcceptBytesIn.{#ADVSNMPINDEX2}接口索引由发现脚本按1.3拆分规则注入从而保证每个接口实例指向正确的表行。轮询间隔 120 秒发现间隔 900 秒——后者是前者整数倍符合 Zabbix 对 LLD 与实例采集节奏的常规搭配。图形原型Filtering for interface每个被发现的接口还会自动生成一张名为Filtering for interface {#ADVSNMPVALUE}的图形graph prototype把 8 个计数器按流量方向与处置结果分组展示。5.0 XML / 5.4 / 6.0 YAML 中定义的样式如下图形项线型drawtype颜色坐标轴fwAcceptBytesInGRADIENT_LINE00AA00右轴fwAcceptBytesOutGRADIENT_LINE9999FF右轴fwAcceptPcktsInBOLD_LINE00AAAA左轴fwAcceptPcktsOut普通线C8C800左轴fwDropPcktsInBOLD_LINECC0000左轴fwDropPcktsOut普通线C8C8C8左轴fwRejectPcktsInBOLD_LINE666666左轴fwRejectPcktsOut普通线960000左轴设计上有两个值得注意的点双 Y 轴两个字节速率项fwAcceptBytesIn/Out被分配到右侧 Y 轴包速率项在左侧 Y 轴。字节速率数值量级通常远大于包速率如 Mbps 级 vs pps 级分开量程可避免图形被某一类曲线压扁颜色即语义Accept 系用绿色/蓝色系00AA00、9999FF、00AAAADrop 系用红色/灰色系CC0000、C8C8C8Reject 系用深灰/暗红系666666、960000Drop 与 Reject 的入站方向用 BOLD_LINE 加粗强调便于在告警时第一时间识别异常方向。宏、模板链接与触发器空白的取舍README 中明确列出三处空白Macros used本模板没有定义模板级宏SNMP 团体字符串完全依赖 Zabbix 内置用户宏{$SNMP_COMMUNITY}在主机级配置Template links不链接其他模板可独立使用也可与 CheckPoint FW-1 模板 同时挂载形成完整监控面后者负责 CPU/内存/HA本模板负责接口包过滤Triggers模板未内置触发器即采集但不告警。实践中建议用户基于这些监控项自行补充触发器例如对每个接口计算丢弃率(丢弃入站包速率 阈值) 且 (接受包速率正常) → 疑似异常流量Zabbix 5.4 中可写为last(/CheckPoint FW-1 Interfaces/fwDropPcktsIn[{#ADVSNMPVALUE}],5m) X之类的表达式在 5.0 中对应last(host/key,300)语法并注意{#ADVSNMPVALUE}需通过 LLD 触发器原型trigger prototype引用才能对每个接口生效。验证与排障部署完成后按以下顺序自检LLD 是否产出数据进入「监测 → 发现」查看Interfaces Discovery最近执行状态正常应每 900 秒成功一次且最新数据为 JSON监控项是否实例化在最新数据中搜索Interface前缀的监控项若防火墙有 4 个接口应看到 4×832 个实例化监控项数值是否合理CHANGE_PER_SECOND 处理后字节项应呈现稳定的速率而非无限增长的累计值若出现not supported优先检查团体字符串、MIB 安装位置、以及外部脚本在 ExternalScripts 目录中的可执行权限MIB 符号解析SNMP OID 采用CHECKPOINT-MIB::符号名若 Zabbix Server 上 MIB 缺失原型会因 OID 无法解析而直接 unsupported。小结CheckPoint FW-1 Interfaces是一个小而专的 Zabbix 社区模板它用一条advsnmp.discovery外部发现规则解决 Checkpoint 私有接口表的枚举难题用 8 个 SNMP 原型 CHANGE_PER_SECOND 预处理输出接口级 Accept/Drop/Reject 的字节与包速率再通过双轴图形原型让运维人员一眼看清每块接口的过滤行为。配合 CheckPoint FW-1 模板 使用即可覆盖一台 Checkpoint 防火墙从系统资源到接口流量过滤的完整可观测面。赞分享【免费下载链接】community-templatesZabbix Community Templates repository项目地址https://gitcode.com/gh_mirrors/co/community-templates点击查看免费下载相关推荐CheckPoint FW-1 接口监控模板实战用 Zabbix 6.0 采集防火墙接口包过滤统计CheckPoint FW 1 接口监控模板实战用 Zabbix 6.0 采集防火墙接口包过滤统计 本文围绕 Zabbix Community TemplatZabbix 监控 Check Point FW-1 防火墙接口与包过滤CheckPoint FW-1 Interfaces 模板解析与部署指南Zabbix 监控 Check Point FW 1 防火墙接口与包过滤CheckPoint FW 1 Interfaces 模板解析与部署指南 导读 本文基awesome-free-saas学生党清单学习、论文、协作必备的10个免费工具awesome free saas学生党清单学习、论文、协作必备的10个免费工具 还在为写论文、做小组作业而焦虑吗 awesome free saas ht上一篇3款聚合工具颠覆体验Simple Live让多平台直播观看效率提升200%下一篇3个颠覆认知的教育资源获取技巧让优质学习资料触手可及创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考