位置: 编程技术 - 正文

SSH登录Linux服务器慢或者登陆错误的解决方法分享(ssh命令行登录服务器)

编辑:rootadmin

推荐整理分享SSH登录Linux服务器慢或者登陆错误的解决方法分享(ssh命令行登录服务器),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:ssh命令行登录服务器,ssh登录linux服务器可以显示桌面吗,ssh远程登录linux服务器,linux ssh 服务,ssh登录linux服务器可以显示桌面吗,ssh登录linux服务器怎么搭建传文件,linux ssh 服务,ssh登录linux服务器怎么搭建传文件,内容如对您有帮助,希望把文章链接给更多的朋友!

每次PuTTY使用SSH登录到远程的Linux进行管理的时候,远程登录的过程都非常慢——输入完用户名之后,非要等到秒左右才会出来输入密码的提示。在实际处理问题的时候,特别需要快速响应的时候,这种状况着实让人难以忍受。

但后来具体测试了一下,发现这又并非是每种系统的通病,出现问题的机器主要集中的CentOS上,同样的Debian系统,在远程连接的过程就是健步如飞,丝毫没有卡顿犹豫的感觉。这难道是CentOS的问题?

出于好奇,查看了下两个系统在SSH时的差别CentOS:复制代码代码如下:ssh -v ssh_test@...SSH远程登录的时候显示的信息如下:

OpenSSH_6.0p1 Debian-4, OpenSSL 1.0.1e Feb ...Some sensitive information...debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3debug1: match: OpenSSH_5.3 pat OpenSSH_5*debug1: Enabling compatibility mode for protocol 2.0debug1: Local version string SSH-2.0-OpenSSH_6.0p1 Debian-4debug1: SSH2_MSG_KEXINIT sentdebug1: SSH2_MSG_KEXINIT receiveddebug1: kex: server->client aes-ctr hmac-md5 nonedebug1: kex: client->server aes-ctr hmac-md5 nonedebug1: SSH2_MSG_KEX_DH_GEX_REQUEST(<<) sentdebug1: expecting SSH2_MSG_KEX_DH_GEX_GROUPdebug1: SSH2_MSG_KEX_DH_GEX_INIT sentdebug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY...Some sensitive information...debug1: ssh_rsa_verify: signature correctdebug1: SSH2_MSG_NEWKEYS sentdebug1: expecting SSH2_MSG_NEWKEYSdebug1: SSH2_MSG_NEWKEYS receiveddebug1: Roaming not allowed by serverdebug1: SSH2_MSG_SERVICE_REQUEST sentdebug1: SSH2_MSG_SERVICE_ACCEPT receiveddebug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,passworddebug1: Next authentication method: gssapi-keyexdebug1: No valid Key exchange contextdebug1: Next authentication method: gssapi-with-micdebug1: Unspecified GSS failure. Minor code may provide more informationCannot determine realm for numeric host address debug1: Unspecified GSS failure. Minor code may provide more informationCannot determine realm for numeric host address debug1: Unspecified GSS failure. Minor code may provide more information debug1: Unspecified GSS failure. Minor code may provide more informationCannot determine realm for numeric host address debug1: Next authentication method: publickeydebug1: Trying private key: /home/mitchellchu/.ssh/id_rsadebug1: Trying private key: /home/mitchellchu/.ssh/id_dsadebug1: Trying private key: /home/mitchellchu/.ssh/id_ecdsadebug1: Next authentication method: password而Debian使用同样的命令测试的结果为:

