一、什么是会话守护
在行云管家中打开的会话,其生命周期是在云端进行维护的,而在浏览器中显示的窗口仅仅是会话的展示界面。因此,我们可以在云端对会话进行守护,从而对会话的生命周期进行管理, 这样,即便您中途离开甚至关闭浏览器或者由于网络环境较差导致连接断开,该会话依然可以在云端持续运行。会话守护默认是关闭的,若您希望打开此功能,请按以下方式开启。
二、如何设置会话守护
用户除了可以每次进入会话后临时设置会话守护,也可以设置用户自身的全局会话守护;
2.1、会话临时守护
访问会话后,我们可以在会话右边栏的“会话详情”里,看到会话守护,此时默认是关闭的,您可以通过设置为ON来开启并设置会话守护的时长,如图;
此时设置的会话守护将在会话结束后失效,每次开启会话都需要手动设置该会话的会话守护;
2.2、全局会话守护
通过远程会话来临时设置会话守护,有时并不方便,此时,可以设置全局会话守护(只对当前用户有效),点击用户头像下的系统设置;
在系统设置里,会话守护默认为关闭,您可以根据需要来开启并设置守护的时长;
2.3、会话守护最大时长默认值
私有部署管理控制台超级管理员可以设置对全团队生效的会话守护最大时长的默认值,需要注意的是当会话剩余时长小于默认值时,则会话守护时间为会话剩余结束时间;默认值范围:30~20000;
三、SSH-TCP保活
使用SSH协议访问会话时,为了避免某些路由器、防火墙、交换机等网络设备对空闲会话进行超时处理,我们可以修改TCP保活(参数保持会话连接状态)设置,默认TCP保活是使用keepalive指令方式。
3.1、会话守护和TCP保活的区别
(1)会话守护的实现原理:堡垒机在用户未有任何操作的前提下,通过TCP保活会每十秒向服务器发送一个keepalive指令来保持和服务器的会话。简单点说就是TCP保活是会话守护的实现方式。
(2)TCP保活的实现目的:有些设备(例如路由器、交换机、防火墙等)可能会出现不认keepalive的情况,所以行云管家把这个TCP保活的实现方式当成一个配置项,它是会话守护的实现方式,当您设置了30分钟守护时,如果未做任何操作,会话会自动断开。有些特殊设备不认行云管家默认的keepalive保活策略,所以需要用户自行修改TCP保活设置来实现会话守护。
3.2、会话守护和TCP保活使用建议
(1)正常SSH访问Linux等服务器,无需修改TCP保活设置(使用默认keepalive即可),请直接设置会话守护功能即可;
(2)通过SSH访问某些特殊路由器、防火墙、交换机等网络设备,在使用默认TCP保活设置的情况下会话守护无法生效,那么就可以对此设备设置一个合适的TCP保活设置命令,然后会话守护将通过这个新指令来生效;
3.3、TCP保活默认设置修改
登录“管理控制台”的“系统设置”页面,找到“系统参数”后点击“配置”,找到“TCP保活设置”既可以设置TCP保活的默认选项(如无特别情况,不建议修改);
四、SSH会话守护注意事项
在行云管家开启会话守护后,在会话守护期间,行云管家中转服务器会相对较高频率的对目标SSH主机发送请求以保障会话闲置时不会断开,此时以行云管家WEB方式打开目标主机会话,是正常不会断开的;
但如果是以行云管家本地工具或跳板机方式打开目标SSH主机会话,如图,则还可能受用户本地工具客户端的影响,一般本地工具客户端有自己的“反空闲”等设置,所以如果本地工具客户端提示断开了,请对该本地工具客户端进行相关设置(具体请参考度娘设置),或者使用行云管家WEB方式打开目标SSH主机会话;
4.1、SecureCRT反空闲设置
如果您的SecureCRT工具在一段时间没有接收到输入以后,就会自动断开连接。那么就可以设置SecureCRT的反空闲,让SecureCRT定期发送一个反空闲信号,或者最直白的,发送一个自定义键给系统。一般情况下,此自定义键我们可以采用空格键。同时我们可以设定一个时间,例如60秒。
配置方法如图,点击“选项”->“全局选项”->“常规”->“默认会话”->“编辑默认设置”->“终端”->“Anti-idle”,在这里我们可以设定每隔60秒SecureCRT会给会话发送一个空格键,防止此会话被远端设备断开。
4.2、Putty反空闲设置
一般来说Putty连续3分钟左右没有输入, 就自动断开, 然后必须重新登陆。
在Putty的配置里,如图点击“Connection”,然后在Seconds between keepalives这里设置数值,例如设置为60,那Putty每隔60秒就给服务器发送一个空数据包,以此来保障不会断开。
五、如何设置团队的会话时长(仅限私有部署)
在远程会话时,我们可以在会话右边栏的“会话详情”里,看到会话时长,在会话时长的最大时长过后,该会话会自动结束;
团队管理员可以在私有部署的行云管家管理控制台里进行团队会话时长的设置,如图,点击“团队管理”-“团队详情-“配额管理”,在这里可以设置“最大会话时长”;