Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 417|回复: 0

解决方案: scp/ssh 的登陆提示很慢 (Linux)

[复制链接]
  • TA的每日心情
    奋斗
    昨天 22:10
  • 签到天数: 756 天

    [LV.10]以坛为家III

    2034

    主题

    2092

    帖子

    70万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    707560
    发表于 2021-8-29 14:34:18 | 显示全部楼层 |阅读模式
    看着用 windows 的 scp 命令很快很是羡慕. 这个问题让我实实郁闷了好几天. 在 Linux 下不管是用 ssh 还是用 scp, 连接速度都很慢 (登陆提示框的弹出时间).
    确切地讲, 每次的登陆连接平均消耗了 30 秒! 
    言归正传. 如何找出究竟是什么导致了 ssh 或是 scp 的登陆很慢? 如何修复该所谓的登陆 "慢" 或 "延迟"?
    今天 Google 了一下, 很快就有了解决方案. :-) 
    你也 google 了吧? :-)

    什么导致了 scp 和 ssh 的登陆提示速度下降

    就我自身所遇到的情况来看, 这些延迟绝大部分是 GSSAPI 的认证功能导致的!
    你可以用 -v  选项确认你的情况. 例如, 下面是 ssh 的详细登陆过程:
    cherry@cherry:~$ ssh -v cherry@59.151.47.49
    ...
    ...
    debug1: SSH2_MSG_SERVICE_REQUEST sent
    debug1: SSH2_MSG_SERVICE_ACCEPT received
    debug1: Authentications that can continue: publickey,gssapi-with-mic,password
    debug1: Next authentication method: gssapi-with-mic
    debug1: Unspecified GSS failure.  Minor code may provide more information
    No credentials cache found

    debug1: Unspecified GSS failure.  Minor code may provide more information
    No credentials cache found

    debug1: Unspecified GSS failure.  Minor code may provide more information


    debug1: Next authentication method: publickey
    debug1: Trying private key: /home/cherry/.ssh/identity
    debug1: Trying private key: /home/cherry/.ssh/id_rsa
    debug1: Trying private key: /home/cherry/.ssh/id_dsa
    debug1: Next authentication method: password
    cherry@59.151.47.49's password:

    解决方案

    就我所遇到的情况来看, 显然是要把 GSSAPI 禁用. 以下是三种可行的方式:
    [ ] 该解决方案是在客户端 OpenSSH_4.7p1 Debian-8ubuntu1.2, OpenSSL 0.9.8g 下测试并通过的.
    1. 连接时用命令指定:
    ssh -o GSSAPIAuthentication=no cherry@59.151.47.49
    2. 在 ssh 客户端程序的配置文件里显式禁用 GSSAPI 认证. 如, 编辑 /etc/ssh/ssh_config 文件, 添加或修改使其有如下一行:
    GSSAPIAuthentication no
    3. 在用户根目录下的 .ssh 目录下创建一个 config 文件. 如, 编辑 /home/cherry/.ssh/config (如果该文件不存在, 则创建之), 添加选项:
    GSSAPIAuthentication no
    [ ] A. /etc/ssh/ssh_config 是全局配置文件, 对其进行的修改会影响所有使用 ssh 客户端的系统用户.
            B. /home/cherry/.ssh/config 是只会影响用户 xcl 的本地 ssh 客户端配置文件. 该文件的所有配置参数会覆盖全局配置文件的相同配置参数.
    在禁用 GSSAPI 后, ssh 的登陆提示 "回归" 正常了:
    cherry@cherry:~$ ssh -v cherry@59.151.47.49
    ...
    ...
    debug1: SSH2_MSG_SERVICE_REQUEST sent
    debug1: SSH2_MSG_SERVICE_ACCEPT received
    debug1: Authentications that can continue: publickey,gssapi-with-mic,password
    debug1: Next authentication method: publickey
    debug1: Trying private key: /home/cherry/.ssh/identity
    debug1: Trying private key: /home/cherry/.ssh/id_rsa
    debug1: Trying private key: /home/cherry/.ssh/id_dsa
    debug1: Next authentication method: password
    cherry@59.151.47.49's password:
    可见, 该过程已经不再使用 GSSAPI 了. 速度也大大提高了.
    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-6-28 17:37 , Processed in 0.068090 second(s), 29 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表