OpenSSH_6.0p1 Debian-4, OpenSSL 1.0.1e Feb ...Some sensitive information...debug1: Remote protocol version 2.0, remote software version OpenSSH_6.0p1 Debian-4debug1: match: OpenSSH_6.0p1 Debian-4 pat OpenSSH*debug1: Enabling compatibility mode for protocol 2.0debug1: Local version string SSH-2.0-OpenSSH_6.0p1 Debian-4debug1: SSH2_MSG_KEXINIT sentdebug1: SSH2_MSG_KEXINIT receiveddebug1: kex: server->client aes-ctr hmac-md5 nonedebug1: kex: client->server aes-ctr hmac-md5 nonedebug1: sending SSH2_MSG_KEX_ECDH_INITdebug1: expecting SSH2_MSG_KEX_ECDH_REPLY...Some sensitive information...debug1: ssh_ecdsa_verify: signature correctdebug1: SSH2_MSG_NEWKEYS sentdebug1: expecting SSH2_MSG_NEWKEYSdebug1: SSH2_MSG_NEWKEYS receiveddebug1: Roaming not allowed by serverdebug1: SSH2_MSG_SERVICE_REQUEST sentdebug1: SSH2_MSG_SERVICE_ACCEPT receiveddebug1: Authentications that can continue: publickey,passworddebug1: Next authentication method: publickeydebug1: Trying private key: /home/mitchellchu/.ssh/id_rsadebug1: Trying private key: /home/mitchellchu/.ssh/id_dsadebug1: Trying private key: /home/mitchellchu/.ssh/id_ecdsadebug1: Next authentication method: password从上面可以看到,在CentOS中,系统使用了publickey,gssapi-keyex,gssapi-with-mic,和password来进行认证(上面颜色标记行,行),而Debian此时则使用了Publickey和password两种。在连接CentOS的时候,在行处花费了相当多的时间。我们在那里开始往下看,就能非常清楚的看到下面的信息:

#下面使用的是GSSAPI-KEYEX来进行验证debug1: Next authentication method: gssapi-keyex#但是报错:没有可用的Key来交换信息debug1: No valid Key exchange context#系统接着又使用下一个验证方法:GSSAPI-WITH-MICdebug1: Next authentication method: gssapi-with-mic#但遗憾的是,GSSAPI-WITH-MIC方法也失败。#原因:不能确定数字主机地址的域debug1: Unspecified GSS failure. Minor code may provide more informationCannot determine realm for numeric host address debug1: Unspecified GSS failure. Minor code may provide more informationCannot determine realm for numeric host address debug1: Unspecified GSS failure. Minor code may provide more information debug1: Unspecified GSS failure. Minor code may provide more informationCannot determine realm for numeric host address# 在尝试几次后,SSH认证终于放弃了这种验证。进入下一个验证:Publickeydebug1: Next authentication method: publickey除了这个方法还有其他方法么?这个自然是有的,CentOS其实就已经提供给我们一个解决方案了——使用ssh远程登录的时候禁用GSSAPI验证。当然,还有一个问题不得不注意,如果你的机器上启用了UseDNS的话,需要一并关闭,具体可参见最后的说明。

从错误可以看出应该是和主机域相关的问题——应该是无法确认IP对应的域,因此会出现这个问题。GSSAPI主要是基于Kerberos的,因此要解决这个问题也就变得要系统配置有Kerberos,这对于没有Kerberos的筒子们来说,配置个Kerberos就为了解决个登录延时问题,似乎不是个明智的决定——特别是在生产环境中!最小化满足需求才是王道。

下面先放出处理GSSAPI的方法禁用GSSAPI认证有两个方式:客户端和服务端

1. 客户端禁用比较简单,影响的只有单个客户端用户,可以用下面的方法实现:复制代码代码如下:ssh -o GSSAPIAuthentication=no your-server-username@serverIP用上面的方法登录远程,即可实现禁用GSSAPIAuthentication。

如果你嫌麻烦,直接配置你ssh客户端的文件/etc/ssh/ssh_config来达到永久解决这个问题:复制代码代码如下:vi /etc/ssh/ssh_config### 找到ssh_config文件里面的GSSAPIAuthentication yes这行### 修改为GSSAPIAuthentication no### 保存ssh_config文件并退出这个修改方法是将所有这个机器上的用户都影响到了,如果你影响面不要那么的广泛,只要在指定的用户上实施禁用GSSAPIAuthentication的话,那么你可以在该用户的目录下,找到.ssh目录,在其下面添加config文件,并在文件内添加上面这句,如果没有这个文件,你也可以直接这么做:复制代码代码如下:cat >>~/.ssh/config<<EOFGSSAPIAuthentication noEOF使用cat,直接将输入导出到文件中,这时候,你在使用ssh连接远程的目标主机时,就不会再使用GSSAPI认证了。

上面这些文件是在客户端,不是服务端的。也就是说,要修改这个文件,你的客户端也要是Linux才行。

如果你是在Windows下使用PuTTY这样的客户端工具,就不使用上面这个方法了,PuTTY下可以尝试在连接之前进行设置:复制代码代码如下:PuTTY Configuration -> Connection -> SSH -> Auth -> GSSAPI -> (取消勾选)Attempt GSSAPI authentication(SSH-2 only)

