0

我有鳄梨酱 0.9.12-孵化。我有三个容器的香草部署:guacamole、guacd 和 mysql。我没有看到 api 会话超时设置有效,默认为 60 或自定义 5 分钟。

我打开了与远程 RDP windows 设备的会话。在 Chrome 标签页中没有触摸它一个多小时,它仍然没有超时。(也在 Safari 上试过这个)。一个小时后,远程桌面仍然有响应。连接历史显示会话持续时间为 1.2 小时。

设置会话后,我在访问日志中看不到任何标准 HTTP 流量。这是最后的日志行:

x.x.x.x  - - [25/Aug/2017:16:35:04 +0000] "GET /guacamole/websocket-tunnel?token=692868B05C74ED1E81A513CD70255BD557CB65875835C9500BA197822F2B9128&GUAC_DATA_SOURCE=mysql&GUAC_ID=4&GUAC_TYPE=c&GUAC_WIDTH=1414&GUAC_HEIGHT=825&GUAC_DPI=96&GUAC_AUDIO=audio%2FL8&GUAC_AUDIO=audio%2FL16&GUAC_IMAGE=image%2Fjpeg&GUAC_IMAGE=image%2Fpng&GUAC_IMAGE=image%2Fwebp HTTP/1.1" 101 -
x.x.x.x - - [25/Aug/2017:16:35:04 +0000] "GET /guacamole/api/session/tunnels/8e3fc8f7-6c8e-4088-bd8b-cbf5ad2d7a99/activeConnection/connection/sharingProfiles?token=692868B05C74ED1E81A513CD70255BD557CB65875835C9500BA197822F2B9128 HTTP/1.1" 200 12

因此,即使没有鼠标或键盘活动,浏览器客户端显然也会保持对服务器(鳄梨酱客户端)的 websocket 开放?

我希望在五分钟内没有鼠标活动来关闭 guacamole 客户端会话(网络应用程序会话),以便它释放目标 Windows 设备。

我在 guacamole.properties 中将 api-session-timeout 设置为 5:

# guacamole.properties - generated Fri Aug 25 16:12:11 UTC 2017
guacd-hostname: 172.17.0.3
guacd-port: 4822
...
api-session-timeout: 5

我在启动时看到这条日志行:

16:12:16.414 [localhost-startStop-1] INFO  o.a.g.rest.auth.HashTokenSessionMap - Sessions will expire after 5 minutes of inactivity.

这个 api-session-timeout 设置应该做什么?

4

1 回答 1

1

我希望五分钟内没有鼠标活动来关闭 guacamole 客户端会话(网络应用程序会话),以便它释放目标 Windows 设备。

Guacamole Web 应用程序将打开的远程桌面连接视为用户活动,无论用户移动鼠标的频率如何。该api-session-timeout设置只会影响没有任何打开连接的会话。

如果您希望远程桌面连接在用户不移动鼠标等情况下自动关闭,则需要在远程桌面服务器上查找此类设置。对于 RDP,这可以通过“空闲会话限制”组策略设置进行管理:

空闲会话限制

指定活动的远程桌面服务会话在会话自动断开或结束之前可以空闲(无需用户输入)的最长时间。

用户在会话断开或结束前两分钟收到警告,允许用户按下键或移动鼠标以保持会话处于活动状态。

于 2017-08-27T00:22:26.913 回答