如何使用最新Java 8的Lantronix Spider KVM

我有一台Lantronix Spider KVM(键盘 – video – 鼠标)通过VGA和USB远程控制机器。

它在过去运行良好,但最近我得到RFB: Unable to connectJava Web Start应用程序的状态栏中,我可以查看显示。

我在Ubuntu 16.04上使用Spider固件v3.0.22和Java 8。 我尝试了openjdk和专有的Oracle Java发行版,但结果是一样的。

我怎样才能debugging和解决这个问题?

启用Java控制台来debugging输出

通常,最好显示Javadebugging控制台,以便您可以看到所有错误消息。 你可以这样做:

  • 运行javaws打开设置菜单,选项卡Advanced ,在Java ConsoleselectShow console

Java安全设置

问题是在更新版本的Java中增加了安全限制。

Spider默认使用自签名证书。

您需要放松安全设置,以便分两步进行(如此处和其他一些地方所述,但我将详细介绍Linux):

  1. 在GUI设置中:

    • 运行javaws打开设置菜单。
    • 选项卡Security
    • 在“ exception站点列表 ”一节中单击“ Edit Site List
    • 添加查看器应连接到的HTTPS位置或IP和端口。

      在我的情况下,这是https://example.com:5555 (因为我端口转发端口5555通过我的NAT到蜘蛛的查看器端口443)。

  2. 在系统范围的Java设置中:

    • 编辑$JAVA_HOME/security/java.policy (通常取决于你的安装/etc/java-8-openjdk/security/java.policy/etc/java-8-oracle/security/java.policy )和
    • grant {部分(在// default permissions granted to all domains下,添加行:

      permission java.net.SocketPermission "example.com:5555", "connect, resolve";

编辑spider.jnlp文件以支持端口转发

Spider UI中有一个名为Remote Console & HTTPS port (默认为443)的设置,用于确定javaws查看器连接到Spider的端口。

请注意,此端口与您访问Spider Web UI的端口无关!

如果你的蜘蛛是在一个带有端口转发的NAT后面,例如5555 -> 443 ,你需要把设置改成5555 (如果你想要继续使用443,你可能不想要这个),或者更换spider.jnlp文件,Web UI提供您下载。

spider.jnlp你需要改变:

 ... <argument>-PORT</argument> <argument>443</argument> <argument>-SSLPORT</argument> <argument>443</argument> ... 

 ... <argument>-PORT</argument> <argument>5555</argument> <argument>-SSLPORT</argument> <argument>5555</argument> ... 

(您可以通过在文件中search443来轻松find它。)

特定错误消息的疑难解答

我在控制台遇到了错误信息:

  • Read timed out

    我试图通过HTTP连接Java Web Start应用程序,但是当SpiderconfigurationUI同时支持HTTP和HTTPS时,Java Web Start应用程序仅支持HTTPS。 (从这里得到了想法(用德语)。)

  • 在单击Optionsbutton时at sun.awt.X11.XPopupMenuPeer.getCaptionSize(XPopupMenuPeer.java:251) Java NullPointerException

    我还没有想出如何处理这个,任何帮助将不胜感激。

更多的提示

定义键盘快捷键

选项button不起作用(参见上面的问题)意味着您不能访问虚拟键盘或input键盘快捷键。 作为一种解决方法,您可以在“ Interfaces -> KVM Console Settings选项卡中添加来自Web UI的键盘快捷键,例如:

  • confirm Alt+PRINTSCREEN+B为SysRq到Linux内核重新启动机器

热键实际上不是蜘蛛的设置,而是javaws应用程序的设置; networking用户界面只是相应地生成.jnlp文件。 这意味着如果您知道键码,您也可以直接在JNLP文件中添加键盘快捷键。

例如,上面的快捷方式会在.jnlp文件(默认的Ctrl+Alt+Deletebutton旁边)中生成:

 <argument>-HOTKEY_0</argument><argument>confirm Ctrl+Alt+Delete</argument> <argument>-HOTKEYCODE_0</argument><argument>36 f0 37 f0 4e </argument> <argument>-HOTKEYNAME_0</argument><argument>confirm Ctrl+Alt+Delete</argument> <argument>-HOTKEY_1</argument><argument>confirm Alt+PRINTSCREEN+B</argument> <argument>-HOTKEYCODE_1</argument><argument>37 f0 48 f0 2f </argument> <argument>-HOTKEYNAME_1</argument><argument>confirm Alt+PRINTSCREEN+B</argument>