SSH登录Linux服务器慢或者登陆错误的解决方法分享(ssh命令行登录服务器)

如果没有关闭PuTTY的GSSAPIAuthentication,你可以在连接的窗口右键(或:Ctrl + 右键)查看日志,可以发现PuTTY会自动尝试GSSAPI连接的日志:

-- :: Using SSPI from SECUR.DLL-- :: Attempting GSSAPI authentication-- :: GSSAPI authentication request refused恩,上面基本上将客户端禁止GSSAPIAuthentication的方法罗列了一下。

注意:上面这些方法是比较通用的。

2、如果你已经配置了Kerberos的情况下那么你也可以尝试下如下的客户端解决这个问题的方法:

添加远程主机的主机名到你本机的host文件中(Linux是/etc/hosts,Windows是系统盘:WindowsSystemdriversetchosts)。Linux和Windows下都可以添加下面这行。复制代码代码如下:### 注意:下面这样的IP-Addr要替换成你的远程机器的IP地址,HostName,自然是主机名IP-Addr HostName添加完毕之后,保存退出。

如果你没有配置Kerberos的话,仅配置这个hosts文件一样是不能解决问题的,在使用ssh登录的时候,你可以看到报错日志会类似下面这样:

debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-midebug1: Next authentication method: gssapi-keyexdebug1: No valid Key exchange contextdebug1: Next authentication method: gssapi-with-micdebug1: Unspecified GSS failure. Minor code may provide more informationCredentials cache file '/tmp/krb5cc_0' not found debug1: Unspecified GSS failure. Minor code may provide more informationCredentials cache file '/tmp/krb5cc_0' not found debug1: Unspecified GSS failure. Minor code may provide more information debug1: Unspecified GSS failure. Minor code may provide more informationCredentials cache file '/tmp/krb5cc_0' not found debug1: Next authentication method: publickey这个错误我在刚开始的时候也犯了的,需要注意。

3、服务端禁用GSSAPIAuthentication。直接到/etc/ssh/sshd_config里面,将GSSAPIAuthentication yes改为no即可了,同时也请注意,你可能也需要将UseDNS这个也修改成UseDNS no(这个要注意,每个系统的默认值不同,此处以CentOS 6为例):复制代码代码如下:sudo vi /etc/ssh/sshd_config### 普通用户权限不够,需要root权限### 找到GSSAPIAuthentication yes,修改为### GSSAPIAuthentication no### 注意,这里你也需要将UseDNS修改为no,CentOS默认是yes,即使这行已被注释,你也需要加上### UseDNS no### 有看到人说UseDNS yes不需要修改为UseDNS no,Mitchell测试下来是需要的。### 保存文件,退出当禁用之后,我们需要重启SSH服务来保证新的配置文件被正确应用:复制代码代码如下:service sshd restart这个时候,再次使用SSH登录这个主机时,是不是感觉飞快了?

呼~ 终于完成了这篇长文,要一边捣腾一边弄出这些个文字,还是真是有点困难。不过,这样也就将问题捣腾的差不多了,希望看文章的你能够看的明白,欢迎讨论。

说明:1. GSSAPI:Generic Security Services Application Program Interface,GSSAPI本身是一套API,由IETF标准化。其最主要也是著名的实现是基于Kerberos的。一般说到GSSAPI都暗指Kerberos实现。

2. UseDNS:是OpenSSH服务器上的一个DNS查找选项,而且默认还是打开的,在打开的状态下,每当客户端尝试连接OpenSSH服务器的时候,服务端就自动根据用户客户端的IP进行DNS PTR反向查询(IP反向解析才会有记录),查询出IP对应的Hostname,之后在根据客户端的Hostname进行DNS正向A记录查询。通过这个查询,验证IP是否和连接的客户端IP一致。但绝大部分我们的机器是动态获取IP的,也就是说,这个选项对于这种情况根本就没用——即使是普通静态IP服务器,只要没有做IP反向解析,也难以适用。如果你符合这些情况,建议关闭UseDNS以提高SSH远程登录时候的认证速度。

ssh证书登录错误错误描述使用证书ssh链接的时候提示下面错误信息

Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). 可能原因authorizedkeys 或.ssh的权限太open .ssh 目录改成 权限 authorizedkeys 改成解决查看日志: cat /var/log/secure 发现 Aug 8 :: CentOS sshd[]: Authentication refused: bad ownership or modes for file /home/abc/.ssh/authorized_keys 查看.ssh权限为 .ssh 手动创建的时候是权限,改成权限后正常 # chmod ~/.ssh

