菜鸟科技网

华为super命令

super 命令是华为 VRP (Versatile Routing Platform) 操作系统中一个非常重要的权限管理命令,它的核心作用是允许普通用户在不切换到最高权限用户(如 admin)的情况下,临时执行需要高级权限才能运行的命令

华为super命令-图1
(图片来源网络,侵删)

这可以极大地提升日常运维的便利性和安全性。


核心概念:为什么需要 super 命令?

想象一个场景:网络管理员日常登录设备时,为了安全,使用的是普通用户权限(如 operator),这个用户可以查看大部分配置和状态,但执行某些关键操作(如保存配置、重启设备、修改接口描述等)时,系统会提示权限不足。

super 命令出现之前,管理员必须:

  1. 退出当前登录。
  2. 重新使用高权限用户(如 admin)登录。
  3. 执行完命令后,再退出。
  4. 重新用普通用户登录。

这个过程非常繁琐。super 命令就是为了解决这个问题而设计的,它提供了一种“临时的权限提升”机制。

华为super命令-图2
(图片来源网络,侵删)

super 命令的工作原理

super 命令的生效依赖于以下几个关键配置:

  1. 用户角色:必须在设备上配置不同的用户角色,并为每个角色分配不同的命令权限。
  2. 命令授权:需要将哪些命令授权给哪些角色,通过 command-privilege level 命令来设置。
  3. 用户配置:在创建用户时,需要为其指定一个角色。

工作流程:

  1. 一个拥有特定角色(如 operator)的用户登录设备。
  2. 当该用户执行一个超出其角色权限的命令时,系统会拒绝并提示。
  3. 该用户可以输入 super [level] 命令,请求提升到更高级别的权限。
  4. 系统会提示输入当前登录用户的密码(而不是 admin 的密码)。
  5. 如果密码正确,用户的当前会话权限就会临时提升到指定的级别,之后就可以执行高级命令了。
  6. 当用户输入 quit 退出当前会话时,权限会自动恢复到原来的级别。

详细配置与使用步骤

下面我们通过一个完整的例子来展示如何配置和使用 super 命令。

场景设定

  • 高权限用户admin (默认拥有最高权限,级别为 3)
  • 普通用户operator (我们希望他能执行 save 命令,但默认不行)
  • 目标:让 operator 用户通过 super 命令获得执行 save 的权限。

第1步:配置命令权限级别

我们需要确定 save 这个命令属于哪个权限级别,默认情况下,save 命令的级别是 2,我们可以使用 display command-privilege 命令来查看。

华为super命令-图3
(图片来源网络,侵删)
# 查看所有命令的权限级别
<Huawei> display command-privilege ?
  all     All commands
  level   Commands of specified level
# 查看特定命令的权限级别,save
<Huawei> display command-privilege level ?
  <0-3>   Level
# 查看 save 命令的权限级别
<Huawei> display command-privilege level 2 include save
  Command: save
  Level:   2

确认了 save 命令的默认级别是 2。

第2步:配置用户角色

我们不需要创建新角色,因为系统已有 level-0, level-1, level-2, level-3 等预设角色,我们可以直接使用 level-2 角色。

第3步:创建用户并分配角色

创建一个名为 operator 的用户,并分配 level-2 角色。

# 进入系统视图
<Huawei> system-view
# 创建用户 operator,并设置密码为 "Huawei@123"
[Huawei] user-interface vty 0 4
[Huawei-ui-vty0-4] authentication-mode password
[Huawei-ui-vty0-4] set authentication password cipher Huawei@123
[Huawei-ui-vty0-4] user privilege level 2  <-- 设置VTY线路的默认权限级别为2
# 创建本地用户 operator
[Huawei] local-user operator password cipher Huawei@123
[Huawei] local-user operator privilege level 2 <-- 设置用户的权限级别为2
[Huawei] local-user operator service-type telnet ssh
[Huawei] local-user operator role level-2   <-- 分配 level-2 角色
[Huawei] quit

注意:在实际配置中,用户权限级别和角色级别需要匹配。user privilege levelrole level 都设置为 2 是一个常见的做法。

第4步:使用 super 命令

我们用 operator 用户登录设备,并尝试使用 super 命令。

# 用 operator 用户登录
< Huawei > telnet 192.168.1.1
Login authentication
Username: operator
Password: (输入密码 Huawei@123)
# 登录成功,可以看到提示符变为 `<HuaWei>`,级别为 2
<HuaWei>

operator 用户尝试执行 save 命令:

<HuaWei> save
Error: The current command is not permitted.  <-- 提示权限不足

他使用 super 命令来提升权限,因为 save 命令的级别是 2,而他已经是 2 级了,所以他需要提升到 3 级来执行 save

<HuaWei> super 3
Password: (输入当前用户 operator 的密码 Huawei@123)  <-- 关键点:输入的是 operator 的密码,不是 admin 的!
# 密码正确后,提示符变为 `[HuaWei]`,级别提升为 3
[HuaWei]

他就可以执行 save 命令了:

[HuaWei] save
The current configuration will be saved to the device.
Are you sure to continue? [y/n]:y
Info: Saved the current configuration to the device.

执行完高级命令后,输入 quit 退出当前会话,权限会自动降回 2 级。

[HuaWei] quit
<HuaWei>
<HuaWei> quit  <-- quit 断开连接

super 命令的语法与选项

super [ level ]
  • level: 可选项,指定要提升到的权限级别,取值范围为 0-3。
    • 如果不指定 level,系统会默认提升到用户在 user-interface 视图中配置的 user privilege level
    • 如果指定了 level,则提升到指定的级别。
  • Password: 执行命令后,系统会提示输入密码,这是当前登录用户的密码,而不是目标级别用户的密码。

安全最佳实践

虽然 super 命令很方便,但也需要谨慎使用以确保安全:

  1. 强密码策略:为所有用户,特别是拥有 super 权限的用户,设置复杂且不易猜测的密码。
  2. 最小权限原则:只授予用户完成其工作所必需的最小权限,不要为了图方便而给普通用户过高的初始权限。
  3. 审计与日志:确保设备的日志功能已开启,记录所有 super 命令的执行情况,包括执行时间、用户和提升到的级别,这对于事后追溯和安全审计至关重要。
  4. 定期审查:定期审查用户权限配置,确保没有不必要的权限存在。
  5. 结合 AAA:在大型网络中,建议使用 AAA (Authentication, Authorization, Accounting) 框架来集中管理用户认证和授权,super 命令可以很好地融入 AAA 体系。
特性 描述
命令名称 super
核心功能 在不登出/重登录的情况下,临时提升当前用户的执行权限级别。
工作流程 用户登录 -> 执行 super [level] -> 输入当前用户密码 -> 权限临时提升 -> 执行高级命令 -> quit -> 权限恢复。
安全性 输入的是当前用户密码,而非高权限用户密码,权限提升是会话级别的,相对安全。
适用场景 日常运维、故障排查,避免频繁地在不同权限用户间切换。
前提条件 必须预先配置好用户角色和命令的权限级别。

super 命令是华为 VRP 系统中一个非常实用且人性化的功能,它完美平衡了操作便利性和安全性,是每一位华为网络管理员都应该熟练掌握的命令。

分享:
扫描分享到社交APP
上一篇
下一篇