本文档介绍如何对Cisco AnyConnect安全移动客户端、思科安全桌面(CSD)/思科Hostscan和无客户端SSL VPN (WebVPN)上的Java 7问题进行故障排除。
运行Java验证器以检查使用的浏览器是否支持Java。如果正确启用了Java,请查看Java控制台日志以分析问题。
此过程介绍如何在Windows中启用控制台日志:
以下过程介绍如何在Mac上启用控制台日志:
对于AnyConnect相关问题,请收集诊断AnyConnect报告(DART)日志以及Java控制台日志。
已知问题思科漏洞ID CSCuc55720(“在ASA上启用3.1.1软件包时,IE与Java 7一起崩溃”),其中执行WebLaunch并在头端启用AnyConnect 3.1时Internet Explorer崩溃。此Bug已修复。
当您将AnyConnect和Java 7的某些版本用于Java应用时,可能会遇到问题。有关详细信息,请参阅思科漏洞ID CSCue48916:“使用AnyConnect 3.1.00495或3.1.02026 & Java v7时Java应用中断”。
如果在将Java Runtime Environment (JRE)升级到Java 7后仍无法连接AnyConnect,或者Java应用程序无法通过VPN隧道进行连接,请查看Java控制台日志并查找以下消息:
java.net.SocketException: Permission denied: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
这些日志条目指示客户端/应用进行IPv6呼叫。
此问题的一个解决方案是在以太网适配器和AnyConnect虚拟适配器(VA)上禁用IPv6(如果未使用):
第二个解决方案是将Java配置为首选IPv4而不是IPv6。将系统属性“java.net.preferIPv4Stack”设置为“true”,如以下示例所示:
System.setProperty("java.net.preferIPv4Stack" , "true");
-Djava.net.preferIPv4Stack=true
-Djava.net.preferIPv4Stack=true
有关其他信息,请参阅:
第三个解决方案是在Windows计算机上完全禁用IPv6;编辑此注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6\Parameters
有关详细信息,请参阅如何在Windows中禁用IP版本6或其特定组件。
Cisco JavaScript代码以前将Sun作为Java供应商的值。但是,Oracle按照JDK7: Java供应商属性更改中的说明更改了此值。此问题已由思科漏洞ID CSCub46241“AnyConnect weblaunch fails from Internet Explorer with Java 7”修复。
未报告任何问题。使用AnyConnect 3.1(使用WebLaunch/Safari/Mac 10.7.4/Java 7.10配置)进行的测试未显示任何错误。
“Java App(s)Break when using AnyConnect 3.1.00495 or 3.1.02026 & Java v7”是思科漏洞ID CSCue48916已归档。初步调查表明,这些问题不是客户端上的Bug,而可能与Java虚拟机(VM)配置相关。
以前,为了在AnyConnect 3.1(2026)客户端上使用Java 7应用,您未选中IPv6虚拟适配器设置。但是,现在必须完成此过程的所有步骤:
setx _JAVA_OPTIONS -Djava.net.preferIPv4Stack=true
对于CSD/Hostscan相关问题,请收集DART日志和Java控制台日志。
要获取DART日志,必须将CSD日志记录级别设置为ASA上的调试:
HostScan容易出现与之前在Windows中对AnyConnect描述的类似的崩溃(思科漏洞ID CSCuc55720)。Cisco Bug ID CSCuc48299“IE with Java 7 crash on HostScan Weblaunch”解决了HostScan问题。
在CSD 3.5.x中,所有WebVPN连接都失败;这包括AnyConnect Web启动。Java控制台日志未显示任何问题:
Java Plug-in 10.10.2.12
Using JRE version 1.7.0_10-ea-b12 Java HotSpot(TM) 64-Bit Server VM
User home directory = /Users/rtpvpn
----------------------------------------------------
c: clear console window
f: finalize objects on finalization queue
g: garbage collect
h: display this help message
l: dump classloader list
m: print memory usage
o: trigger logging
q: hide console
r: reload policy configuration
s: dump system and deployment properties
t: dump thread list
v: dump thread stack
x: clear classloader cache
0-5: set trace level to <n>
----------------------------------------------------
如果降级到JRE 6或将CSD升级到3.6.6020或更高版本,则Java控制台日志会显示以下问题:
Java Plug-in 10.10.2.12
Using JRE version 1.7.0_10-ea-b12 Java HotSpot(TM) 64-Bit Server VM
User home directory = /Users/rtpvpn
----------------------------------------------------
c: clear console window
f: finalize objects on finalization queue
g: garbage collect
h: display this help message
l: dump classloader list
m: print memory usage
o: trigger logging
q: hide console
r: reload policy configuration
s: dump system and deployment properties
t: dump thread list
v: dump thread stack
x: clear classloader cache
0-5: set trace level to <n>
----------------------------------------------------
CacheEntry[ https://rtpvpnoutbound6.cisco.com/CACHE/sdesktop/install/binaries/
instjava.jar ]: updateAvailable=false,lastModified=Wed Dec 31 19:00:00 EST
1969,length=105313
Fri Oct 19 18:12:20 EDT 2012 Downloaded
https://rtpvpnoutbound6.cisco.com/CACHE/sdesktop/hostscan/darwin_i386/cstub
to /var/folders/zq/w7l9gxks7512fsl4vk07v9nc0000gn/T/848638312.tmp/cstub
Fri Oct 19 18:12:20 EDT 2012 file signature verification
PASS: /var/folders/zq/w7l9gxks7512fsl4vk07v9nc0000gn/T/848638312.tmp/cstub
Fri Oct 19 18:12:20 EDT 2012 Spawned CSD stub.
解决方法是升级CSD或降级Java。由于Cisco建议您运行最新版本的CSD,您应升级CSD,而不是降级Java,特别是因为Mac上的Java降级可能很困难。
Chrome和Safari出现问题属于预期行为:
如果已安装Java 7,则解决方法为:
如果您使用的是Mac 10.9并已启用Java插件(如Chrome和Safari在Mac 10.8上与WebLaunch有关的问题部分所述),WebLaunch可能会继续失败。所有Java小程序都会启动,但浏览器会继续旋转。如果已按照一般故障排除部分中所述启用Java日志,则日志会快速填充,如下所示:
at java.lang.Thread.run(Thread.java:744)
Mon Dec 16 16:00:17 EST 2013 Failed to download cstub
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
network: Created version ID: 1.7.0.45
在日志的前面部分查找此类型的条目:
Mon Dec 16 16:00:17 EST 2013 Downloaded https://rave.na.sage.com/CACHE/
sdesktop/hostscan/darwin_i386/manifest java.io.FileNotFoundException:
/Users/user1/.cisco/hostscan/bin/cstub (Operation not permitted) at
java.io.FileInputStream.open(Native Method)
这表示您遇到了思科漏洞ID CSCuj02425:“如果禁用了Java不安全模式,则OSX 10.9上的WebLaunch将失败。” 要解决此问题,请修改Java首选项,以便Java可以在不安全模式下运行Safari:
对于与Java相关的WebVPN问题,请收集以下数据以进行故障排除:
Reading Signers from 8412在本示例中,6a0665e9-1f510559.idx是mffta.jar 7的缓存版本。如果您无权访问这些文件,则可以在使用直接连接时从Java缓存中收集它们。
https://rtpvpnoutbound6.cisco.com/+CSCO+00756767633A2F2F7A2D73767972662E6
E7067727A76687A2E6179++/mffta.jar
C:\Users\wvoosteren\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\41\
6a0665e9-1f510559.idx
测试设置可以加快问题解决。
最近宣布的针对Java 7更新51(2014年1月)的更改已确定,默认安全滑块需要代码签名和“权限清单”属性。总之,所有Java小程序都需要:
如果应用程序使用通过Web浏览器启动的Java,则会受到影响。应用程序可以从Web浏览器以外的任何位置运行。这对WevVPN意味着思科分发的所有客户端插件都可能受到影响。由于这些插件不由思科维护或支持,思科无法更改代码签名证书或小程序以确保其符合这些限制。正确的解决方案是使用ASA上的临时代码签名证书。 ASA提供临时代码签名证书以签署Java小程序(适用于Java重写程序和插件)。临时证书允许Java小程序执行预期功能,而不会显示警告消息。ASA管理员应在临时证书过期之前将其替换为受信任证书颁发机构(CA)颁发的自己的代码签名证书。如果这不是可行的选项,则解决方法是完成以下步骤:
据报告,启动Java applet的应用程序在升级到Java 7后会对WebVPN进行故障切换。此问题是由于Java重写工具缺乏安全哈希算法(SHA)-256支持造成的。已针对此问题提交了思科漏洞ID CSCud54080“SHA-256 support for webvpn Java rewriter”。
使用JRE7时,通过门户使用智能隧道启动Java applet的应用程序可能会失败;这在64位系统中最常见。在捕获中,请注意Java VM以明文形式发送数据包,而不是通过智能隧道连接发送到ASA。思科漏洞ID CSCue17876 “Some java applet will not connect via smart tunnel on windows with jre1.7”解决了此问题。
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
17-Dec-2013 |
初始版本 |