实现Xshell与虚拟机中Linux服务器的连接(附常见错误解决)

前言

Xshell是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。Xshell 通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。
本文将介绍Xshell与虚拟机中Linux服务器连接的步骤,以及在连接过程中出现的问题和解决方法。

在这里插入图片描述

准备工作

Xshell的下载

本地机下载Xsell,大家可以直接去官方网站上下载,也可以通过网盘下载。

通过网盘分享的文件:Xshell
链接: https://pan.baidu.com/s/1VSt_CQAgE2etUzbj9QAUCQ?pwd=mp5d 提取码: mp5d

Xshell的下载安装步骤比较简单,在此不做赘述。

虚拟机的安装以及Linux服务器的创建

虚拟机的安装以及Linux服务器的创建 可点击参考这篇文章

获取服务器的IP地址

我们打开创建好的Linux服务器,输入ifconfig,此时会出现Linux服务器的网卡信息,包括IP地址,子网掩码等 ,记住IP地址。

在这里插入图片描述

如果没有显示出网卡信息,点击参考这篇文章。如果是按照参考文章进行配置的信息,千万不要忘记reboot重启服务器。

注意 :如果是虚拟机的Linux系统,建议将其配置成静态IP,因为dhcp地址池在虚拟机启动时有时会自动分配新的IP地址给服务器,这样原来可以连接的IP就连不上了。

