首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux ssh登陆慢

Linux SSH登录慢可能由多种原因引起,以下是一些常见的原因及其解决方法:

常见原因

  • DNS反向解析问题:SSH在用户登录时会验证IP,使用反向DNS找到主机名,再使用DNS找到IP地址,最后匹配登录的IP是否合法。如果客户机的IP没有域名,或者DNS服务器很慢或不通,那么登录就会很慢。
  • 关闭GSSAPI认证:GSSAPI认证在目标机器无域名解析时会有问题,使用strace查看后发现,ssh在验证完key之后,进行authentication gssapi-with-mic,此时先去连接DNS服务器,在这之后会进行其他操作。
  • 命令缓存过大:环境变量中配置了HISTFILE,即会将历史执行命令保存到HISTFILE指定的文件中。且HISTFILESIZE设置的过大,ssh登录时会执行bash命令,bash会读取环境变量,并读取历史执行记录到内存,当文件过大时,读取速度会变慢。
  • 启动脚本中增加了延时命令:环境上如果有安装一些第三方包,如abrt-console-notification.这个包提供了/etc/profile.d/abrt-console-notification.sh文件,该脚本内执行了timeout 10s abrt status的命令,abrt status异常时会延迟10s,因此ssh登录也会卡顿10s。
  • 开启selinux:当sshd启用PAM验证时,当sshd进程校验完用户名密码,调用PAM模块的接口函数do_pam_session()创建PAM session时,PAM模块中会调用selinux_check_access()来进行安全上下文检查,当开启selinux时,可能存在selinux规则变化导致此处校验失败的情况,耗时较长。

解决方法

  • 修改sshd配置
    1. 禁用DNS反向解析:在目标服务器上修改sshd服务器端配置,将UseDNS的值设为no,并重启ssh服务。
    2. 禁用GSSAPI认证:修改sshd服务器端配置,将GSSAPIAuthentication的值设为no,并重启ssh服务。
  1. 优化启动脚本:检查并注释掉启动脚本中的延时命令,如timeout命令。
  2. 调整SELinux设置:如果确定是SELinux导致的问题,可以考虑调整SELinux的策略或临时关闭SELinux进行测试。
  3. 检查网络设置:检查本地网络连接是否正常,尝试更换网络环境,如切换到其他WiFi或使用有线连接。
  4. 使用更快的DNS服务器:检查本地DNS设置,尝试更换DNS服务器,如使用公共DNS(8.8.8.8或8.8.4.4)。

