用ssh连其他linux机器,会等待10-30秒才有提示输入密码。严重影响工作效率。登录很慢,登录上去后速度正常,这种情况主要有两种可能的原因:
1. DNS反向解析的问题
OpenSSH在用户登录的时候会验证IP,它根据用户的IP使用反向DNS找到主机名,再使用DNS找到IP地址,最后匹配一下登录的IP是否合法。如果客户机的IP没有域名,或者DNS服务器很慢或不通,那么登录就会很花时间。
解决办法:
在目标服务器上修改sshd服务器端配置,并重启sshd
vi /etc/ssh/sshd_config,设置UseDNS为no即可
当然也可以通过提供DNS正确反向解析的方法解决,有如下两种思路
(1) 在server上/etc/hosts文件中把常用的ip和hostname加入,然后在/etc/nsswitch.conf看看程序是否先查询hosts文件(一般缺省是这样)。
修改server上的hosts文件,将目标机器的IP和域名加上去。或者让本机的DNS 服务器能解析目标地址。
vi /etc/hosts
192.168.12.16 ourdev
其格式是“目标机器IP 目标机器名称”这种方法促效。没有延迟就连上了。不过如果给每台都加一个域名解析,挺辛苦的。但在windows下用putty或secure-crt时可以采用这种方法。
(2)起一台dns服务器(可以是本机),加入反向解析,把这个dns服务器加入到/etc/resolv.conf中。
2. 关闭ssh的gssapi认证
用ssh -v user@server 可以看到登录时有如下信息:
debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure. Minor code may provide more information
注:ssh -vvv user@server 可以看到更细的debug信息
解决办法:
在客户端上修改ssh客户端配置(注意不是sshd_conf)
vi /etc/ssh/ssh_config,设置GSSAPIAuthentication no 并重启sshd
可以使用
ssh -A -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no -p 32200 username@server_ip
GSSAPI ( Generic Security Services Application Programming Interface) 是一套类似Kerberos 5 的通用网络安全系统接口。该接口是对各种不同的客户端服务器安全机制的封装,以消除安全接口的不同,降低编程难度。但该接口在目标机器无域名解析时会有问题
使用strace查看后发现,ssh在验证完key之后,进行authentication gssapi-with-mic,此时先去连接DNS服务器,在这之后会进行其他操作。
分享到:
相关推荐
ssh连接慢解决办法(成功) 用真机连接虚拟机卡的话: 1.进入虚拟机vim /etc/ssh/sshd_config 2.将 #UseDNS yes改为UseDNS no即可如下: 使用/UseDNS找到地方然后添加 #UseDNS yes UseDNS no #PidFile /var/run/sshd....
主要介绍了ssh 登录很慢该如何解决的相关资料,这里提供了两种方法,DNS反向解析及关闭ssh的gssapi认证的解决办法,需要的朋友可以参考下
要解决 Ubuntu SSH 连接其他机器很慢的问题,只需要修改 SSH 配置文件中的一个参数即可实现秒连。具体步骤如下: 1. 打开 SSH 配置文件:在 Ubuntu 系统中,SSH 配置文件位于 `/etc/ssh/ssh_config`。可以使用文本...
Ubuntu SSH 连接其他机器很慢的解决办法 在 Ubuntu 系统中,SSH 连接其他机器可能会出现非常慢的现象,这严重影响了我们的工作或者游戏体验。到底是什么原因导致了这种情况的发生?如何解决这个问题?本文将详细...
最近几天通过SSH登录局域网内的一台机器时,在输入用户名后,得等10多秒后才会有响应回来,很慢, 但PING的时候TTL时间很快,那机器负载也蛮小的。这个小问题存在了几天,一直没顾上解决,今天在网上查了些资料,...
对于初学者,这是一个很好的学习资源,通过实际操作可以加深对SSH框架的理解,提升开发能力。 总之,这个项目覆盖了SSH框架的主要功能,并加入了重要的安全特性,对于学习和掌握SSH开发有极大的帮助。开发者通过...
SSH框架,全称为Struts2、Spring...总之,基于SSH框架的通讯录案例是一个很好的学习资源,涵盖了Web开发中的许多重要概念和技术。通过深入研究和实践,你可以提升自己的Java Web开发技能,为未来的项目打下坚实的基础。
SSH(Secure Shell)是一种网络协议,用于在不安全的网络环境中提供安全的远程登录和其他服务。在本文中,我们将深入探讨SSH2错误的学习记录,主要包括以下几个方面: 1. **@Autowired注解问题**: `@Autowired`是...
这三大框架是构建企业级Java应用程序的基石,它们各自解决了Web开发中的不同问题,并通过整合提供了一种高效、灵活的解决方案。 Struts是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它主要负责...
标题提及的问题是"HP GEN8 ESXi 5.5及以上版本磁盘巨慢",这通常是由于硬件驱动不兼容或性能优化不当导致的。HP Gen8服务器使用的是智能阵列控制器,该控制器在与ESXi交互时可能需要特定的驱动支持。描述中提到的...
处理速度特别慢是 Hadoop 中的常见问题,主要是由于 Reduce 任务很慢。解决方法是修改 `conf/hadoop-env.sh` 文件,将 `HADOOP_HEAPSIZE` 设置为 4000。 启动 datanode 失败 启动 datanode 失败是 Hadoop 中的常见...
1. **多协议支持**:MobaXterm 支持多种网络协议,包括SSH(Secure Shell)用于安全的远程登录,RDP(Remote Desktop Protocol)用于Windows远程桌面,VNC(Virtual Network Computing)用于图形化远程控制,以及FTP...
问题描述:Hadoop处理速度特别慢,map速度很快,但reduce速度很慢。 解决办法:该问题可能是由于网络连接不正常或带宽较差所致。解决办法是检查网络连接情况,确保网络连接正常。同时,可以修改conf/hadoop-env.sh...
总结来说,这个GitHub上的`vscode-sftp`分支提供了一个优化的VSCode插件,通过快捷键增强了SFTP文件操作的便捷性,并解决了传输性能问题,对于使用VSCode进行远程开发的用户来说是一个有价值的更新。
JSch(Java Secure Channel)是一个开源的Java库,用于实现SSH2协议,它允许Java应用程序进行安全的远程登录、文件传输和其他与SSH相关的操作。在标题提到的"jsch0.1.54",这是一个特定版本的JSch库,其中包含了对...
SSH(Secure Shell)是一种网络协议,用于安全地远程登录、执行命令和传输数据。GSSHD是这个协议的一个实现,主要用于Linux操作系统。 在描述中提到,GSSHD目前仅支持“河豚密码”(可能是指bcrypt密码哈希算法)。...
- **性能监视器**:启用性能监视器,实时查看CPU、内存使用情况,以便及时发现并解决问题。 - **日志记录**:开启日志记录,便于排查连接问题,但注意不要开启过于详细的日志,以免占用过多存储空间。 7. **更新...
- **例一**:“我的应用系统运行很慢,怎么办?” 首先,需要使用系统监控工具来定位是CPU、内存还是I/O成为了瓶颈。然后,根据具体情况采取相应的优化措施,例如调整进程优先级、增加内存容量或更换更快的存储设备...