配置SSH服务远程连接空闲超时退出时间(包括SSH无法登录、登录缓慢)

简介: 配置SSH服务远程连接空闲超时退出时间(包括SSH无法登录、登录缓慢)

建议方案


设置SSH空闲超时退出时间,可降低未授权用户访问其他用户ssh会话的风险


加固建议


编辑/etc/ssh/sshd_config配置文件,将ClientAliveInterval设置为300到900,即5-15分钟,将ClientAliveCountMax设置为0。


方法1:


1.修改server端的/etc/ssh/sshd_config配置文件


ClientAliveInterval 60   :server每隔60秒发送一次请求给client,然后client响应,从而保持连接。


ClientAliveCountMax 3  :server发出请求后,客户端没有响应的次数达到3次,就自动断开连接,正常情况下,client不会不响应。

[root@Jenkins ~]# vim /etc/ssh/sshd_config
......
112 ClientAliveInterval 60
113 ClientAliveCountMax 3
......

2.修改client端的/etc/ssh/ssh_config添加以下:(在没有权限修改server端的SSH配置的情况下)

ServerAliveInterval 60     :client每隔60秒发送一次请求给server,然后server响应,从而保持连接。


ServerAliveCountMax 3  :client发出请求后,服务器端没有响应的次数达到3次,就自动断开连接,正常情况下,server不会不响应。

[root@Nginx ~]# vim /etc/ssh/sshd_config
......
112 ClientAliveInterval 60
113 ClientAliveCountMax 3
......

3.重启sshd服务

systemctl restart sshd

方法2:


不修改配置文件,直接在SSH远程连接时命令加参数,即ssh -o ServerAliveinterval=60 root@'远程连接IP地址',这样就只会在当前需要的远程连接中保持持久的连接, 并不是所有的远程连接都需要保持持久连接的!

[root@Jenkins ~]# ssh -o ServerAliveinterval=60 root@192.168.1.33
Last login: Wed May 18 14:53:19 2022 from 192.168.1.30
[root@Web1 ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.33  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 240e:39a:39b:cd10:20c:29ff:fec1:8e32  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::20c:29ff:fec1:8e32  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:c1:8e:32  txqueuelen 1000  (Ethernet)
        RX packets 756  bytes 66547 (64.9 KiB)
        RX errors 0  dropped 112  overruns 0  frame 0
        TX packets 549  bytes 52204 (50.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0## 解决SSH登陆缓慢问题

解决SSH登陆缓慢问题


 1.编辑/etc/ssh/sshd_config配置文件,将UseDNS修改为no,最好是在尾部添加一行为:UseDNS no


2.关闭GSSAPI认证:GSSAPIAuthentication no,修改完成后记得重启ssh服务。

[root@Jenkins ~]# vim /etc/ssh/sshd_config
...
79 GSSAPIAuthentication yes
...
115 #UseDNS yes
...

解决SSH无法登陆问题


 一般情况下当ssh服务远程连接不上时,后台登陆服务器,先确认服务器网络有无问题,查一下ssh服务有没有正常运行,防火墙是否放行了ssh端口,检查sshd_config文件配置(注意端口号、是否有地址绑定、是否允许root登陆等);如果都没问题,再检查下/etc/hosts.deny 和 /etc/hosts.allow两个配置文件是否有限制登陆。


/etc/hosts.allow/etc/hosts.deny两个配置文件:


有时候服务器上会用这两个文件限制登陆的IP,通常是在/etc/hosts.deny文件中里面先deny all,然后在/etc/hosts.allow文件中添加需要登陆的IP地址;例如:


先禁止所有:

[root@Jenkins ~]# cat /etc/hosts.deny
sshd: ALL : deny

再放行允许连接访问的IP地址:

[root@Jenkins ~]# cat  /etc/hosts.allow
sshd:10.10.10.* : allow      允许10.10.10.0/24网段登陆
sshd: 192.168.1.30 : allow   允许192.168.1.30这个ip登陆


相关文章
|
3月前
|
Linux 网络安全 Docker
盘古栈云,创建带ssh服务的linux容器
创建带ssh服务的linux容器
336 146
|
4月前
|
网络安全 开发工具 git
配置本地环境以管理Git多账户SSH连接的方法
通过以上步駟设置后, 您可以轻松管理多個 Git 账户并且根据不同项目需求切换 SSH 密匙进行版本控制操作。
368 20
|
4月前
|
Ubuntu 网络安全 数据安全/隐私保护
搭建SSH服务于RK3399平台上的Ubuntu 18.04,实现远程连接
以上步骤涵盖从安 装 到配制再至实际使 用户建立Ssh 连接所需知识点 。务必注意,在对外提供Ssh 访问
220 2
|
7月前
|
应用服务中间件 网络安全 数据安全/隐私保护
网关服务器配置指南:实现自动DHCP地址分配、HTTP服务和SSH无密码登录。
哇哈哈,道具都准备好了,咱们的魔术秀就要开始了。现在,你的网关服务器已经魔法满满,自动分配IP,提供网页服务,SSH登录如入无人之境。而整个世界,只会知道效果,不会知道是你在幕后操控一切。这就是真正的数字世界魔法师,随手拈来,手到擒来。
391 14
|
6月前
|
网络安全 开发工具 git
GitHub 多账户 SSH 配置指南
本文介绍了如何在同一台电脑上配置多个 GitHub 账户的 SSH 密钥。内容包括:检查现有密钥、生成新的 SSH 密钥、配置 SSH config 文件、将公钥添加到 GitHub、验证 SSH 连接、设置 Git 用户信息、创建工作区目录、使用不同账户克隆仓库,以及为每个仓库配置独立的用户信息等步骤。通过这些操作,可以实现在不同项目中使用不同的 GitHub 账户进行提交和管理。
499 0
|
9月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
414 10
|
6月前
|
监控 Linux 网络安全
FinalShell SSH工具下载,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux
FinalShell是一款国人开发的多平台SSH客户端工具,支持Windows、Mac OS X和Linux系统。它提供一体化服务器管理功能,支持shell和sftp同屏显示,命令自动提示,操作便捷。软件还具备加速功能,提升访问服务器速度,适合普通用户和专业人士使用。
2381 0
|
安全 Linux Shell
Linux中SSH命令介绍
Linux中SSH命令介绍
647 2
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。