02-SSL VPN故障处理
本章节下载: 02-SSL VPN故障处理 (409.31 KB)
在浏览器中输入SSL VPN网关地址,无法打开SSL VPN网关页面。
本类故障的常见原因包括:
· 客户端与SSL VPN网关之间路由不通,无法建立连接。
· 安全域之间的安全策略配置不正确。
· SSL VPN网关配置不正确。
· SSL VPN访问实例配置不正确。
· SSL VPN网关地址和端口没有被正确监听。
本类故障的诊断流程如图1所示。
图1 浏览器无法打开SSL VPN网关页面的故障处理流程图
(1) 检查客户端能否Ping通SSL VPN网关。
使用ping命令检查网络连接情况。
a. 如果Ping不通,请参见“Ping和Tracert故障处理”中的“Ping不通”继续定位,确保SSL VPN客户端能Ping通SSL VPN网关。
b. 如果故障仍不能排除,请执行步骤(2)。
(2) 检查安全域之间的安全策略配置是否正确。
图2 SSL VPN组网安全域示意图
如图2所示,在设备上查看安全域及安全策略配置信息,确保如下安全域之间的安全策略已放通:
¡ 确保设备本机Local安全域和用户所在的Untrust安全域互通,使得SSL VPN用户和SSL VPN网关之间可以互相发送报文。
¡ 此安全域及安全策略相关配置信息如下:
<Device> system-view
[Device] interface gigabitethernet 2/0/1
[Device-GigabitEthernet2/0/1] ip address 1.1.1.2 255.255.255.0
[Device-GigabitEthernet2/0/1] quit
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 2/0/1
[Device-security-zone-Untrust] quit
[Device] security-policy
[Device-security-policy] rule name sslvpnlocalout1
[Device-security-policy-1-sslvpnlocalout1] source-zone local
[Device-security-policy-1-sslvpnlocalout1] destination-zone untrust
[Device-security-policy-1-sslvpnlocalout1] source-address host 1.1.1.2
[Device-security-policy-1-sslvpnlocalout1] destination-address host 40.1.1.1
[Device-security-policy-1-sslvpnlocalout1] action pass
[Device-security-policy-1-sslvpnlocalout1] quit
[Device-security-policy] rule name sslvpnlocalin1
[Device-security-policy-2-sslvpnlocalin1] source-zone untrust
[Device-security-policy-2-sslvpnlocalin1] destination-zone local
[Device-security-policy-2-sslvpnlocalin1] source-address host 40.1.1.1
[Device-security-policy-2-sslvpnlocalin1] destination-address host 1.1.1.2
[Device-security-policy-2-sslvpnlocalin1] action pass
[Device-security-policy-2-sslvpnlocalin1] quit
[Device-security-policy] quit
¡ 确保设备本机Local安全域和内网服务器所在的Trust安全域互通,使得SSL VPN网关和内网服务器之间可以互相发送报文。
¡ 此安全域及安全策略相关配置信息如下:
[Device] interface gigabitethernet 2/0/2
[Device-GigabitEthernet2/0/2] ip address 2.2.2.2 255.255.255.0
[Device-GigabitEthernet2/0/2] quit
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 2/0/2
[Device-security-zone-Trust] quit
[Device-security-policy] rule name sslvpnlocalout2
[Device-security-policy-3-sslvpnlocalout2] source-zone local
[Device-security-policy-3-sslvpnlocalout2] destination-zone trust
[Device-security-policy-3-sslvpnlocalout2] source-address host 2.2.2.2
[Device-security-policy-3-sslvpnlocalout2] destination-address host 20.2.2.2
[Device-security-policy-3-sslvpnlocalout2] action pass
[Device-security-policy-3-sslvpnlocalout2] quit
[Device-security-policy] rule name sslvpnlocalin2
[Device-security-policy-4-sslvpnlocalin2] source-zone trust
[Device-security-policy-4-sslvpnlocalin2] destination-zone local
[Device-security-policy-4-sslvpnlocalin2] source-address host 20.2.2.2
[Device-security-policy-4-sslvpnlocalin2] destination-address host 2.2.2.2
[Device-security-policy-4-sslvpnlocalin2] action pass
[Device-security-policy-4-sslvpnlocalin2] quit
[Device-security-policy] quit
有关安全策略故障处理的详细介绍,请参见“安全类故障处理”手册中的“安全策略故障处理”。
如果故障仍不能排除,请执行步骤(3)。
(3) 检查SSL VPN网关配置是否正确。
通过查看SSL VPN网关的显示信息,确认SSL VPN网关的状态:
¡ 确认SSL VPN网关是否处于Up状态。通过执行display sslvpn gateway命令查看显示信息中Operation state字段的值,
¡ 若值为Up,则表示SSL VPN网关处于Up状态,否则需要在SSL VPN网关视图下执行service enable命令开启SSL VPN网关,配置举例如下:
[Device] sslvpn gateway gw1
[Device-sslvpn-gateway-gw1] service enable
SSL VPN网关的显示信息如下:
[Device] display sslvpn gateway
Gateway name: gw
Operation state: Up
IP: 1.1.1.2 Port: 2000
...
如果故障仍不能排除,请执行步骤(4)。
(4) 检查SSL VPN访问实例配置是否正确。
通过查看SSL VPN访问实例的显示信息,确认SSL VPN访问实例的状态:
¡ 确认SSL VPN访问实例是否处于Up状态。通过查看显示信息中Operation state字段的值,若值为Up,则表示SSL VPN访问实例处于Up状态,否则需要在SSL VPN访问实例视图下执行service enable命令开启SSL VPN访问实例
¡ 确认SSL VPN访问实例是否引用了SSL VPN网关。通过查看显示信息中Associated SSL VPN gateway字段的值,若有引用的网关名称,则表示成功引用了SSL VPN网关,否则需要在SSL VPN访问实例视图下执行gateway命令,引用SSL VPN网关,配置举例如下:
[Device] sslvpn context ctx1
[Device-sslvpn-context-ctx1] gateway gw1
SSL VPN访问实例的显示信息如下:
[Device] display sslvpn context
Context name: ctx
Operation state: Up
Associated SSL VPN gateway: gw
...
如果故障仍不能排除,请执行步骤(5)。
(5) 检查SSL VPN网关地址和端口是否被正确侦听。
通过执行display tcp-proxy命令确认SSL VPN网关地址和端口的侦听状态,需要分别确认每个业务板的侦听端口是否正确开启。
TCP代理连接的显示信息如下:
[Device] display tcp-proxy slot 1
Local Addr:port Foreign Addr:port State Service type
1.1.1.2:2000 0.0.0.0:0 LISTEN SSLVPN
如果端口监听状态异常请根据如下情况进行处理:
¡ 由于内存不足导致:通过执行display memory-threshold命令查看设备当前内存使用状态,如果设备当前内存使用状态为告警状态,则需要等待内存空间恢复后,在SSL VPN网关视图下执行undo service enable命令关闭SSL VPN网关,并执行service enable命令重新开启SSL VPN网关。
¡ 设备内存告警门限相关显示信息如下:
[Device] display memory-threshold
Memory usage threshold: 100%
Free-memory thresholds:
Minor: 256M
Severe: 128M
Critical: 64M
Normal: 304M
Early-warning: 320M
Secure: 368M
Current free-memory state: Minor
...
¡ 由于端口被占用导致:通过执行display tcp-proxy port-info命令查看端口使用情况,如果端口所在端口段的状态为RESERVED,表示该端口段内的端口已被占用,需要更换SSL VPN网关的端口后,在SSL VPN网关视图下执行undo service enable命令关闭SSL VPN网关,并执行service enable命令重新开启SSL VPN网关。
¡ TCP代理端口使用情况显示信息如下:
[Device] display tcp-proxy port-info
Index Range State
16 [1024, 1087] USABLE
17 [1088, 1151] USABLE
18 [1152, 1215] RESERVED
19 [1216, 1279] USABLE
20 [1280, 1343] USABLE
...
如果故障仍不能排除,请执行步骤(6)。
(6) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
无
浏览器可以打开SSL VPN网关页面,但是无法登录。
本类故障的常见原因包括:
· SSL VPN用户配置不正确。
· 开启了客户端和服务器端证书认证,证书安装不正确。
本类故障的诊断流程如图3所示。
图3 浏览器无法登录SSL VPN网关的故障处理流程图
(1) 检查SSL VPN用户配置是否正确。
针对不同的用户类型,检查用户配置。
¡ 本地用户:通过执行display local-user命令查看本地用户配置信息,确保用户类型为网络接入类(本地用户名称前有Network access user字样),服务类型为SSL VPN(Service type字段取值为SSL VPN),且为SSL VPN用户配置资源组(SSL VPN policy group字段有取值)。
<Sysname> display local-user
Network access user sslvpn:
State: Active
Service type: SSL VPN
User group: system
Authorization attributes:
Work directory: flash:
User role list: network-operator
SSL VPN policy group: pg
...
¡ 远程用户:确保在设备上配置了本地用户组,且本地用户组的名称需要与远程认证服务器上用户隶属的用户组名称相同,例如,远程认证服务器上用户隶属的用户组名称和本地用户组名称同为sslvpn。同时,需要在本地用户组内引用了SSL VPN策略组,该策略组在SSL VPN policy group字段中显示。
<Sysname> display user-group all
Total 1 user groups matched.
User group: sslvpn
Authorization attributes:
Work directory: flash:/
SSL VPN policy group: policygroup1
¡ ...
如果故障仍不能排除,请执行步骤(2)。
(2) 检查是否正确安装了证书。
若开启了客户端和服务器端证书认证,需要确保客户端和服务器端已正确安装证书。
¡ 客户端证书认证:通过执行display ssl client-policy命令查看SSL客户端策略配置信息,检查SSL版本、引用的PKI域等配置是否正确。
<Sysname> display ssl client-policy policy1
SSL client policy: policy1
SSL version: SSL 3.0
PKI domain: client-domain
Preferred ciphersuite:
RSA_AES_128_CBC_SHA
Server-verify: enabled
...
¡ 服务器端证书认证:通过执行display ssl server-policy命令查看SSL服务端策略配置信息,检查SSL版本、引用的PKI域等配置是否正确。
<Sysname> display ssl server-policy policy1
SSL server policy: policy1
Version info:
SSL3.0: Disabled
TLS1.0: Enabled
TLS1.1: Disabled
TLS1.2: Enabled
TLS1.3: Enabled
GM-TLS1.1: Disabled
PKI domains: server-domain
¡ ...
如果故障仍不能排除,请执行步骤(3)。
(3) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
无
如图4所示,SSL VPN用户通过浏览器登录SSL VPN网关后,无法访问内网服务器资源。
本类故障的常见原因包括:
· SSL VPN访问实例下没有配置内网资源。
· 设备上没有配置SNAT地址池。
· SSL VPN网关的上行链路不通。
本类故障的诊断流程如图5所示。
(1) 检查SSL VPN网关的上行链路是否通畅。
以下情况会导致上行链路不通,请注意排除:
SSL VPN网关没有配置到达内网资源的路由,可通过查看设备路由表确认,具体排查方法如下:
a. 在Device上执行display ip routing-table命令,查看是否存在到达目的地的路由信息。
[Device] display ip routing-table
Destinations : 2 Routes : 2
Destination/Mask Proto Pre Cost NextHop Interface
0.0.0.0/32 Direct 0 0 127.0.0.1 InLoop0
20.2.2.0/24 Static 60 0 2.2.2.3 GE2/0/3
b. 如果不存在相关路由信息,请执行命令display current-configuration命令查看Device上是否有去往目的地的静态路由配置信息(此处以静态路由为例),执行display interface命令查看Device上去往目的地址的出接口(本例为GE2/0/3)的状态是否为Up。相关命令如下所示:
[Device] display current-configuration | include route-static
ip route-static 20.2.2.0 24 2.2.2.3
如果不存在以上静态路由,请执行如下命令进行补充。
[Device] ip route-static 20.2.2.0 24 2.2.2.3
执行如下命令如果显示的接口状态不为Up,请排查物理链路,确保物理接口指示灯亮起。
[Device] display interface gigabitethernet 2/0/3
GigabitEthernet2/0/3
Current state: UP
Line protocol state: UP
Description: GigabitEthernet2/0/3 Interface
...
内网服务器未配置回程路由导致链路不通,可在内网服务器上执行相关命令查看路由信息,确保配置了内网服务器到达SSL VPN网关的路由。
配置了策略路由导致链路不通。
c. 在Device上执行display ip policy-based-route setup命令,查看已经应用的策略路由信息,如下所示设备上应用了本地策略aaa。
[Device] display ip policy-based-route setup
Policy name Type Interface
aaa Local N/A
d. 在Device上执行display ip policy-based-route local命令,查看本地策略路由的配置信息和统计信息,本地策略aaa中引用了ACL规则3002。
[Device] display ip policy-based-route local
Policy based routing information for local:
Policy name: aaa
node 2 permit:
if-match acl 3002
apply next-hop 3.3.3.3
Matched: 0
e. 在Device上执行display acl命令,查看ACL规则3002中是否包含了SSL VPN网关上行行链路的流量,如果包含SSL VPN流量,需要修改ACL规则,避免SSL VPN上行链路不通。
[Device] display acl 3002
Advanced IPv4 ACL 3002, 1 rule,
ACL's step is 5
rule 1 permit ip source 1.1.1.0 0.0.0.255 destination 3.3.3.0 0.0.0.255
如果故障仍不能排除,请执行步骤(2)。
(2) 检查设备上是否配置了SNAT地址池。
SNAT地址的配置方法如下:
# 配置SNAT地址池spool1的IPv4地址范围为1.1.1.1~1.1.1.100,IPv6地址范围为1234::100~1234::200。
[Sysname] sslvpn snat-pool spool1
[Sysname-sslvpn-snatpool-spool1] ip range 1.1.1.1 1.1.1.100
[Sysname-sslvpn-snatpool-spool1] ipv6 range 1234::100 1234::200
如果故障仍不能排除,请执行步骤(3)。
(3) 检查SSL VPN访问实例下是否配置了内网资源。
SSL VPN用户需要通过浏览器登录SSL VPN网关,并通过SSL VPN网关访问企业内网资源。此时,需要确保SSL VPN访问实例下Web接入资源至少配置了以下一种类型:
¡ 在资源组中引用资源列表的方式,具体配置方法如下:
# 创建URL表项urlitem,并配置资源的URL。
<Device> system-view
[Device] sslvpn context ctxweb1
[Device-sslvpn-context-ctxweb1] url-item urlitem
[Device-sslvpn-context-ctxweb1-url-item-urlitem] url http://20.2.2.2
[Device-sslvpn-context-ctxweb1-url-item-urlitem] quit
# 创建URL列表urllist,并引用的URL表项。
[Device-sslvpn-context-ctxweb1] url-list urllist
[Device-sslvpn-context-ctxweb1-url-list-urllist] heading web
[Device-sslvpn-context-ctxweb1-url-list-urllist] resources url-item urlitem
[Device-sslvpn-context-ctxweb1-url-list-urllist] quit
# SSL VPN访问实例ctxweb1下创建策略组resourcegrp1,并在资源组中引用该URL列表urllist。
[Device-sslvpn-context-ctxweb1] policy-group resourcegrp1
[Device-sslvpn-context-ctxweb1-policy-group-resourcegrp1] resources url-list urllist
[Device-sslvpn-context-ctxweb1-policy-group-resourcegrp1] quit
[Device-sslvpn-context-ctxweb1] quit
¡ 在资源组中引用Web接入过滤规则的方式,具体配置方法如下:。
# 配置能够放行SSL VPN用户访问内网资源的ACL规则或者URI ACL规则。
[Device] acl advanced 3000
[Device-acl-ipv4-adv-3000] rule permit ip source 40.1.1.0 0.0.0.255 destination 20.2.2.0 0.0.0.255
[Device-acl-ipv4-adv-3000] quit
# 在资源组中通过Web接入过滤引用ACL规则或者URI ACL规则。
[Device] sslvpn context ctxweb1
[Device-sslvpn-context-ctxweb1] policy-group resourcegrp1
[Device-sslvpn-context-ctxweb1-policy-group-resourcegrp1] filter web-access acl 3000
[Device-sslvpn-context-ctxweb1-policy-group-resourcegrp1] quit
[Device-sslvpn-context-ctxweb1] quit
如果故障仍不能排除,请执行步骤(4)。
(4) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
SSLVPN_WEB_RESOURCE_FAILED
在iNode客户端输入SSL VPN网关地址后,提示无法获取SSL VPN网关信息。
本类故障的常见原因包括:
· 客户端与SSL VPN网关之间路由不通,无法建立连接。
· 安全域之间的安全策略配置不正确。
· SSL VPN网关配置不正确。
· SSL VPN访问实例配置不正确。
· SSL VPN网关地址和端口没有被正确监听。
本类故障的诊断流程如图6所示。
图6 iNode客户端无法获取SSL VPN网关信息的故障处理流程图
(1) 检查客户端能否Ping通设备。
使用ping命令检查网络连接情况。
a. 如果Ping不通,请参见“Ping和Tracert故障处理”中的“Ping不通”继续定位,确保SSL VPN客户端能Ping通SSL VPN网关。
b. 如果故障仍不能排除,请执行步骤(2)。
(2) 检查安全域之间的安全策略配置是否正确。
图7 SSL VPN IP接入方式组网安全域示意图
如图7所示,在设备上查看安全域及安全策略配置信息,确保如下安全域之间的安全策略已放通:
¡ 确保设备本机Local安全域和SSL VPN用户所在的Untrust安全域互通,使得SSL VPN用户和SSL VPN网关之间可以互相发送报文。
¡ 此安全域及安全策略相关配置信息如下:
<Device> system-view
[Device] interface gigabitethernet 2/0/1
[Device-GigabitEthernet2/0/1] ip address 1.1.1.2 255.255.255.0
[Device-GigabitEthernet2/0/1] quit
[Device] interface sslvpn-ac 1
[Device-SSLVPN-AC1] ip address 10.1.1.100 24
[Device-SSLVPN-AC1] quit
[Device] security-zone name untrust
[Device-security-zone-Untrust] import interface gigabitethernet 2/0/1
[Device-security-zone-Untrust] import interface sslvpn-ac 1
[Device-security-zone-Untrust] quit
[Device] security-policy
[Device-security-policy] rule name sslvpnlocalout1
[Device-security-policy-1-sslvpnlocalout1] source-zone local
[Device-security-policy-1-sslvpnlocalout1] destination-zone untrust
[Device-security-policy-1-sslvpnlocalout1] source-address host 1.1.1.2
[Device-security-policy-1-sslvpnlocalout1] destination-address host 40.1.1.1
[Device-security-policy-1-sslvpnlocalout1] action pass
[Device-security-policy-1-sslvpnlocalout1] quit
[Device-security-policy] rule name sslvpnlocalin1
[Device-security-policy-2-sslvpnlocalin1] source-zone untrust
[Device-security-policy-2-sslvpnlocalin1] destination-zone local
[Device-security-policy-2-sslvpnlocalin1] source-address host 40.1.1.1
[Device-security-policy-2-sslvpnlocalin1] destination-address host 1.1.1.2
[Device-security-policy-2-sslvpnlocalin1] action pass
[Device-security-policy-2-sslvpnlocalin1] quit
[Device-security-policy] quit
¡ 确保设备本机Local安全域和内网服务器所在的Trust安全域互通,使得SSL VPN网关和内网服务器之间可以互相发送报文。
¡ 此安全域及安全策略相关配置信息如下:
[Device] interface gigabitethernet 2/0/2
[Device-GigabitEthernet2/0/2] ip address 2.2.2.2 255.255.255.0
[Device-GigabitEthernet2/0/2] quit
[Device] security-zone name trust
[Device-security-zone-Trust] import interface gigabitethernet 2/0/2
[Device-security-zone-Trust] quit
[Device-security-policy] rule name sslvpnlocalout2
[Device-security-policy-3-sslvpnlocalout2] source-zone local
[Device-security-policy-3-sslvpnlocalout2] destination-zone trust
[Device-security-policy-3-sslvpnlocalout2] source-address host 2.2.2.2
[Device-security-policy-3-sslvpnlocalout2] destination-address host 20.2.2.2
[Device-security-policy-3-sslvpnlocalout2] action pass
[Device-security-policy-3-sslvpnlocalout2] quit
[Device-security-policy] rule name sslvpnlocalin2
[Device-security-policy-4-sslvpnlocalin2] source-zone trust
[Device-security-policy-4-sslvpnlocalin2] destination-zone local
[Device-security-policy-4-sslvpnlocalin2] source-address host 20.2.2.2
[Device-security-policy-4-sslvpnlocalin2] destination-address host 2.2.2.2
[Device-security-policy-4-sslvpnlocalin2] action pass
[Device-security-policy-4-sslvpnlocalin2] quit
[Device-security-policy] quit
¡ 确保SSL VPN用户所在的Untrust安全域和内网服务器所在的Trust安全域互通,使得用户可以通过SSL VPN AC接口和Server互相发送报文。
¡ 此安全域及安全策略相关配置信息如下:
[Device-security-policy] rule name untrust-trust
[Device-security-policy-5-untrust-trust] source-zone untrust
[Device-security-policy-5-untrust-trust] destination-zone trust
[Device-security-policy-5-untrust-trust] source-address subnet 10.1.1.0 24
[Device-security-policy-5-untrust-trust] destination-address host 20.2.2.2
[Device-security-policy-5-untrust-trust] action pass
[Device-security-policy-5-untrust-trust] quit
[Device-security-policy] rule name trust-untrust
[Device-security-policy-6-trust-untrust] source-zone trust
[Device-security-policy-6-trust-untrust] destination-zone untrust
[Device-security-policy-6-trust-untrust] source-address host 20.2.2.2
[Device-security-policy-6-trust-untrust] destination-address subnet 10.1.1.0 24
[Device-security-policy-6-trust-untrust] action pass
[Device-security-policy-6-trust-untrust] quit
[Device-security-policy] quit
有关安全策略故障处理的详细介绍,请参见“安全类故障处理”手册中的“安全策略故障处理”。
如果故障仍不能排除,请执行步骤(3)。
(3) 检查SSL VPN网关配置是否正确。
通过查看SSL VPN网关的显示信息,确认SSL VPN网关的状态:
¡ 确认SSL VPN网关是否处于Up状态。通过执行display sslvpn gateway命令查看显示信息中Operation state字段的值,
¡ 若值为Up,则表示SSL VPN网关处于Up状态,否则需要在SSL VPN网关视图下执行service enable命令开启SSL VPN网关,配置举例如下:
[Device] sslvpn gateway gw1
[Device-sslvpn-gateway-gw1] service enable
SSL VPN网关的显示信息如下:
[Device] display sslvpn gateway
Gateway name: gw
Operation state: Up
IP: 1.1.1.2 Port: 2000
...
如果故障仍不能排除,请执行步骤(4)。
(4) 检查SSL VPN访问实例配置是否正确。
通过查看SSL VPN访问实例的显示信息,确认SSL VPN访问实例的状态:
¡ 确认SSL VPN访问实例是否处于Up状态。通过display sslvpn context命令查看显示信息中Operation state字段的值,若值为Up,则表示SSL VPN访问实例处于Up状态,否则需要在SSL VPN访问实例视图下执行service enable命令开启SSL VPN访问实例
¡ 确认SSL VPN访问实例是否引用了SSL VPN网关。通过display sslvpn context命令查看显示信息中Associated SSL VPN gateway字段的值,若有引用的网关名称,则表示成功引用了SSL VPN网关,否则需要在SSL VPN访问实例视图下执行gateway命令,引用SSL VPN网关,配置举例如下:
[Device] sslvpn context ctx1
[Device-sslvpn-context-ctx1] gateway gw1
SSL VPN访问实例的显示信息如下:
[Device] display sslvpn context
Context name: ctx
Operation state: Up
Associated SSL VPN gateway: gw
...
如果故障仍不能排除,请执行步骤(5)。
(5) 检查SSL VPN网关地址和端口是否被正确侦听。
通过执行display tcp-proxy命令确认SSL VPN网关地址和端口的侦听状态,需要分别确认每个业务板的侦听端口是否正确开启。
TCP代理连接的显示信息如下:
[Device] display tcp-proxy slot 1
Local Addr:port Foreign Addr:port State Service type
1.1.1.2:2000 0.0.0.0:0 LISTEN SSLVPN
如果端口监听状态异常请根据如下情况进行处理:
¡ 由于内存不足导致:通过执行display memory-threshold命令查看设备当前内存使用状态,如果设备当前内存使用状态为告警状态,则需要等待内存空间恢复后,在SSL VPN网关视图下执行undo service enable命令关闭SSL VPN网关,并执行service enable命令重新开启SSL VPN网关。
¡ 设备内存告警门限相关显示信息如下:
[Device] display memory-threshold
Memory usage threshold: 100%
Free-memory thresholds:
Minor: 256M
Severe: 128M
Critical: 64M
Normal: 304M
Early-warning: 320M
Secure: 368M
Current free-memory state: Minor
...
¡ 由于端口被占用导致:通过执行display tcp-proxy port-info命令查看端口使用情况,如果端口所在端口段的状态为RESERVED,表示该端口段内的端口已被占用,需要更换SSL VPN网关的端口后,在SSL VPN网关视图下执行undo service enable命令关闭SSL VPN网关,并执行service enable命令重新开启SSL VPN网关。
¡ TCP代理端口使用情况显示信息如下:
[Device] display tcp-proxy port-info
Index Range State
16 [1024, 1087] USABLE
17 [1088, 1151] USABLE
18 [1152, 1215] RESERVED
19 [1216, 1279] USABLE
20 [1280, 1343] USABLE
...
如果故障仍不能排除,请执行步骤(6)。
(6) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
无
在iNode客户端上输入SSL VPN网关地址后,可以获取SSL VPN网关信息,但是无法登录。
通过执行display sslvpn session命令查看SSL VPN会话信息为空,即SSL VPN会话未建立成功,需要根据下文中的故障排查步骤进行排查。
本类故障的常见原因包括:
· SSL VPN AC接口配置不正确。
· 虚拟网卡IP地址分配失败。
· SSL VPN用户配置不正确。
· 开启了客户端和服务器端证书认证,证书安装不正确。
· iNode客户端不是最新版本。
本类故障的诊断流程如图8所示。
图8 iNode客户端无法登录SSL VPN网关的故障处理流程图
(1) 检查SSL VPN AC接口配置是否正确。
确认SSL VPN AC接口配置是否正确,需要为SSL VPN AC接口配置IP地址,且在SSL VPN访问实例下引用该SSL VPN AC接口。
a. 通过执行display interface命令,查看SSL VPN AC接口配置是否正确,若有如下显示信息,代表SSL VPN AC接口配置正确:
<Device> system-view
[Device] display interface SSLVPN-AC 1 brief
Brief information on interfaces in route mode:
Link: ADM - administratively down; Stby - standby
Protocol: (s) - spoofing
Interface Link Protocol Primary IP Description
SSLVPN-AC1 UP UP 1.1.1.1
b. SSL VPN AC接口的配置,以及在SSL VPN访问实例下引用该SSL VPN AC接口的配置举例如下:
[Device] interface SSLVPN-AC 1
[Device-SSLVPN-AC1] ip address 1.1.1.1 24
[Device-SSLVPN-AC1] quit
[Device] sslvpn context ctx
[Device-sslvpn-context-ctx] ip-tunnel interface SSLVPN-AC 1
[Device-sslvpn-context-ctx] quit
如果以上配置正确,故障仍不能排除,请执行步骤(2)。
(2) 虚拟网卡IP地址分配失败。
a. 检查SSL VPN地址池配置是否正确。
确认是否配置了SSL VPN地址池,并且在SSL VPN访问实例或用户可授权的资源组下引用了该SSL VPN地址池,且SSL VPN地址池中不能包含SSL VPN网关地址。
SSL VPN地址池的配置及在SSL VPN访问实例和资源组中引用该SSL VPN地址池的配置举例如下:
[Device] sslvpn ip address-pool pool1 1.1.1.1 1.1.1.10
[Device] sslvpn context ctx
[Device-sslvpn-context-ctx] ip-tunnel address-pool pool1 mask 24
[Device-sslvpn-context-ctx] policy-group pg1
[Device-sslvpn-context-ctx1-policy-group-pg1] ip-tunnel address-pool pool1 mask 24
[Device-sslvpn-context-ctx1-policy-group-pg1] quit
[Device-sslvpn-context-ctx] quit
b. 检查地址池中是否有空闲的地址
通过查看设备的日志信息,判断是否存在日志:SSLVPN_IPAC_ALLOC_ADDR_FAIL:Reason: No address is available in the address pool.
若存在上述日志,则表示地址池中没有空闲的地址,需要等待一段时间再重新登录,或者通过如下命令重新配置地址池,增加地址池中的地址数量,并重新引用该地址池:
[Device] sslvpn ip address-pool pool1 1.1.1.1 1.1.1.100
[Device] sslvpn context ctx
[Device-sslvpn-context-ctx] ip-tunnel address-pool pool1 mask 24
[Device-sslvpn-context-ctx] policy-group pg1
[Device-sslvpn-context-ctx1-policy-group-pg1] ip-tunnel address-pool pool1 mask 24
[Device-sslvpn-context-ctx1-policy-group-pg1] quit
[Device-sslvpn-context-ctx] quit
c. 检查地址池中空闲的地址是否被其它用户绑定
通过查看设备的日志信息,判断是否存在日志:SSLVPN_IPAC_ALLOC_ADDR_FAIL:Reason: Available addresses in the address pool have been bound to other users.
若存在上述日志,则表示地址池中闲置的地址已被其它用户绑定,需要等待一段时间再重新登录,或者通过如下命令重新配置地址池,增加地址池中的地址数量,并重新引用该地址池:
[Device] sslvpn ip address-pool pool1 1.1.1.1 1.1.1.100
[Device] sslvpn context ctx
[Device-sslvpn-context-ctx] ip-tunnel address-pool pool1 mask 24
[Device-sslvpn-context-ctx] policy-group pg1
[Device-sslvpn-context-ctx1-policy-group-pg1] ip-tunnel address-pool pool1 mask 24
[Device-sslvpn-context-ctx1-policy-group-pg1] quit
[Device-sslvpn-context-ctx] quit
如果以上配置正确,故障仍不能排除,请执行步骤(3)。
(3) 检查SSL VPN用户配置是否正确。
针对不同的用户类型,检查用户配置,用户或用户组下配置的SSL VPN资源组名称(通过authorization-attribute命令配置)与SSL VPN访问实例下配置的SSL VPN资源组名称(通过policy-group命令配置)需要保持一致。
¡ 本地用户:通过执行display local-user命令查看本地用户配置信息,确保用户类型为网络接入类(本地用户名称前有Network access user字样),服务类型为SSL VPN(Service type字段取值为SSL VPN),且为SSL VPN用户配置资源组(SSL VPN policy group字段有取值)。
<Sysname> display local-user
Network access user sslvpn:
State: Active
Service type: SSL VPN
User group: system
Authorization attributes:
Work directory: flash:
User role list: network-operator
SSL VPN policy group: pg
...
¡ 远程用户:确保在设备上配置了本地用户组,且本地用户组的名称需要与远程认证服务器上用户隶属的用户组名称相同,例如,远程认证服务器上用户隶属的用户组名称和本地用户组名称同为sslvpn。同时,需要在本地用户组内引用了SSL VPN策略组,该策略组在SSL VPN policy group字段中显示。
<Sysname> display user-group all
Total 1 user groups matched.
User group: sslvpn
Authorization attributes:
Work directory: flash:/
SSL VPN policy group: policygroup1
¡ ...
用户或用户组下配置的SSL VPN资源组名称(通过authorization-attribute命令配置)与SSL VPN访问实例下配置的SSL VPN资源组名称(通过policy-group命令配置)需要保持一致
如果以上配置正确,故障仍不能排除,请执行步骤(4)。
(4) 检查是否正确安装了证书。
若开启了客户端和服务器端证书认证,需要确保客户端和服务器端已正确安装证书。
¡ 客户端证书认证:通过执行display ssl client-policy命令查看SSL客户端策略配置信息,检查SSL版本、引用的PKI域等配置是否正确。
<Sysname> display ssl client-policy policy1
SSL client policy: policy1
SSL version: SSL 3.0
PKI domain: client-domain
Preferred ciphersuite:
RSA_AES_128_CBC_SHA
Server-verify: enabled
...
¡ 服务器端证书认证:通过执行display ssl server-policy命令查看SSL服务端策略配置信息,检查SSL版本、引用的PKI域等配置是否正确。
<Sysname> display ssl server-policy policy1
SSL server policy: policy1
Version info:
SSL3.0: Disabled
TLS1.0: Enabled
TLS1.1: Disabled
TLS1.2: Enabled
TLS1.3: Enabled
GM-TLS1.1: Disabled
PKI domains: server-domain
¡ ...
如果以上配置正确,故障仍不能排除,请执行步骤(5)。
(5) 检查iNode客户端是否为最新版本。
通过访问官网,确认正在使用的iNode客户端是否为最新版本,如下图所示最上面的iNode客户端为最新版本:
图9 iNode客户端
若iNode客户端不是最新版本,请在官网下载最新版本的iNode客户端进行安装。
如果iNode客户端是最新版本,故障仍不能排除,请执行步骤(6)。
(6) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
SSLVPN_IPAC_ALLOC_ADDR_FAIL
SSLVPN_IPAC_ALLOC_ADDR_SUCCESS
通过iNode客户端登录SSL VPN网关后,无法访问内网服务器资源。
本类故障的常见原因包括:
· SSL VPN网关的上行链路不通。
· SSL VPN网关到内网资源的路由不正确。
· SSL VPN资源组下IP接入过滤规则配置不正确。
· 设备上没有配置SNAT地址池。
本类故障的诊断流程如图10所示。
(1) 检查SSL VPN网关的上行链路是否通畅。
以下情况会导致上行链路不通,请注意排除:
SSL VPN网关没有配置到达内网资源的路由,可通过查看设备路由表确认,具体排查方法如下:
a. 在Device上执行display ip routing-table命令,查看是否存在到达目的地的路由信息。
[Device] display ip routing-table
Destinations : 2 Routes : 2
Destination/Mask Proto Pre Cost NextHop Interface
0.0.0.0/32 Direct 0 0 127.0.0.1 InLoop0
20.2.2.0/24 Static 60 0 2.2.2.3 GE2/0/3
b. 如果不存在相关路由信息,请执行命令display current-configuration命令查看Device上是否有去往目的地的静态路由配置信息(此处以静态路由为例),执行display interface命令查看Device上去往目的地址的出接口(本例为GE2/0/3)的状态是否为Up。相关命令如下所示:
[Device] display current-configuration | include route-static
ip route-static 20.2.2.0 24 2.2.2.3
如果不存在以上静态路由,请执行如下命令进行补充。
[Device] ip route-static 20.2.2.0 24 2.2.2.3
执行如下命令如果显示的接口状态不为Up,请排查物理链路,确保物理接口指示灯亮起。
[Device] display interface gigabitethernet 2/0/3
GigabitEthernet2/0/3
Current state: UP
Line protocol state: UP
Description: GigabitEthernet2/0/3 Interface
...
内网服务器未配置回程路由导致链路不通,可在内网服务器上执行相关命令查看路由信息,确保配置了内网服务器到达SSL VPN网关的路由。
配置了策略路由导致链路不通。
c. 在Device上执行display ip policy-based-route setup命令,查看已经应用的策略路由信息,如下所示设备上应用了本地策略aaa。
[Device] display ip policy-based-route setup
Policy name Type Interface
aaa Local N/A
d. 在Device上执行display ip policy-based-route local命令,查看本地策略路由的配置信息和统计信息,本地策略aaa中引用了ACL规则3002。
[Device] display ip policy-based-route local
Policy based routing information for local:
Policy name: aaa
node 2 permit:
if-match acl 3002
apply next-hop 3.3.3.3
Matched: 0
e. 在Device上执行display acl命令,查看ACL规则3002中是否包含了SSL VPN网关上行行链路的流量,如果包含SSL VPN流量,需要修改ACL规则,避免SSL VPN上行链路不通。
[Device] display acl 3002
Advanced IPv4 ACL 3002, 1 rule,
ACL's step is 5
rule 1 permit ip source 1.1.1.0 0.0.0.255 destination 3.3.3.0 0.0.0.255
在HA组网中,若设备的运行为双主模式,需要将设备修改为主备模式,并将上行接口修改成冗余口,否则可能会导致SSL VPN网关上行链路不同。
如果以上配置正确,故障仍不能排除,请执行步骤(2)。
(2) 检查SSL VPN网关与内网服务器之间的路由是否正确。
确保SSL VPN网关可以Ping通内网资源,需要注意的是,在内网服务器上需要添加到达SSL VPN AC接口所在网段的路由。例如SSL VPN AC接口所在网段为10.1.1.0/24,则需要在内网服务器上配置指向10.1.1.0/24网段的路由。
如果路由配置正确,故障仍不能排除,请执行步骤(3)。
(3) 检查SSL VPN资源组下的IP接入过滤规则配置是否正确。
IP接入过滤规则配置方法如下,注意内网资源需要在引用ACL的permit规则范围内,否则SSL VPN用户,将无法访问内网资源:
¡ 通过高级ACL方式进行过滤。
filter ip-tunnel [ ipv6 ] acl advanced-acl-number
¡ 通过URI ACL方式进行过滤。
filter ip-tunnel uri-acl uri-acl-name
缺省情况下,SSL VPN网关允许SSL VPN客户端访问IP接入资源。
如果引用的ACL不存在,则SSL VPN网关拒绝所有IP接入方式的访问。
如果路由配置正确,故障仍不能排除,请执行步骤(4)。
(4) 检查设备上是否配置了SNAT地址池。
SNAT地址的配置方法如下:
# 配置SNAT地址池spool1的IPv4地址范围为1.1.1.1~1.1.1.100,IPv6地址范围为1234::100~1234::200。
[Sysname] sslvpn snat-pool spool1
[Sysname-sslvpn-snatpool-spool1] ip range 1.1.1.1 1.1.1.100
[Sysname-sslvpn-snatpool-spool1] ipv6 range 1234::100 1234::200
有关SNAT地址池的详细介绍,请参考SSL VPN配置手册。
如果以上配置正确,故障仍不能排除,请执行步骤(4)。
(5) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
SSLVPN_IP_RESOURCE_FAILED
部分iNode客户端,在长时间不访问内网资源的时,会出现iNode用户不老化下线的情况,从而占用设备的License资源。
本类故障的常见原因是未配置SSL VPN会话保持空闲状态的流量阈值。
本类故障的诊断流程如图11所示。
图11 iNode用户无法老化下线的故障处理流程图
(1) 检查是否配置了SSL VPN会话保持空闲状态的流量阈值。
iNode客户端会定时发送保活报文,无法老化下线。可通过配置SSL VPN会话保持空闲状态的流量阈值,对iNode客户端空闲用户进行老化下线。具体配置如下:
<Device> system-view
[Device] sslvpn context ctx1
[Device-sslvpn-context-ctx1] idle-cut traffic-threshold 1000
如果以上配置正确,故障仍不能排除,请执行步骤(2)。
(2) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
无
本地用户在local-user下配置ACL、绑定IP地址等功能不生效。
本类故障的常见原因是SSL VPN用户的部分管理配置,需要在SSL VPN访问实例下配置才能生效。
本类故障的诊断流程如图12所示。
图12 配置用户过滤、绑定IP地址等功能不生效的故障处理流程图
(1) 检查ACL、绑定IP地址等功能是否已在SSL VPN访问实例下配置。
SSL VPN用户的部分管理配置,需要在SSL VPN访问实例下配置,不能在local-user用户视图下配置。具体配置举例如下:
a. 配置策略组pg1通过IPv4 ACL 3000和IPv6 ACL 3500过滤IP接入方式访问。
<Device> system-view
[Device] sslvpn context ctx1
[Device-sslvpn-context-ctx1] policy-group pg1
[Device-sslvpn-context-ctx1-policy-group-pg1] filter ip-tunnel acl 3000
[Device-sslvpn-context-ctx1-policy-group-pg1] filter ip-tunnel ipv6 acl 3500
[Device-sslvpn-context-ctx1-policy-group-pg1] quit
b. 为用户user1绑定分配的IPv4地址为10.1.1.5,10.1.1.10~10.1.1.20和10.1.1.30。
[Device-sslvpn-context-ctx] user user1
[Device-sslvpn-context-ctx-user-user1] ip-tunnel bind address 10.1.1.5,10.1.1.10-10.1.1.20,10.1.1.30
如果以上配置正确,故障仍不能排除,请执行步骤(2)。
(2) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
无
用户曾经登录SSL VPN网关成功,后续再次登录时失败。
本类故障的常见原因是SSL VPN访问实例下配置了同一用户名登录限制个数。
本类故障的诊断流程如图13所示。
图13 用户曾经登录SSL VPN网关成功再次登录时失败的故障处理流程图
(1) 检查SSL VPN访问实例下是否配置了同一用户名登录限制个数。
a. 查看SSL VPN访问实例下是否配置了同一用户名登录限制个数,若已配置,可以删除max-onlines配置即不限制同一用户名的登录个数,或者增加同一用户名的登录限制个数,然后重新尝试登录。配置举例如下:
<Device> system-view
[Device] sslvpn context ctx
[Device-sslvpn-context-ctx] max-onlines 100
b. 可以通过开启达到最大在线数时的用户强制下线功能解决此问题。开启该功能后,将从该用户的在线连接中选择一个空闲时间最长的,强制其下线,新登录用户上线:
[Device-sslvpn-context-ctx] force-logout max-onlines enable
如果以上配置正确,故障仍不能排除,请执行步骤(2)。
(2) 如果故障仍然未能排除,请收集如下信息,并联系技术支持人员。
¡ 上述步骤的执行结果。
¡ 设备的配置文件、日志信息、告警信息。
无
SSLVPN_USER_LOGINFAILED
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!
