深信服M5100S tips

在某个项目中用到了深信服的M5100-S SSL VPN设备,而网上关于深信服设备的资料非常匮乏,因此我根据平时的积累,整理了一些资料和tips,以飨读者。

SNMP

community
在深信服的设备使用文档中从未提及SNMP,然而实际上是有SNMP这个功能的,只是community不是传统的public,而是sinfors

oid

1.3.6.1.2.1.1.3.0    # 设备运行时间(UPTIME),以1/100秒为单位。
1.3.6.1.2.1.1.1.0    # 系统描述
1.3.6.1.2.1.1.5.0    # 设备型号
1.3.6.1.2.1.1.4.0    # 联系方式
1.3.6.1.2.1.1.6.0    # 位置
1.3.6.1.2.1.2.1.0    # 接口数量
1.3.6.1.2.1.2.2.1.2.x     # 接口描述信息(不同的x数值代表不同的接口,视设备回复而定)
1.3.6.1.2.1.2.2.1.10.x    # 接口接收总流量,以Byte为单位(不同的x数值代表不同的接口,视设备回复而定)
1.3.6.1.2.1.2.2.1.11.x    # 接口发送总流量,以Byte为单位(不同的x数值代表不同的接口,视设备回复而定)
1.3.6.1.2.1.2.2.1.8.x     # 接口接口状态(1-up,2-down)(不同的x数值代表不同的接口,视设备回复而定)
1.3.6.1.2.1.2.2.1.5.x     # 接口速率,以10bps为单位(不同的x数值代表不同的接口,视设备回复而定)
1.3.6.1.4.1.33333.1.1.1.0     # CPU占用率,以百分比为单位。
1.3.6.1.4.1.33333.1.1.2.0     # 设备类型(如M5000)
1.3.6.1.4.1.33333.1.1.3.0     # 剩余内存,free+buffers,以KB为单位。
1.3.6.1.4.1.33333.1.2.1.0     # VPN状态("vpn's status. 0 is stopped, 1 is normal, 2 is error" ) DLAN4.x版本因为lmdlan没有跟snmpagent程序通信,因此取不到正确的运行状态,会一直显示为1。
1.3.6.1.4.1.33333.1.2.2.0     # VPN连接数,DLAN4.x版本因为lmdlan没有跟snmpagent程序通信,因此取不到正确的连接数,会一直显示为0。
1.3.6.1.4.1.33333.1.2.3.0     # 软件版本(如M5000-Q-4.0-R1)
1.3.6.1.4.1.33333.1.3.1.0     # SSL VPN状态("ssl's status. 0 is stopped, 1 is normal, 2 is error")
1.3.6.1.4.1.33333.1.3.2.0     # SSL VPN连接数(即接入的用户数目)

实际上,在PRTG中,可以通过auto discovery扫描到端口带宽和uptime,至于CPU利用率、MEM剩余量则可以通过手工添加sensor。

CLI

M5100-S不支持命令行,但是作为一个网络工程师,对非CLI的设备心存反感,想ping一下互联设备,抓个包啥的都不行,好在深信服提供了一个update的工具,勉强可以使用。

按F10将弹出如下窗口,支持的命令包括

  1. ifconfig
  2. netstat -rn
  3. ping

从显示结果来看,sinfor的OS应该是在linux上进行裁剪的,因为假如是BSD,网卡名称就应该是fxp或xx等以驱动来命名。
既然如此,根据GPL协议,sinfor是否应该开放源代码呢?

dlan

只要有这个工具,是否意味着任何一台sinfor设备,只要用户不修改原始密码,就可以从公网任意访问xx了呢?那安全性从何谈起。

默认端口映射问题

M5100-S通过一条互联网专线访问外网,运营商分配给该客户的是112.180.254.33/29网段的IP地址,其中112.180.254.34是M5100-S的接口IP地址。默认情况下,这几个IP地址的443端口全部映射到该接口IP的443端口,也就是说,当客户分别访问这几个IP的443端口时,全部重定向至https://112.180.254.34。

难道,作为一个安全网络设备,不应该将:“非明确通过的即禁止”当作设计的首要原则吗?

解决的办法:

除了112.180.254.34这个IP外,明确禁止剩余IP的443端口映射。