通过上述方法,通常可以有效解决Linux SSH登录慢的问题。如果问题仍然存在,建议进一步分析日志文件以获取更多详细信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Linux登陆方式之SSH

    SSH简析 1什么是SSH? 公司的服务器登陆操作都是使用堡垒机+SSH的方式进行登陆的,今天准备配置一台机器的SSH访问,所以看了看SSH相关的东西,这里简单总结下。...SSH是一种用于计算机之间加密登陆的网络协议,我们可以认为它是安全的,因为即使它的信息在中途被截获,密码也不会泄露出去。现今使用最广泛的是OpenSSH,它是SSH的一种商业实现。...2工作原理 基本用法:ssh user@host 其中,user代表用户名,远程主机是host,如果本地用户名与远程主机一致的话,可以直接省略user,而直接使用"ssh host"的方法来登陆远程主机...对称加密类似上图中的描述,客户端发起一个请求,然后通过密钥加密,服务器端接收到相关的密文,然后通过密钥解密,最终得到用户输入的登陆信息。...根据比较结果,返回客户端登陆结果。

    1.7K10

    Linux中SSH免密登陆配置

    2、SSH由“客户端”和“服务端”的软件组成 3、SSH认证机制(详细图解) 4、演示“远程拷贝” 5、配置免密登录:和免密登陆相关的文件夹/root/.ssh 6、检验是否配置成功 1、什么是...客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。 注意:谁被连接,就把谁看成服务端。   ...5、配置免密登录:和免密登陆相关的文件夹/root/.ssh 免密登陆配置的步骤如下: 1)创建密钥对:ssh-keygen [root@bigdata111 .ssh]# ssh-keygen...第一次发送要输入192.168.2.112的登陆密码,当出现上述结果,证明发送成功。 再次查看bigdata112的“.ssh”目录下查看其中的文件。...6、检验是否配置成功   上面我们已经配置好了SSH免密登陆,这里,我们再次将a.txt文件从bigdata111发送到bigdata112,看看是否还要输入密码 。

    3.9K20

    Linux配置SSH免用户免密码登陆

    目的 简化SSH登陆过程, 实现从机器A登陆机器B只需要运行ssh hostname即可, 即不需要输入用户名和密码。 2....配置host 配置host的作用是ssh登陆机器时用hostname代替IP, 在机器很多的集群环境中hostname比IP容易记的多, 编辑 /etc/hosts文件, 配置需要登陆的机器IP和hostname...2.配置免密 使用ssh-keygen生成密钥,将公钥文件上传至目标机器即可实现免密登陆,使用命令生成密钥: ssh-keygen -t rsa -C 'comment' -t rsa: 指定使用 rsa...运行成功后即可使用ssh user_name@hostname 免密码登陆。...3.配置免用户 编辑.ssh/目录下config 文件, 没有则新建一个, vim ~/.ssh/config 添加目标机器配置: ? 添加成功后,即可使用ssh hostname直接登陆。

    6.4K20

    Linux 设置 SSH 密钥登陆及更换登录端口

    前几天我的工作邮箱收到了一封比特币勒索邮件,刚开始看邮件内容的时候我还以为是自己的服务器被劫持了,吓了一跳,不过这次事情之后,倒是让我开始为服务器的安装问题考虑了,第一步就是这篇文章要记录的,关于 Linux...系统设置 SSH 密钥登陆。...,命令如下: sudo systemctl restart sshd 本地密钥登陆 服务器上重启完 ssh 服务之后,可以推出登陆,然后在本地使用密钥登陆即可,密钥登陆的方式根据自己使用的软件去使用即可...关闭 SSH 密码登陆 当本地使用密钥登陆成功之后,继续修改 ssh 配置来关闭密码登陆,具体修改的地方是 PasswordAuthentication no 修改完成之后继续执行 sshd 重启命令...,然后可以试一下在本地是否还能用密码登陆,如果不能那就修改好了,至此,SSH 密码登陆就已经修改为仅仅使用密钥登陆,服务器被劫持的概念就降低了很多。

    3.4K20

    ssh无密码登陆

    安装ssh无密码登陆 方便我们后续的无密码登陆别的机器,例如要登陆Hadoop、spark、hive等等,也方便我们在公司使用多台服务器。...ssh无密码登陆的原理: 典型的非对称加密,跟pgp加密是类似的。...1.A私匙生成A公钥,A公钥发往B机器,B机器保存好信息公钥; 2.A机器先B机器发起登陆通讯,B机器使用刚刚保存的公钥信息,生成登陆密文,发回给A机器; 3.A机器使用私钥解密 登陆密文,获取登陆信息...上述步骤也可以抽象看成一个TCP连接 ssh无密码登陆安装: 生成公钥和私钥 [root@VM_0_16_centos ~]# ssh-keygen -t rsa 一路确定 [root@VM_0_16_....ssh]# chmod 600 authorized_keys 建立连接 [root@VM_0_16_centos .ssh]# ssh root@VM_0_16_centos 登陆B机器 使用非对称加密的技术

    1.3K10

    【Linux】ssh介绍与远程登陆工具配置使用

    . ssh-vscode插件1. ssh介绍 SSH(Secure Shell)是一种网络协议和安全工具,用于在不安全的网络上安全地进行远程登录和数据传输。...SSH协议支持多种应用,其中最常用的是SSH(远程登录)、SCP(Secure Copy Protocol)和SFTP(SSH File Transfer Protocol)。...SSH登录: SSH登录是通过SSH协议远程连接到服务器并执行命令的过程。您可以使用SSH客户端(如OpenSSH)连接到远程服务器并提供所需的身份验证信息(用户名和密码或SSH密钥)。...大多数Linux发行版和macOS都默认安装了SSH客户端和服务器,可通过下列命令确认安装: sudo apt install openssh-server openssh-client Windows...如果没有的话,推荐使用vscode里的ssh tools插件来远程访问文件。 当然vscode也有其他ssh远程工具可选择,如官方的remote-ssh等,但使用下来感觉ssh tools更方便操作。

    43410

    CentOSLinux 解决 SSH 连接慢

    现在连接inux服务器一般都是使用SSH远程连接的方式。最近新装了一台服务器,发现telnet时速度很快,ping时一切也正常,但SSH连接的时候却很慢。...2、在authentication gssapi-with-mic有时候也会消耗一段时间 一、测试查找具体原因: 1、使用ssh -v host进行debug # ssh -v 192.168.100.10...exit 二、解决方法(建议一个个设置,因为每个人连接慢的原因都不一样): 注意:修改之后记得重启sshd服务 # service sshd restart 1、关闭DNS反向解析 在linux中,默认就是开启了...SSH的反向DNS解析,这个会消耗大量时间,因此需要关闭。...8、修改客户端配置文件ssh_conf(注意,不是sshd_conf) # vi /etc/ssh/ssh_conf 找到 GSSAPIAuthentication yes 改为 GSSAPIAuthentication

    2.9K20

    shell实现SSH自动登陆

    前言 公司开发使用docker,每次登陆自己开发机总要输入 ssh user_name@ip_string,然后再确认输入password,手快了还经常会输错。...作为一个懒人,肯定要找一个取巧的方式,查看了下ssh命令,由于它要进行一次跟服务器的加密交互,所以没有直接附带密码登陆的选项,只好作罢。 前些天在同事进行技术分享时,看到他竟然只输入了一行命令....shell脚本基础 在编写ssh自动登陆脚本之前,先说一下shell脚本的基础,此基础不是一些语法什么的,网上到处都是,这里总结了一下shell脚本的运行机制~ shell脚本的运行方式 首先要说一下shell...自动登陆脚本中,我们使用 spawn ssh user_name@ip_str,fork一个子进程执行ssh登陆命令; expect命令: expect命令是expect解释器的关键命令,它的一般用法为...这里我们想到了linux的alias命令: alias命令: alias命令使用方式为 alias alias_name="ori_command",将alias_name设置为ori_command的别名

    3.6K102

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券