ADC

为 SNMPv3 查询配置 NetScaler

简单网络管理协议版本 3 (SNMPv3) 基于 SNMPv1 和 SNMPv2 的基本结构和体系结构。但是,SNMPv3增强了基本体系结构,以整合管理和安全功能,例如身份验证、访问控制、数据完整性检查、数据来源验证、消息及时性检查和数据机密性。

为了实现消息级安全和访问控制,SNMPv3 引入了基于用户的安全模型 (USM) 和基于视图的访问控制模型 (VACM)。

  • 基于用户的安全模型。基于用户的安全模型 (USM) 提供消息级安全性。它使您能够为 SNMP 代理和 SNMP 管理器配置用户和安全参数。USM 提供以下功能:
    • 数据完整性: 保护消息在网络传输过程中不被修改。
    • 数据来源验证: 对发送消息请求的用户进行身份验证。
    • 消息及时性: 防止消息延迟或重播。
    • 数据机密性: 保护消息内容不被泄露给未经授权的实体或个人。
  • 基于视图的访问控制模型。基于视图的访问控制模型 (VACM) 使您能够根据各种参数(例如安全级别、安全模型、用户名和视图类型)配置对 MIB 的特定子树的访问权限。它使您能够配置代理,为不同的管理者提供对 MIB 的不同访问级别。

NetScaler 支持以下实体,这些实体使您能够实现 SNMPv3 的安全功能:

  • SNMP 引擎
  • SNMP 视图
  • SNMP 组
  • SNMP 用户

这些实体协同工作以实现 SNMPv3 安全功能。创建视图是为了允许访问 MIB 的子树。然后,创建具有所需安全级别和对已定义视图的访问权限的组。最后,创建用户并将其分配到组。

注意

视图、组和用户配置经过同步并传播到高可用性 (HA) 对中的辅助节点。但是,引擎 ID 既不会传播也不会同步,因为它是每个 NetScaler 设备所独有的。

要实现消息身份验证和访问控制,您需要执行以下操作:

设置引擎 ID

SNMP 引擎是位于 SNMP 代理中的服务提供商。它们提供诸如发送、接收和验证消息之类的服务。SNMP 引擎使用引擎 ID 进行唯一标识。

NetScaler 设备有一个基于其一个接口的 MAC 地址的唯一 EngineID。没有必要重写 engineID。但是,如果您想更改引擎 ID,则可以将其重置。

使用命令行界面设置引擎 ID

在命令提示窗口中,键入以下命令来设置参数并验证配置:

  • set snmp engineId <engineID>
  • show snmp engineId

示例

> set snmp engineId 8000173f0300c095f80c68

使用 GUI 设置引擎 ID

导航到“系统”>“SNMP”>“用户”,单击“配置引擎 ID”,然后键入引擎 ID。

配置视图

SNMP 视图限制用户访问 MIB 的特定部分。SNMP 视图用于实现访问控制。

使用命令行界面添加 SNMP 视图

在命令提示窗口中,键入以下命令来设置参数并验证配置:

  • add snmp view <name> <subtree> -type ( included | excluded )
  • show snmp view <name>
  • rm snmp view <name> <subtree>

其中,

名称。 SNMPv3 视图的名称。它可以包含 1 到 31 个字符,包括大写和小写字母、数字以及连字符 (-)、句点 (.) 英镑 (#)、空格 ()、at 符号 (@)、等号 (=)、冒号 (:) 和下划线 (_) 字符。您应该选择一个有助于识别 SNMPv3 视图的名称。

子树。 要与此 SNMPv3 视图关联的 MIB 树的特定分支(子树)。必须将子树指定为 SNMP OID。这是最大长度为 99 的参数。

类型。在此视图中或从该视图中包含或排除由子树参数指定的子树。如果在 SNMPv3 视图中包含了子树(如 A),并且想要从 SNMPv3 视图中排除 A 的特定子树(如 B),则此设置非常有用。这是一个强制性的参数。可能的值:包括在内,不包括在内。

示例

add snmp view SNMPv3test 1.1.1.1 -type included sh snmp view SNMPv3test rm snmp view SNMPv3test 1.1.1.1

使用 GUI 配置 SNMP 视图

导航到 系统 > SNMP > 视图,然后创建 SNMP 视图。

配置组

SNMP 组是 SNMP 用户的逻辑聚合。它们用于实现访问控制和定义安全级别。您可以配置 SNMP 组,为分配到该组的用户设置访问权限,从而将用户限制为特定视图。

您需要配置 SNMP 组,为分配到该组的用户设置访问权限。

使用命令行界面添加 SNMP 组

在命令提示窗口中,键入以下命令来设置参数并验证配置:

  • add snmp group <name> <securityLevel> -readViewName <string>
  • show snmp group <name> <securityLevel>

其中,

名称。SNMPv3 组的名称。可以包含 1 到 31 个字符,包括大写和小写字母、数字以及连字符 (-)、句点 (.) 英镑 (#)、空格 ()、at 符号 (@)、等号 (=)、冒号 (:) 和下划线 (_) 字符。 您应该选择一个有助于识别 SNMPv3 组的名称。

securityLevel. NetScaler 设备与属于该组的 SNMPv3 用户之间的通信所需的安全级别。指定以下选项之一:

noAuthNoPriv. 既不需要身份验证,也不需要加密。

authNoPriv. 需要身份验证但不需要加密。

authPriv。需要身份验证和加密。注意:如果指定身份验证,则在向组分配 SNMPv3 用户时必须指定加密算法。如果您还指定了加密,则必须为每个组成员分配身份验证和加密算法。这是一个强制性的参数。可能的值:noauthnopriv、authnoPriv、authpriv。

readViewName。 要绑定到此 SNMPv3 组的已配置 SNMPv3 视图的名称。绑定到该组的 SNMPv3 用户可以访问绑定到此 SNMPv3 视图的子树,但不能访问类型为 EXCLUDED 的子树。如果 NetScaler 设备有多个同名的 SNMPv3 视图条目,则所有这些条目都与 SNMPv3 组相关联。这是一个强制性的参数。 最大长度:31

使用 GUI 配置 SNMP 组

导航到“系统”>“SNMP”>“”,然后创建 SNMP 组。

配置用户

SNMP 用户是代理允许其访问 MIB 的 SNMP 管理器。每个 SNMP 用户都被分配到一个 SNMP 组。

您需要在代理上配置用户并将每个用户分配到一个组。

使用命令行界面配置用户

在命令提示窗口中,键入以下命令来设置参数并验证配置:

  • add snmp user <name> -group <string> [-authType ( MD5 | SHA ) {-authPasswd } [-privType ( DES | AES ) {-privPasswd }]]
  • show snmp user <name>

其中,

authType 是配置用户时可用的身份验证选项。有两种身份验证类型,例如 MD5 和 SHA。

PrivType 是配置用户时可用的加密选项。有两种类型的加密,例如密钥大小为 128 位的 DES 和密钥大小为 128 位的 AES。

示例

> add snmp user edocs_user -group edocs_group
<!--NeedCopy-->

使用 GUI 配置 SNMP 用户

导航到“系统”>“SNMP”>“用户”,然后创建 SNMP 用户。

为 SNMPv3 查询配置 NetScaler