• Linux 下 SSH 远程超时解决方案


    Linux SSH 远程超时解决方案

    今天突然看到一个问题说是如何解决SSH远程超时的问题。

    找了一点资料。用于解决这个需求~

    第一种:OpenSSH 配置文件设置

    位于112行的 "ClientAliveInterval "以及位于113行的"ClientAliveCountMax"意义解释如下:

    • ClientAliveInterval:即The length of time Server Sent Client ,服务器发给客户端时间间隔。
    • ClientAliveCountMax:即Server Sent Client NOT REPLY,服务器发给客户端,客户端无响应。

    俩行,简单说就是:一个决定多久找你,一个决定找你次数。

    注意要重启SSH服务才能生效。如果上种你觉得不能理解或者不能体现水平。看下面这种~

    第二种: Shell 脚本编写实现永不超时

    首先,欣赏这行代码:

     

    1#!/usr/bin/expect

    告诉操作系统脚本里的代码使用那一个shell来执行

    2set timeout 60s

    使用了set命令设置了超时时间为60s

    3spawn ssh user@host

    首先spawnexpect内部命令。作用就是给ssh新进程创建新expect,用来传递交互指令也实现了让expect控制的用处!

    4interact

    交互命令,用来打开用户与产生进程之间通信的命令。

    5send

    用于expect 脚本正在监控的进程生成输入。send合并选项以发送给指定的产生的过程"-i",缓慢地发送"-s"(在串行通信中,为了不使缓冲区溢出)

    关于expect:

    export命令用于将shell变量输出为环境变量,或者将shell函数输出为环境变量,同时它也可以传递。说到底就是一个脚本语言,可以帮助系统管理员进行自动终端交互的好朋友.

    第三种:环境变量临时改变

    同样你也可以写入$HOME/.profile文件,永久生效!

    最后:

    你来想想,我们还有第四种吗?想想服务器要检测客户端还活着没,客户端能看些啥?

    试试“ping”吧,也许你还有第四种~

  • 相关阅读:
    Dynamic Shortest Path CodeForces
    New task CodeForces
    New Roads CodeForces
    Music in Car CodeForces
    互联网思维体系--史上最全的互联网思维精髓总结
    OpenGL Shader Key Points (3)
    Netfilter的使用和实现
    数据包接收系列 — IP协议处理流程(二)
    数据包接收系列 — IP协议处理流程(一)
    数据包接收系列 — NAPI的原理和实现
  • 原文地址:https://www.cnblogs.com/itxdm/p/checkssh.html
Copyright © 2020-2023  润新知