SSH经常服务器之后,只要几分钟不去操作服务器,几分钟就会断开,经常重启一个新的终端(iTerm:command+t)重新进行ssh连接。
这种影响操作的事情不能容忍,上网寻求帮助,自己做个记录。
ssh连接到,远程服务器,切换到root用户。
sshd_config
开放一下3个配置。1
2
3TCPKeepAlive yes
ClientAliveInterval 60
ClientAliveCountMax 10
- TCPKeepAlive:保持TCP长时间连接。
- ClientAliveInterval:每隔xxx秒发送向客户端发送一次包,检测是否活动状态的间隔时间。
- ClientAliveCountMax:发包请求次数,达到指定次数未收到回应,主动断开连接。
设置完上面之后,如果客户端无响应,最多存留10分钟。
重启sshd服务
Root用户操作。1
systemctl sshd restart
弊端
w查看当前服务器登录用户。
- ssh连接中会存在重复用户。
- ssh连接长时间不断开也不操作,影响服务器性能,浪费资源。
建议
- kill掉重复用户。
- 养成好习惯,不用的时候exit进行推出。
kill终端
w
列出当前登录用户信息,包含终端信息,第二列。1
2
3
4
5
6[mingliang.gao@VM-0-15-centos ~]$ w -s
23:18:23 up 10 days, 11:17, 3 users, load average: 0.00, 0.01, 0.05
USER TTY FROM IDLE WHAT
minglian pts/0 123.179.117.77 1:07m sshd: mingliang.gao [priv]
minglian pts/1 123.179.117.77 1:04m -bash
minglian pts/3 123.179.117.77 7.00s w -sps -t pts/1
查询终端进行进程ID。- kill 进程ID
或者直接一个命令:1
pkill -kill -t pts/1