热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

解决Linux系统ssh连接太慢的问题

解决Linux系统ssh连接太慢的问题--Linux发行版技术-Debian信息,下面是详情阅读。
如果是ssh到远程主机,由于网络快慢等诸多因素,慢一点是很正常的;但如果ssh到本地的某一台主机,也需要等待30s左右,就让人有些无法忍受了!
自从使用debian(版本lenny,以前使用ubuntu6.06时候并没有这个问题)以来,这个问题就存在了,但一直没有时间来解决(或是有尝试过,但失败了),今天终于忍耐不住,到debian mailing-list上问了一下,然后结合自己的实践,基本有些结论了!

根据网上的帖子以及各位网友的提议,感觉这个问题的解决方法好像并不是通用的。不过也没关系,所涉及修改的也就那么几处,如果遇到类似问题,都尝试一下应该就能找到解决的方法了!

我的问题症状: ssh lan_host,需要等待至少30秒才能看到Password的输入提示(网上说这是因为dns反查所造成的);
我的解决方法:需要修改两个配置文件,/etc/resolv.conf 和 /etc/nsswitch.conf

在/etc/resolv.conf里面配置一个正式点dns,原来使用的是192.168.1.1,上网是没有问题的,但这里需要改成一个类似222.xx.xx.xx的域名才行;(我对域名这块没怎么研究,不知道该如何正确表述)
对于/etc/nsswitch.conf,需要将:“hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4” 改成 "hosts: files dns",这种修改,相当于禁止掉了mdns的使用,而只使用dns进行解析;
然后重启sshd服务。
关于mdns:主要是用来解决zeroconf的问题,一般用于局域网内来解析主机名。在linux中的实现是,每个主机运行一个mdns的daemon,让客户地查询的时候,返回自己的主机名。譬如你的主机名叫做abc,那么如果你在nsswitch.conf里面配置了需要支持mdns解析的话,那么你就可以通过ping abc.local, ssh abc.local等来访问这个机器。其实实质上应该是gethostbyname那里读取了nsswitch.conf,然后调用相应的实现来获取地址的。它的好处是,不用配置。(更多详情可参见: http://www.multicastdns.org/)

网上关于该问题的常用解决方法是(主要就是修改配置文件/etc/ssh/sshd_config):
(1)修改"UseDNS"的值为“no”(没有的添加该配置选项,注释掉的放开即可);这种修改在我的系统里面好像没起作用!
(2)修改“GSSAPIAuthentication”的值为“no”(没有的添加该配置选项,注释掉的放开即可);
其实用户可以自己运行“ssh -v host”进行debug的,通过debug信息就可以看到连接到什么地方被耽搁了;我的测试就是在"debug1: Unspecified GSS failure. Minor code may provide more information" 这里停顿了一会儿,所以感觉修改“GSSAPIAuthentication”的值应该会有效果,但实践证明,如果不改上面几项,该处更改在我的系统依然不起作用!
推荐阅读
  • 本文介绍了Linux操作系统的核心组成部分——内核及其版本分类,以及市面上常见的几种Linux发行版,旨在为初学者提供一个清晰的学习路径。 ... [详细]
  • 本文介绍了如何在Ubuntu 16.04系统上配置Nginx服务器,以便能够通过网络访问存储在服务器上的图片资源。这解决了在网页开发中需要使用自定义在线图标的需求。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 本文详细介绍了如何在Ubuntu系统中下载适用于Intel处理器的64位版本,涵盖了不同Linux发行版对64位架构的不同命名方式,并提供了具体的下载链接和步骤。 ... [详细]
  • 本文介绍如何通过更改软件源来提前体验Ubuntu 8.10,包括详细的配置步骤和相关注意事项。 ... [详细]
  • Linux环境下配置Subclipse访问SVN+SSH仓库的方法
    本文详细介绍如何在Linux操作系统中配置Subclipse,以便通过SSH协议安全访问SVN仓库。不同于常见的Windows配置指南,本文提供了针对Linux用户的详细步骤。 ... [详细]
  • 本文探讨了Unix和Linux操作系统的起源和发展历程。从20世纪60年代计算机技术的初期阶段,到Unix的诞生及后续Linux的崛起,文章详细介绍了这些操作系统如何逐步成为现代计算不可或缺的一部分。 ... [详细]
  • 在Ubuntu 14.04 (Desktop AMD64) 上安装与配置ROS Indigo
    本文档详细介绍了如何在Ubuntu 14.04 (Desktop AMD64) 系统上安装和配置ROS Indigo。包括设置软件源、安装ROS核心组件、初始化rosdep以及创建ROS工作空间等步骤。 ... [详细]
  • 利用 Calcurse 在 Linux 终端高效管理日程与任务
    对于喜爱使用 Linux 终端进行日常操作的系统管理员来说,Calcurse 提供了一种强大的方式来管理日程安排、待办事项及会议。本文将详细介绍如何在 Linux 上安装和使用 Calcurse,帮助用户更有效地组织工作。 ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • Parallels Desktop for Mac 是一款功能强大的虚拟化软件,能够在不重启的情况下实现在同一台电脑上无缝切换和使用 Windows 和 macOS 系统中的各种应用程序。该软件不仅提供了高效稳定的性能,还支持多种高级功能,如拖放文件、共享剪贴板等,极大地提升了用户的生产力和使用体验。 ... [详细]
  • 在Ubuntu 16.04 LTS上配置Qt Creator开发环境
    本文详细介绍了如何在Ubuntu 16.04 LTS系统中安装和配置Qt Creator,涵盖了从下载到安装的全过程,并提供了常见问题的解决方案。 ... [详细]
  • 本文详细介绍了如何在 Linux 平台上安装和配置 PostgreSQL 数据库。通过访问官方资源并遵循特定的操作步骤,用户可以在不同发行版(如 Ubuntu 和 Red Hat)上顺利完成 PostgreSQL 的安装。 ... [详细]
  • 本文介绍了如何在Linux系统中获取库源码,并在从源代码编译软件时收集所需的依赖项列表。 ... [详细]
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
author-avatar
U友50081205_653
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有