OpenVOS 使用维护网络来监控包括 RAID 和 SAN 磁盘阵列在内的多种设备。该网络还允许您进行配置更改、故障排查和常规监控。但是,当从 OpenVOS 模块访问这些设备时,您只能使用命令行界面 (CLI);通过 Web 浏览器使用的更友好的图形用户界面 (GUI) 则不可用。
由于缺乏图形用户界面(GUI),部分用户将维护网络连接到了另一个对外开放的网络上。这要求对网络上的所有设备以及Stratus 进行重新编号。这也意味着,任何能够访问该网络的人都可以访问维护网络上的设备,而通过该网络进行的监控功能将受到更大规模网络环境所带来的问题的影响。Stratus 建议您不要这样做。
本文将介绍三种方法,让您能够通过网页浏览器图形用户界面管理这些设备,同时仍将维护网络限制在Stratus 。第一种方法假设您希望从位于与Stratus 某个 IP 接口同一子网内的浏览器进行访问。接下来的两种方法则使用 SSH 隧道。
在这些示例中,Stratus 接口地址为 164.152.77.217/24,维护网络地址为 10.10.1.0/24。我想要访问的设备 IP 地址为 10.10.1.20。
方法 1 – 在工作站上修改路由
第一种方法最为简单:在您的工作站上设置一条路由,目标地址可以是单个地址或整个 10.10.1.0/24 子网,网关则设置为Stratus 164.152.77.217/24 接口(见图 1)。 在本例中,我设置了一条指向整个 10.10.1.0/24 子网的路由,以便通过Stratus 访问该子网上的任何主机。此方法仅在Stratus 已配置为允许转发,且运行浏览器的工作站也位于 164.152.77.0/24 子网时才有效。 随后,您可以通过设备的 IP 地址访问它们(参见图 2)。请注意,启用转发功能被一些人视为安全风险。此外,运行 OpenVOS 17.1.0 至 17.1.0bl 版本的模块易受 stcp-3050 和 stcp-3072 漏洞影响,不应启用转发功能。
采用此方法,如果您希望访问位于另一个Stratus 维护网络上的设备,则必须删除现有路由,并添加一条新路由,将新StratusIP 地址设为网关。
方法 2 – 从您的工作站建立 SSH 隧道
第二种方法是在您的工作站与Stratus 之间建立一个 SSH 隧道。这要求Stratus 已运行 SSHStratus ,且您的工作站安装了支持隧道功能的 SSH 客户端。任何支持隧道功能的 SSH 客户端均可使用,但配置方法会因客户端而异。我将介绍两种可在 MS Windows 环境下运行的免费客户端:PuTTY 以及在 Cygwin 环境下运行的 OpenSSH。
PuTTY 可从http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html 下载。我在撰写本文时,可用的版本是 beta 0.62,发布于 2011-12-10。 请不要被“beta”或“0.”吓到。该软件的最初版本是 1999 年 1 月发布的 Beta 0.45。许多用户使用该版本均未遇到任何问题。
安装好 PuTTY 后,点击 putty.exe 图标以打开配置对话框。第一步是输入模块的 IP 地址或主机名,我的情况是 164.152.77.217。端口号应设为 22,连接类型应选 SSH。
现在选择 SSH 下的“隧道”条目,并填写“源端口”和“目标端口”框。目标端口是您想要连接的维护网络中目标设备的 IP 地址。其后跟一个冒号和端口号,即 80。源端口可以是您工作站上任何未被占用的端口。 我通常使用一个标准公式:NNHHP。其中 N 取目标网络地址的后两位,H 取主机号的后两位,P 取端口号的最后一位。因此,10.10.1.20 端口 80 便变为 10208;但如前所述,任何未被占用的数字均可使用。
点击“添加”按钮后,信息会移至“已转发端口”框中。现在点击“打开”。
此时会出现一个类似命令行或终端窗口的界面。系统会提示您输入用户名(“login as”),随后再输入密码。输入完毕后,如果身份验证通过,界面可能会看起来像卡住了。如果您经常进行此操作,建议配置公钥/私钥,这样就可以跳过这些提示。 下一步,请打开浏览器,在地址栏中输入 127.0.0.1:NNHHP,其中 NNHHP 是您在 PuTTY 配置中输入的“源端口”值。此时,您应该会看到目标维护网络设备的登录界面。
如果您不想使用 PuTTY,可以下载 Cygwin。 这是一个允许您在 Windows 平台上运行原生 Linux 应用程序的环境。您可以在http://www.cygwin.com 找到它,本文撰写时的版本为 1.7.17-1。OpenSSH 位于“Net”软件包中,该软件包默认不会安装,因此请务必在下载和安装时将其选中。
安装完成后,您可以使用打开bash shell的Cygwin命令窗口,也可以使用Windows原生命令行。切换到c:cygwinbin目录,并执行SSH命令“ssh -2TNx -L 10208:10.10.1.20:80 [email protected]”。 这里的“nd”是我的用户名别名,您当然需要使用您自己的。此时界面与 PuTTY 非常相似,系统会提示您输入密码,随后窗口会暂停响应。您打开浏览器并访问 127.0.0.1:10208,即可进入目标页面。
如果您使用的是 Linux 发行版而非 Windows,系统很可能已经安装了 OpenSSH。您可以打开终端窗口,输入完全相同的 SSH 命令“ssh -2TNx -L 10208:10.10.1.20:80 [email protected]”,按照提示操作,并以完全相同的方式打开浏览器。
这种方法的一个优点是,您可以在任何地方进行操作;您的工作站无需与Stratus的任一接口位于同一子网中。此外,所有通信均经过加密。
方法 3 – 在Stratus 建立 SSH 隧道
我的第三种方法同样使用 SSH,但这次仅在模块上操作。使用您喜欢的终端模拟器登录到Stratus ,然后使用几乎完全相同的 SSH 命令。 唯一的区别在于“g”参数,它允许来自模块外部的连接:“ssh-2TNxg-L 10208:10.10.1.20:80 [email protected]”。 登录后,请在浏览器中输入模块的IP地址(而非127.0.0.1),但端口号仍为10208(或-L参数中的第一个数字)。
与第二种方法类似,此方法可在任何能够访问该模块的工作站上使用。与在工作站上运行 SSH 的第二种方法不同,此方法不会对工作站与模块之间的连接进行加密。但另一方面,它不需要在工作站上安装任何特殊软件。 最后,可以从已启动的进程中执行 SSH 命令。您可以在模块启动时为每个设备启动一个进程,以确保它们始终可用。请注意,任何能够访问该模块的人都可以连接到这些端口并被转发到目标设备,由于模块不会对这些连接进行身份验证,因此这可能构成安全隐患。
再次重申Stratus 建议您保持维护网络的隔离状态。如果您希望使用管理图形界面(GUI)而非命令行界面(CLI),请采用以下任一方法。