Linux系统下CVS的账号控制操作简介 CVS是一个版本控制系统,用于在多人开发环境下的源码的维护.从理论上CVS可以维护任意的文本文档的开发,而不是局限于程序设计.CVS用copy-midify-merge变化

Linux下CVS的安装配置与操作命令全解析 在介绍CVS命令之前,先说点别的如以前说,仓库内除乐源文件外,还包括一系列的管理文件.位于$CVSROOT/CVSROOT修改管理文件的方法等同于源代码文件,利用CVS

Linux系统下iso文件的制作和解压以及加载 linux下iso文件的制做和解压1.制作ISO镜像文件切换为root账户,执行命令复制代码代码如下:cp/dev/cdromXXXXX.isoXXXXX.iso即为需要命名的ISO文件名。执行之后,

标签: ssh命令行登录服务器

本文链接地址:https://www.jiuchutong.com/biancheng/353254.html 转载请保留说明!

上一篇:Linux系统下Flash Player崩溃的一个解决办法分享(linux版flash)

下一篇:Linux系统下CVS的账号控制操作简介(cvi linux)

  • 退回多报的教育费附加如何做账
  • 已经认证的发票对方可以作废吗
  • 内账固定资产已经费用化了怎么办
  • 实控人变更是利好吗
  • 公司购车按揭利息可以开票吗
  • 去年税收滞纳金计入什么科目
  • 母公司名称的发票可以计入子公司的开办费处理吗?
  • 以前年度少计提工资的会计处理
  • 进项结构明细表怎么做
  • 民办非企业是否可以出资设立公司
  • 公司住宿费用记什么费用
  • 招待费多少
  • 已付款未收到发票
  • 企业技术中心认定专精特新
  • 行政罚款计入什么会计科目
  • 长期股权投资稀释
  • 季度不超过30万免税分录
  • 小规模纳税人金融服务税率
  • 捐赠计提管理费的账务处理?
  • 废品损失账户借方反映
  • 苹果哪些手机有120hz刷新率
  • 科技研发公司经营范围包括哪些
  • windows 7无线开关在哪里
  • win11 zen2
  • mysql 数据源
  • win10鼠标速度默认是多少
  • 教程图怎么做
  • 会计实务中计提是什么意思
  • 购进原材料款项怎么入账
  • php file_get_contents smb
  • 固定资产进项税额怎么抵扣
  • 基于随机森林的气温预测
  • 深度学习中正样本、负样本、简单样本、困难样本的区别 (简单易懂)
  • yolov4源码解读
  • 取得企业债券利息
  • 应交税费为负数在资产负债表里怎么填
  • 上个月没扣社保 这个月一起交能报账吗
  • 帝国cms会员发布信息数量
  • 企业购房如何入账
  • sqlserver定时执行sql
  • access字符型数据
  • 短期理财会计处理
  • 计提坏账准备的金额怎么算的
  • 哪些拍卖行为不属于诈骗
  • 生产企业库存商品怎么做分录
  • 软件开发过程付什么费用
  • 暂估成本以后也没有票回来了
  • 小规模纳税人不超过10万免增值税
  • 企业收到委托开具发票
  • 结算本月应付职工工资,其中生产工人工资8000元
  • 未使用的固定资产计提折旧应当计入
  • 企业注销以后
  • 固定资产建账为什么不能直接输入名字
  • sql不重复数据个数
  • myeclipse连接mysql要装软件吗
  • Windows Server 2003几个实用小技巧
  • ubuntu调出命令行
  • linuxsu命令作用
  • linux route -n命令结果详解
  • win8官方u盘安装教程
  • xp系统个性化
  • win10系统光驱
  • win7笔记本触摸板怎么用滑轮
  • number fields to_char
  • nodejs文件上传服务器
  • html5图文混排
  • js修改内容
  • android 像素
  • 深入解析抑郁症:什么是它的表现?别小看它的危害程度!
  • python从入门到精通
  • python 网络应用
  • python 字符串
  • bootstrap基础教程
  • android圆环进度条渐变
  • 浙江银行上班时间查询
  • 企业吸收合并资质
  • 个人的房产出租征收什么税
  • 报税的资格
  • 武汉市第二税务稽查局地址
  • 增值税专用发票注明的金额是含税还是不含税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设