远程SSH连接服务与基本排错

为什么要远程连接Linux系统??

在实际的工作场景中,虚拟机界面或物理服务器本地的窗口都是很少能够接触到的,因为服务器装完系统后,都要拉到IDC机房托管,如果是购买了云主机,更碰不到服务器本地显示器了,此时,只能通过远程连接的方式管理Linux系统。因此,在装好linux系统后,学习Linux运维的第一步应该是配置好客户端软件远程(通过ssh软件进行连接)连接Linux系统进行管理

远程SSH连接服务与基本排错

telnet连接服务器是明文的,非加密的; 默认为23端口

SSH连接服务器是加密的连接; 默认为22端口

ssh连接示意

服务器端===>通过ssh协议提供===>守护进程sshd监听22端口(不断的监听是否有人需要服务)

客户端(客户):ssh协议,ip地址,端口号(需要什么服务),用户名,密码

远程SSH连接服务与基本排错

如何查看Linux系统的IP地址??

远程SSH连接服务与基本排错

如图所示,我的Linux系统IP为192.168.179.133。

可以通过这两个命令来查看IP地址
ip地址/24:代表子网掩码255.255.255.0
lo:回环网卡:用于检测设备自测
eth0:你的第一块网卡
eth1:你的第二块网卡

ifup 网卡名与ifconfig 网络名 up的区别

假如你发现你的虚拟机没有IP地址的话,那么也许你的网卡设备处于关闭状态

远程SSH连接服务与基本排错

方法一:ifup + 网卡名(ethx) 可以开启设备

方法二:ifconfig +网卡名(ethx)+ up 也可以开启设备

远程SSH连接服务与基本排错

讨论

既然这两个命令都能开启成功,那么它们到底有没有区别呢?请跟随我来做个实验。

第一步:我们删掉eth1网卡的配置文件

远程SSH连接服务与基本排错

/etc/sysconfig/network-scripts/:这个路径是网卡配置文件的路径,作为运维人员我们是必须熟记得

第二步,我们关闭eth1这个网卡设备

远程SSH连接服务与基本排错

第三步,我们尝试开启这个设备

远程SSH连接服务与基本排错

继续讨论

为什么我们的试验结果是这样的呢?当我删除了eth1这个网卡的配置文件,ifup这个命令就失灵了?

这是因为,ifup/ifdown这个命令控制的实际上并不是物理网卡的开启和关闭,而实际上他控制的仅仅是网卡的配置文件而已,它是通过网卡配置文件间接的操作网卡设备

ifconfig xxxx up/down:则是控制物理网卡设备的开启和关闭,因此并不受配置文件的干扰。

CRT远程连接的基本原理

我们在前几节中提到过,sshd这个服务,实际上是服务器的一个守护进程。

正是因为存在这个守护进程,因此服务器的22端口才会持续不断的被监听(监视)

当CRT通过ssh协议访问服务器的22端口的时候,服务器的sshd服务才会马上回应这个访问,因此才能进行远程连接

故,当服务器不存在sshd(把进程kill掉)这个服务时,xshell是无法通过ssh协议进行远程访问的。

远程SSH连接服务与基本排错

当我远程用CRT执行命令kill 1486进程后,只剩下当前CRT连接Linux的sshd进程(Pid=19130)。即 我若想在CRT再开一个会话连接Linux,是绝对连不上的

如果服务器端sshd服务被未运行,那么所有通过ssh协议的访问都将失败(包含xshell,CRT)

sshd这个服务监听的不再是22端口时(通过配置文件可以改),CRT必须切换到它监听的端口进行访问才能正确连接。

远程SSH连接服务与基本排错

总结:

ifconfig + 网卡名:可以查看开启状态的网卡的IP地址(看不到关闭状态的网卡设备)

ip a:可以查看所有网卡的IP地址(还能看到关闭状态的网卡)

ip link:可以查看所有网卡的物理状态

ifup/ifdown + 网卡名:通过网卡配置文件来开启和关闭网卡设备

ifconfig 网卡名 up/down:直接关闭和开启网卡设备。

通过kill + Pid号 或者pkill + 服务名称 来杀掉进程

sshd服务的配置文件路径:/etc/ssh/sshd_config

网卡的配置文件路径:/etc/sysconfig/network-scripts/ifcfg-网卡名

netstat -antup或ps -ef :可以用来查看当前服务器开启的所有服务

故障排查(通过ssh工具无法连接Linux主机)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/6720e2fb3100ac8a9b20421596e3b5b0.html