我们的鳄梨色拉酱服务器(v1.4.0)死了,所以我们恢复了什么文件,我们可以和设置一个新的服务器:
Ubuntu 22.04
鳄梨色拉酱1.5.0
雄猫9.0.73
通过Nginx代理
开放日2023年18月11日2023年1月17日
我们使用LDAP和TOTP身份验证。
获得新的服务器设置后,我们的用户可以登录和连接,但我们看到WebSocket错误每分钟,用户给出红色横幅消息:The remote desktop server encountered an error and has closed the connection. Please try again or contact your system administrator.
检查我在 Catalina 中看到的Tomcat日志。每次都输出以下内容:
Exception in thread "Thread-4" java.lang.IllegalStateException: Message will not be sent because the WebSocket session has been closed
at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.writeMessagePart(WsRemoteEndpointImplBase.java:442)
at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:314)
at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:254)
at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendString(WsRemoteEndpointImplBase.java:195)
at org.apache.tomcat.websocket.WsRemoteEndpointBasic.sendText(WsRemoteEndpointBasic.java:37)
at org.apache.guacamole.websocket.GuacamoleWebSocketTunnelEndpoint.sendInstruction(GuacamoleWebSocketTunnelEndpoint.java:152)
at org.apache.guacamole.websocket.GuacamoleWebSocketTunnelEndpoint.access$200(GuacamoleWebSocketTunnelEndpoint.java:53)
at org.apache.guacamole.websocket.GuacamoleWebSocketTunnelEndpoint$2.run(GuacamoleWebSocketTunnelEndpoint.java:253)
我们没有对RDP或VNC服务器或网络防火墙做任何更改,所以我怀疑是新Guacamole安装的配置有问题。我已经确保服务器构建了所需的所有模块(包括libwebsockets),并尝试了几个不同的Tomcat服务器版本,看看是否有一些bug。
在这一点上,我的想法和没有看到太多的其他尝试从搜索引擎,并会非常感谢任何指导,还有什么要检查。
**编辑:**自从发布后,我还尝试了:
- 禁用ipv6
- 升级到openjdk 19
- Tomcat版本9.0.71和9.0.21(我们之前使用的版本)
- 鳄梨色拉酱1.4.0(安装失败,不推荐代码)
- 添加guacd.conf,主机绑定到127.0.0.1(以前我们不需要此功能)
错误仍然存在
1条答案
按热度按时间amrnrhlw1#
问题最终与防火墙相关
简单地允许鳄梨色拉酱通过防火墙并不能保持WebSocket连接,但是使用NAT来转换数据包确实有效