前面小编给大家分享过云服务器和虚拟主机的区别,那么我们就会发现虚拟主机是不支持远程登录的。所以购买云服务器 ECS(后续简称 ECS)Linux 服务器后,就会面临如何登录和使用的问题。而由于服务器在云端,所以日常运维中通常都会基于 SSH 客户端登录服务器进行相关操作。今天,阿里云湖北授权服务中心捷讯技术小编就从登录 ECS 的不同方法和使用场景讲起,理理SSH 无法远程登录问题的常见原因与排查思路。

ECS Linux 不同登录方式示意图.png
ECS Linux 不同登录方式示意图

如上图所示,当前 ECS Linux 支持 3 种不同的登录方式,其操作说明与使用场景如下:

1.管理终端(远程连接)

使用场景:当出现 ECS 启动异常、网络中断或 SSH 无法正常连接等情况时,可以通过管理终端(远程连接)功能直接连接服务器。它基于 VNC 技术,相当于在 ECS 上直连了一台虚拟的显示器(含鼠标、键盘)

2.SSH

使用场景:标准的 Linux 服务器连接方式。您可以通过各种 Linux SSH 客户端连接、登录 ECS,进行服务器的运维和管理工作。

3.SSH 密钥对

使用场景:基于密钥对的免密码登录,降低了密码泄露的风险,提高了操作的安全性,同时也便于服务器的批量运维。

一、SSH 无法远程登录问题的常见原因与处理思路

如前所述,SSH 客户端是 ECS Linux 服务器的主要的运维途径。而网络、服务器配置、SSH 服务配置等多种因素均可能会导致 SSH 连接或登录过程出现异常。那么我们先来了解影响 SSH 连接或登录的常见因素以及此类问题的分析处理思路。

1、SSH 连接登录相关因素

如上图所示,多种因素均可能会导致客户端通过 SSH 连接或登录服务器出现异常,包括但不限于:

1)客户端软件或软件配置问题;

2)客户端网络问题;

3)中间链路问题;

4)云盾、ECS 安全组或系统内 iptables 等安全配置问题;

5)Linux 系统 PAM 安全模块配置问题;

6)Linux 系统环境配置问题;

7)SSH 服务及参数配置问题;

8)SSH 服务关联的目录或文件的属性配置问题;

9)SSH 服务密钥配置问题。

2、SSH 无法远程登录问题处理思路

如果 SSH 无法正常连接或登录,可以参照下图,通过如下步骤逐一进行排查分析:

2.1 检查客户端软件配置与网络配置

通过以下方法做对比分析,以判断是否是客户端软件、软件配置或客户端网络存在异常,导致无法正常 SSH 连接或登录服务器:

a、重启家用路由器,或通过 4G 热点共享的方式,切换到不同的网络做对比测

b、基于相同账户,使用不同的 SSH 客户端软件做对比访问测试

2.2检查中间网络

通过如下方法对中间网络做判断和对比分析,以判断是否是中间网络引发的异常:

a、ping服务器 IP ,看是否正常。比如:ping 223.5.5.5

如果正常,则说明客户端到服务端的中间链路是正常的。

如果不正常,需要对这块进行再另外进行分析

b、telnet服务器 IP,看是否正常。比如: telnet 223.5.5.5 22

正常情况下,如下图所示,会返回服务端 SSH 软件版本号信息:

如果不正常,则说明可能是 SSH 服务异常或被云盾、安全组等拦截所致,则参阅后续步骤继续排查分析。

2.3 安全配置检查

通过如下方法,对 SSH 连接相关安全因素进行排查分析:

通过淘宝 IP 地址库等网站获取本地网络出口公网 IP 后,到云盾控制台查询相关访问是否被云盾拦截。

检查服务器归属安全组规则,确认对客户端做了访问放行。

检查服务器内部 iptables 等安全配置,确认对客户端做了访问放行。

2.4 SSH 服务与监听状态检查

通过如下方法,检查 SSH 服务自身运行状态:

可以通过管理终端进入服务器。通过如下指令检查 SSH 服务运行状态。如果服务运行正常,则会返回运行状态及相应进程 PID:

[root@centos ~]# service sshd status openssh-daemon (pid 31350) is running…

[root@centos ~]# service sshd restart Stopping sshd: [ OK ] Starting sshd: [ OK ]

通过如下指令检查 SSH 服务的端口监听状态。正常情况下会返回相应端口监听信息:

netstat -ano | grep 0.0.0.0:22 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN off (0.00/0/0)

0.0.0.0 表示监听所有网卡

如果配置仅监听内网网卡,比如10.126.3.45:22,则只能通过内网进行SSH登录

在系统内通过类似 ssh 127.0.0.1 的方式做对比测试,以判断 SSH 服务连接是否正常:

用法: ssh -p

ssh 127.0.0.1 ssh -p 2022 127.0.0.1

如果上述登录测试正常,则说明 SSH 服务本身运行与监听是正常的。则通过后续步骤做进一步排查分析。

2.5 SSH 登录错误进一步分析

如果确认 SSH 服务及外部网络链路正常,则可以通过如下方法,进一步检查 SSH 登录具体错误信息,然后结合历史案例做相应分析和处理:

配置实时查看 SSH 服务端安全日志:通过管理终端进入服务器。通过类似如下指令实时查看 SSH 服务端安全日志:

CentOS 服务器:tailf /var/log/secure Ubuntu 服务器:tailf /var/log/auth开启客户端 SSH debug 模式,获取客户端详细登录日志:
如果客户端是 Linux 环境,则可以通过如下指令,获取详细的 SSH 登录交互日志:

