3.2.12 SSH远程连接故障排查
您可以在百度里搜索“Linux/Unix技术丛书·跟老男孩学Linux运维:核心基础篇(上)(第2版) 艾草文学(www.321553.xyz)”查找最新章节!
3.2.12 SSH远程连接故障排查
1. SSH远程连接故障排查案例
假设远程Linux服务器的IP地址为192.168.2.217,现在要进行连接故障排查。
首先,查看远端服务是否正常,注意,操作命令的机器为客户端电脑DOS命令行或者Xshell界面,基本检查思路具体如下。
(1)利用ping命令检查(客户端执行)
具体命令为:
ping 192.168.2.217 #<== 此命令适合Linux 和Windows
这里通过ping命令从客户端发包到服务器,看看是否有数据包返回,从而确定物理链路是否通畅,打个比喻就是想开车去玩,先确定到目的地的高速路是否修通了。
提示:也可以通过tracert-d 192.168.2.217(仅适合于Windows)或traceroute 192.168.2.217-n(适合于Linux)命令跟踪路由情况,这两个跟踪路由的命令一般用于广域网。
如果ping不通,那就说明“高速路”断了,可能是因为以下几点原因。
1)对应网卡是否激活(很多人在安装系统时没有勾选网卡开机自启动)。
2)网卡对应的IP是否配置正确。
3)虚拟机的网卡是不是桥接模式(与本书一致)。
(2)检查firewalld等防火墙策略是否阻挡了连接(服务端执行)
具体命令为:
systemctl status firewalld
初学者在学习期间最好关掉firewalld,等日后学习了firewalld之后再开启。打个比喻就是确认是否因为天气原因(例如,大雾或下雪)高速路遇阻无法通行了。
(3)利用telnet或nmap命令检查(客户端执行)
具体命令为:
telnet 192.168.2.217 22
或:
nmap 192.168.2.217 -p 22 #<== 仅适合Linux,需要安装该软件包后才能使用。
通过该命令可以查看连接服务器端192.168.2.217的22端口是不是开通状态,因为SSH服务默认开启的是22端口,同样可以比喻为想开车出去玩,在高速路通了以后,要确认旅游景点是否开放。
(4)系统中的SSHD服务是否正常开启,端口是否正确
具体命令为:
[root@www ~]# netstat -lntup|grep sshd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 7337/sshd
tcp6 0 0 :::22 :::* LISTEN 7337/sshd
(5)检查连接的客户端,例如Xshell连接的IP、端口、协议等是否填写正确。
2. SSH远程连接故障排查思路逻辑图
为了让大家能够更形象地了解SSH远程连接故障排查思路,下面特用图解来说明相应的逻辑,如图3-23所示。
图3-23 SSH远程连接故障排查逻辑图
表3-5所示的内容为SSH故障排查思路小结。
表3-5 SSH故障排查思路 Linux/Unix技术丛书·跟老男孩学Linux运维:核心基础篇(上)(第2版)