通过ssh2、sftp协议连接基于Apache MINA SSHD的服务时,长时间不用连接会自动断开,我们来看一下默认断开时间和如何修改断开时间。
超时报错日志
Disconnecting(ServerSessionImpl[{username}@/{ip}:{port}]): SSH2_DISCONNECT_PROTOCOL_ERROR - Detected IdleTimeout after 600028/600000 ms
依赖版本
<dependency>
<groupId>org.apache.sshd</groupId>
<artifactId>sshd-core</artifactId>
<version>2.8.0</version>
</dependency>
代码
org.apache.sshd.core.CoreModuleProperties的IDLE_TIMEOUT
/**
* Key used to retrieve the value of the timeout after which it will close the connection if the other side has not
* been authenticated - in milliseconds.
*/
public static final Property<Duration> AUTH_TIMEOUT
= Property.duration("auth-timeout", Duration.ofMinutes(2));
/**
* Key used to retrieve the value of idle timeout after which it will close the connection - in milliseconds.
*/
public static final Property<Duration> IDLE_TIMEOUT
= Property.duration("idle-timeout", Duration.ofMinutes(10));
调整方式
没有提供外部配置,可以通过将此类复制到项目代码中修改时间,启动时会先加载自定义的此类。
也可以提供其他影响类加载的方式修改此变量。
结论
追踪代码的流程不说了,登录验证超时时间2分钟,连接空闲后断开的默认超时时间10分钟
原文地址:https://blog.csdn.net/weixin_43859729/article/details/129166942
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_38360.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。