ssh -vvv <服务器 ip="">

比如:

[root@centos~]# ssh -vvv 192.168.0.1 OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013 debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * debug2: ssh_connect: needpriv 0 debug1: Connecting to 192.168.0.1 [192.168.0.1] port 22. debug1: connect to address 192.168.0.1 port 22: Connection timed out ssh: connect to host 192.168.0.1 port 22: Connection timed out ...

参阅历史案例,结合前述步骤获取的 SSH 客户端及服务端的日志进行对比分析和处理。

捷讯技术分享SSH 无法远程登录问题的处理办法汇总相关推荐

  1. SSH 无法远程登录问题的处理思路

    购买云服务器 ECS(后续简称 ECS)Linux 服务器后,首先面临的就是如何登录和使用的问题.而由于服务器在云端,所以日常运维中通常都会基于 SSH 客户端登录服务器进行相关操作.今天,我们就从登 ...

  2. linux的SSH(远程登录)服务

    目录 一.SSH服务 1.什么是SSH 2.SSH(Secure Shell)协议 3.OpenSSH服务器配置文件 二.ssh远程登录方式 2.使用域名进程登录 3.故障解决 4.sshd服务支持的 ...

  3. linux ssh连接交换机_访问SMB交换机CLI使用SSH或远程登录

    访问SMB交换机CLI使用SSH或远程登录 客观 Cisco小型企业被管理的交换机可以通过命令行界面(CLI)远程访问和被配置.访问CLI在一个基于终端的窗口允许命令被输入.如果喜欢配置使用在您的交换 ...

  4. 京东云 linux无法远程,问题解读 | Linux系统SSH无法远程登录时该怎么办?这里有篇小攻...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 对于Linux云主机,SSH是标配.在实际操作过程中有时会出现无法远程登录的情况,这里简单介绍了SSH无法登录的可能原因及排查方法,帮助大家用以自测. - ...

  5. 【YM】ssh命令 远程登录Linux

    [YM]ssh命令 远程登录Linux spfanlost 2017.10.08 14:51:24 字数 646 阅读 1,008 菜鸟学Linux命令:ssh命令 远程登录 如何通过ssh远程登录l ...

  6. 使用SSH客户端远程登录Linux主机(可替代samba、ftp服务)

    使用SSH客户端远程登录Linux主机(可替代samba.ftp服务) Linux系统起初就是为多用户而产生的,可以允许多个用户同时登录linux主机各自进行操作,如图1所示:   图1 SSH(Se ...

  7. linux ubuntu 开启ssh服务,开启SSH服务远程登录ubuntu

    Ubuntu系统(14.04 LTS) ssh–secure shell,提供安全的远程登录.从事嵌入式开发搭建linux开发环境中,ssh的服务的安装是其中必不可少的一步.ssh方便一个开发小组中人 ...

  8. 使用Telnet与ssh协议远程登录linux系统

    一.计算机的登录 计算机终端设备通过输入用户账户标识和与之对应的口令的方式被计算机验证的过程. 终端的分类: 1)物理终端:计算机本身的控制台设备:通常将其标识为"pty",在现代 ...

  9. linux配置ssh密码远程登录,配置ssh 无需密码即可登录远程服务器

    在平时工作或者开发自己的项目时,经常需要登录部署了项目代码的服务器来做一些调试,配置等相关的操作,像sftp.rsync之类的工具也是基于ssh通道来工作的.但是经常输密码登录服务器又会让人觉得很烦, ...

最新文章

  1. 探子报!双十一紧急军情!!!
  2. SQL Server 2008 R2 系统配置检查器的检查参数和妨碍性问题的解决办法
  3. “Git 不是昙花一现!”
  4. quartz入门案例
  5. UNIX高级环境编程(11)进程控制(Process Control)- 进程快照,用户标识符,进程调度...
  6. 2013年MBA、MPA、MPAcc入学考试英语辅导教材
  7. python的自省到底有什么用
  8. 我的世界服务器指令系统,我的世界中国版最全指令 MC指令最全合集
  9. 常见的网络连接设备有哪些?
  10. 初步探究Android App API接口测试--实战
  11. 求学者们论文的引用次数(中等难度C++)
  12. 盛世昊通董车长APP新功能上线,看视频获收益
  13. 处处留心皆学问,世事如棋局局新…
  14. 计算机一级考试:选择题汇总E(精简版)
  15. PMP必看!能力的提升不止于证书
  16. codol服务器维护,解决Nvidia显卡玩《使命召唤OL(CODOL)》游戏不流畅问题
  17. VS Code正则表达式\删除空行\重复行\英语、英文行
  18. 传奇三game 表详解
  19. 淘宝内容营销的时代到来,卖家们该如何决策?
  20. Access中使用sql查询

热门文章

  1. 作业3.1:沟通管理计划包括哪些内容
  2. Power Law and Exponential Decay of Inter Contac...
  3. 华为总裁任正非谈企业管理:正确的方向来自于妥协
  4. xgboost进行分类具体实现
  5. sqlserⅴer随机函数_SQL server 随机数函数
  6. java 反射代价_Java反射机制
  7. 震精~python运算符还能这么玩~到底这么做到的?神级程序员解密!
  8. mysql internal_MySQLInternal笔记
  9. php 更新数据库失败,php 更新数据库中断的解决方法
  10. zabbix.php访问不了_zabbix_配置Nginx连接php