配置完成静态IP以后,检查下本地机是否可以同Linux服务器进行通信,以及能否上网。如果无法连通本地机,也无法上网的话请点击参考这篇文章。(实现本地机和Linux服务器之间的通信的相关配置在该文章中均有介绍
在这里插入图片描述

开始连接

然后我们打开Xshell,点击新建——》会话。然后输入一个名称,再输入主机地址(也就是虚拟机中网卡的IP地址),端口号选择默认的22端口即可,最后点击确定。
在这里插入图片描述

此时在会话对话框中会出现我们刚创建好的会话,选中该会话点击连接即可。

在这里插入图片描述

首次连接会出现密钥的生成以及确认,点击接受并保存,接着根据提示框输入用户名和密码即可。

正常来说,做到这里已经可以完成连接了,左上角的小绿灯应该是亮起来的,也就是如图:

在这里插入图片描述

但是有的伙伴可能已经发现,在我连接成功之前是出现了N次连接失败的情况,这也就是接下来我所说的问题解决。
以下是通过上网搜索(一上午。。。)以及不断踩坑找到的解决方法,希望能提供些方法。

Xshell连接失败问题

明明每一步都是按照教程来的,为什么自己就成了买家秀了呢?上网搜寻了一下,发现可能是我之前的配置影响到了虚拟机的网卡设置。

在这里插入图片描述

最终的方法:还原默认设置

这里我先说一下最终解决办法,如果说后面介绍到的原因(重启VMware、Linux服务器、Xshell;Linux服务器的ssh服务未开启;防火墙没有关闭,默认端口没有开放等)你都试验过了并且无效时,那就试试该方法。
先关上刚打开的Linux客户机,在虚拟机中找到编辑——》虚拟网络编辑器——》更改设置——》还原默认设置

在这里插入图片描述

点击后出现一个比较吓人的弹窗,不要怕,点它(大不了重新创建一个,毕竟你也习惯了是吧)。
在这里插入图片描述

然后等待一会。。。

然后再次打开Linux客户机,输入ifconfig,再次查看新的IP地址,我们把这个IP地址直接输入到Xshell新建会话中的主机框内,步骤和上面创建新建会话的步骤一样,再次点击连接,此时就可以完成连接了。这也是我本次遇到问题的解决方法。那么下面的一些是网上常见的解决手段。

重启Linux客户机、VMware、Xshell

再不行重启下电脑

开启ssh服务

因为我们本次使用的是SSH连接,因此在Linux服务器端需要开启SSH服务。你可以查看下ssh服务的状态

systemctl status sshd

显示running的表示正在运行,可以就说明你的SSH服务已经开启,可以看看防火墙是否关闭
在这里插入图片描述如果是SSH已经安装过了,你可以使用如下命令启动

sudo systemctl start sshd

如果显示的其他信息,比如

[root@localhost dongliuyu]# systemctl status ssh
Unit ssh.service could not be found.

就说明你的Linux服务器上并没有安装SSH服务,如果你已经安装过yum包了,那么你可以直接通过以下命令安装SSH 服务:

检查是否存在yum包,如果已经安装过,会出现yum的版本信息
yum --version
通过yum安装SSH服务
sudo yum install openssh-server

安装完成后会出现以下信息
在这里插入图片描述

未安装yum包

方式一:直接使用wget下载(前提是你的虚拟机上中的服务器是可以正常联网的)

#进入系统YUM源的目录,查看该目录下有多少yum源
cd /etc/yum.repos.d

我的只有一个之前安装过的yum源,但是很多软件都无法安装了,因此下载一个新的yum源
在这里插入图片描述

本文我们用的是阿里源,阿里源的网址是:https://mirrors.aliyun.com/repo/,你可以找到适合自己的版本进行下载,以下是下载命令,你只需要将后面的版本改成自己的而即可。

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

安装完成以后你可以查看当前目录下yum的个数
在这里插入图片描述
在这里插入图片描述ok,现在你就可以使用yum安装软件了。
比如你可以下载lrzsz插件,实现本地文件通过Xshell上传到虚拟机。

yum install lrzsz

在这里插入图片描述此时当你在Xshell中输入rz,即可打开你的本地文件夹,你可以选取需要上传到服务器的文件。
在这里插入图片描述

方式二:(这种方法不推荐,一般都是在线安装yum源,也就是方式一)
你可以通过以下两个镜像网站下载你所需要的yum包,再通过命令解压安装。
网站一
网站二

下载时注意下目录,方便后面的解压和安装

在这里插入图片描述

安装完成yum包后即可使用yum安装SSH,并开启服务。

关闭防火墙

先检查下Linux服务器的防火墙是否关闭:

firewall-cmd --state

在这里插入图片描述
我们可以选择关闭防火墙

临时关闭
sudo systemctl stop firewalld
永久关闭
sudo systemctl disable firewalld

我们再次检查下防火墙的状态,显示not running即可。

服务器终端打不开或闪退

另外,如果是你的Linux服务器终端无法打开,一般是因为你的语言选择和服务器本身编码不同造成的,这应该和你所安装的Linux镜像有关。可以通过setting中的语言模块进行设置:
在这里插入图片描述

我这里改成英文状态就可以了,系统会提示你重新进入账号,重新登录即可。

在这里插入图片描述

然后就可以开心的使用终端输入命令行了!

以上就是Xshell和虚拟机中Linux服务器无法连接的解决方法,如有不足,感谢补充。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/881081.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Web APIs——Dom获取属性操作

1.变量声明 1.1以后声明变量我们优先使用哪个? const 有了变量先给const,如果发现它后面是要被修改的,再改为let 1.2 为什么const声明的对象可以修改里面的属性? 因为对象是引用类型,里面存储的是地址&#x…

自动驾驶核心技术:感知融合、规划决策、控制执行

1、前言 简单来说,实现自动驾驶需要解决三个核心问题:“我在哪?我要去哪?我该如何去?”能完整解决这三个问题就是真正的自动驾驶。 目前,自动驾驶汽车关键技术主要包括环境感知、精准定位、决策与规划、控制与执行、高精地图与车联网V2X以…

大学生就业招聘:Spring Boot系统的设计与实践

5系统详细实现 5.1 用户模块的实现 5.1.1 求职信息管理 大学生就业招聘系统的用户可以管理自己的求职信息,可以对自己的求职信息添加修改删除操作。具体界面的展示如图5.1所示。 图5.1 求职信息管理界面 5.1.2 首页 用户登录可以在首页看到招聘信息展示也一些求职…

Flet介绍:平替PyQt的好用跨平台Python UI框架

随着Python在各个领域的广泛应用,特别是在数据科学和Web开发领域,对于一个简单易用且功能强大的用户界面(UI)开发工具的需求日益增长。传统的Python GUI库如Tkinter、PyQt虽然功能强大,但在易用性和现代感方面略显不足…

算法篇1:双指针思想的运用(1)--C++

一.算法解析 双指针,顾名思义就是两个指针,常见的算法中,我们可以看到两种: 1.对撞指针:一般用于顺序结构,也称为左右指针。 对撞指针从两端向中间移动。一个指针从最左端开始,另一个从最右端…

比较搜索难度曲线5s1-4和4s1

在行列可自由变换的条件下,平面上的5点结构只有34个,4点结构有16个 (A,B)---6*n*2---(0,1)(1,0) 让B全是0。当收敛误差为7e-4,收敛199次取迭代次数平均值。让隐藏层节点数n分别为10,15,20,25,30&#xff…

C(十四)while、for、do-while循环综合(一)

uu们,小弟我本科在读,文章我会一直坚持更新下去,包括但不限于C初阶、C进阶、数据结构、C、Linux、MySQL、项目、QT开发、各种算法(之后会持续更新),并且站在小白的视角尽可能通俗易懂地把这些写出来&#x…

【Android】获取备案所需的公钥以及签名MD5值

目录 重要前提 获取签名MD5值 获取公钥 重要前提 生成jks文件以及gradle配置应用该文件。具体步骤请参考我这篇文章:【Android】配置Gradle打包apk的环境_generate signed bundle or apk-CSDN博客 你只需要从头看到该文章的配置build.gradle(app&…

25重庆长安深蓝控制器开发面试经验 深蓝最常见面试问题总结

【面试经历】 秋招气氛组选手的第一场面试,9.17网申,9.24电话约面,9.26线上面试。问得很细,全长约1个小时 1. 自我介绍、项目介绍 2.项目细节,遇到了哪些困难;有没有PCB设计经验DC-DC芯片选型,电源噪声的原因、怎么消除、 3.画BUCK和BOOST拓扑图,讲原理 4.了解MCU的主…

西电25考研 VS 24考研专业课大纲变动汇总

01专业课变动 西安电子科技大学专业课学长看到953网络安全基础综合变为 893网络安全基础综合,这是因为工科要求都必须是8开头的专业课,里面参考课本还是没变的,无非就是变了一个名字 对于其他变动专业课也是同理的 02专业课考纲内容变化 对于…

uniapp中检测应用更新的两种方式-升级中心之uni-upgrade-center-app

uniapp一个很是用的功能,就是在我们发布新版本的app后,需要提示用户进行app更新,并告知用户我们新版的app更新信息,以使得用户能及时使用上我们新开发的功能,提升用户的实用度和粘性。注意:这个功能只能在app端使用 效…

创建django项目时,不同的编译类型有什么区别

这里主要提及的是 project venv 和 Custom environment 两种类型。 简单来说,project venv 是Python 3.3及以上版本中自带的虚拟环境管理工具,使用venv可以为每个项目创建一个独立的环境:python -m venv myprojectenv (项目名后e…

【3D目标检测】激光雷达和相机联合标定(一)——ROS同步解包

ROS同步解包 引言1 鱼香ROS一键安装ros-docker脚本:2 指定目录映射3 数据解包3.1 解包脚本3.2 依赖安装3.3 运行脚本,解包 引言 总结步骤如下: 采集同步数据:ROS录制(推荐),或者代码同步触发采…

如何使用工具删除 iPhone 上的图片背景

在 iPhone 上删除背景图像变得简单易行。感谢最近 iOS 更新中引入的新功能。如今,iOS 用户现在可以毫不费力地删除背景,而无需复杂的应用程序。在这篇文章中,您将学习如何使用各种方法去除 iPhone 上的背景。这可确保您可以选择最适合您偏好的…

通信工程学习:什么是IP网际协议

IP:网际协议 IP网际协议(Internet Protocol,简称IP)是整个TCP/IP协议栈中的核心协议之一,它负责在网络中传送数据包,并提供寻址和路由功能。以下是对IP网际协议的详细解释: 一、对IP网际协议的…

哈尔滨自闭症学校寄宿条件与优势解析

自闭症儿童的希望之光:广州星贝育园寄宿制学校深度解析 在当今社会,自闭症儿童作为一群需要特别关注和照顾的群体,其教育与康复问题日益受到社会各界的重视。自闭症儿童不仅需要专业的康复训练,还需要一个稳定、温馨且充满爱的环…

Java:插入排序

目录 排序的概念 插入排序 直接插入排序 哈希排序 排序的概念 排序:所谓的排序,就是使一串记录,按照某个或某些关键字的大小,递增或递减的排列起来的操作。 稳定性:假定在待排序的记录序列中,存在多个…

【设计模式-解释模式】

定义 解释器模式是一种行为设计模式,用于定义一种语言的文法,并提供一个解释器来处理该语言的句子。它通过为每个语法规则定义一个类,使得可以将复杂的表达式逐步解析和求值。这种模式适用于需要解析和执行语法规则的场景。 UML图 组成角色…

Redis中String类型的常用命令(append,getrenge,setrange等命令)

Redis----String命令 前言.常见的String存储类型. 常见命令1. set 命令2. get 命令3. mget命令与mset命令4. setnx命令5. setex与psetex命令6. incr与incrby与incrbyfloat命令7. decr与decrby命令8. append命令9. getrange和setrange命令10. strlen命令. 前言. 常见的String存…

关于Generator,async 和 await的介绍

在本篇文章中我们主要围绕下面几个问题来介绍async 和await 🍰Generator的作用,async 及 await 的特点,它们的优点和缺点分别是什么?await 原理是什么? 📅我的感受是我们先来了解Generator,在去…