使用XShell、XFTP 连接 win7 虚拟机(windows、Linux无法远程登录问题) 您所在的位置:网站首页 虚拟机无法访问ftp 使用XShell、XFTP 连接 win7 虚拟机(windows、Linux无法远程登录问题)

使用XShell、XFTP 连接 win7 虚拟机(windows、Linux无法远程登录问题)

2023-11-07 03:05| 来源: 网络整理| 查看: 265

文章目录 前言出错原因(题外话)那么我们为什么要使用 SSH 连接开始操作(Windows7)首先进行 SSH 测试获取所需的openSSH文件安装openSSH添加环境变量ssh测试发布ssh服务 开始操作(Linux,以Ubuntu为例)

前言

(更新:可以通过此文章解决三个问题:使用Windows/linux远程连接Linux或Windows,但无法连接,可以对Windows检查ssh,对Linux检查sshd) 首先,你看到这篇文章的原因可能是如下两个(此篇我们以Windows7为例,因为win10ssh一般是开着的):

还没有尝试使用 [XShell 连接 Windows 7 系统(此篇文章针对 Windows7 虚拟机,但如果主体电脑是 Windows 7 系统作为服务器的话,原理也应该是差不多的)。尝试使用 XShell 连接了 Windows 7 系统,但是连接失败(是的,就是我 )。 在这里插入图片描述

OK,下面我们就开始解决该连接失败问题!!!

出错原因

科普 tips:Linux 中查看网络状态使用命令 ifconfig(终端),Windows 中则使用 ipconfig(命令行) (使用XShell、XFTP连接虚拟机或者服务器教程 )

在这里插入图片描述 由此图可见(通过上面的命令先找出我们的IPV4的IP地址),出现问题的地方有几处:

SSH 协议,因为 WIndows 7 的 SSH 、sshd默认是关闭的(也可能是没有安装)。端口号 22:我们使用SSH(安全登录)、SCP(文件传输)、端口号重定向,默认的端口号为22,所以有可能是因为 22 端口没有打开,所以连接不到。原因 2 的另一种理解:Windows 的防火墙会默认阻止一些网络上的数据,所以你会发现使用 Windows 主机 ping Linux 虚拟机可以顺利 Ping 通,但是反过来却会发现传送数据超时,Ping 不通。 (题外话)那么我们为什么要使用 SSH 连接

       在 windows 上使用 ssh 协议是因为该协议通过 tcp22 端口,服务器、路由器、交换机、sftp 等不安全的程序通过该端口都可以用于帮助加强连接以防止窃听。目前 ssh 协议大多用在 linux 系统中,但 SSH 协议本身实际上是在各种各样的系统上实现的,虽然在 windows 操作系统中不是默认开启的,但开启后可以和 linux 操作系统一样简单方便的使用 ssh 协议来连接服务器等。

开始操作(Windows7) 首先进行 SSH 测试

先在Windows中进行 ssh 命令测试,如果出现下面这样的结果,则继续阅读,否则可以跳过下面下载ssh 的步骤。(win+R输入cmd,回车,然后输入ssh) 在这里插入图片描述 出现该结果说明没有ssh,下面进行安装。click me 跳转

获取所需的openSSH文件

在Windows7的浏览器(刚安装之后默认是IE)中的地址栏搜索:https://github.com/PowerShell/Win32-OpenSSH/releases 估计加载不出来,IE,你懂得,所以最好的方式是先打开www.baidu.com,然后搜索一款可以打开下载页面的浏览器(不知道为什么下载火狐的页面打不开,估计是IE的一些访问设置,搞起来挺累,我就直接下载了猎豹安全浏览器,后面再卸载就行),看下图,进去之后点击立即下载,然后选择运行或者保存即可。 在这里插入图片描述 然后打开你刚下载的浏览器,输入前面的那个 GitHub网址搜索,要等待一段时间,或者时间长不出来就换个网试试。(一段时间后,没错,我又在猎豹里面下载了 Firefox(火狐),没办法,猎豹页面可以出来,但是下安装包的地方出不来) ,Firefox进入页面后,选择32 位或者 64 位均可,此处选择 64位(点击之后会弹出下载页面,要是没有弹出来可能是默认下载路径了,直接到浏览器里面的“下载”页打开查看下载进度,亲测,我无脑一直点,下载了好多个~~~):

等待时间可以下载个解压软件,推荐band.zip 在这里插入图片描述 在这里插入图片描述

更新:一个博主的方法,但是我没有进行准确度测试,稳妥就选我的方式,想玩玩儿的可以看一看试验下:提升访问github.com网址的速度

安装openSSH

下载完成后进行解压,并把openSSH整个目录进行复制到 C:\Program Files (其实哪个目录都可以,不过建议安装在这里,免得出问题) 在这里插入图片描述 在这里插入图片描述

添加环境变量

单击计算机,右键——>属性——>高级系统设置——>环境变量——>系统变量,在此框里面找到 Path 进行编辑, 将路径“C:\Program Files\OpenSSH-Win64”添加进去。 在这里插入图片描述 在这里插入图片描述 如果是win10的话直接“新建”——>然后添加即可。 在这里插入图片描述

(没有计算机图标的可以桌面右键“个性化”——>“左上方更改桌面图标”——>选中计算机前的框——>应用,确定) 在这里插入图片描述

ssh测试

接着就可以进行ssh测试了(重新打开一个命令行窗口),出现下图输出证明安装成功!但是此时还是不能远程连接登录。 在这里插入图片描述

发布ssh服务

依次在命令行(在开始菜单下面输入cmd,然后选中右键“以管理员身份运行”)中输入以下命令(觉得麻烦可以在做该设置的虚拟机中的浏览器打开本文章直接copy):

# #的部分均为注释部分,不用理会 cd C:\Program Files\OpenSSH-Win64\OpenSSH-Win64 #必须先转到我们之前加入到环境变量中的路径下,即:ssh的文件夹内部,不然后面的步骤会报错 powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1 #安装sshd服务 netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22 # 开放22号端口(如果你在windows关闭了防火墙并配置了入站规则可以不执行如下命令,多执行不影响) sc config sshd start= auto #配置开机自启动sshd服务 net start sshd # 开启服务

以下为每一步的截图: 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

OK!到这一步做完就差不多了,接着验证一下22号端口是否处于 listening 状态。 使用命令 netstat -an 在这里插入图片描述 成功!接着就可以顺利使用xshell进行远程连接或者使用xftp进行传文件了。 在这里插入图片描述 在这里插入图片描述

连接的时候要是重复向你弹出SSH拒绝了密码之类的话证明要么是你用户名填错了,要么是你填的用户名没有设置密码(没错是我),记得回去重设密码再登录。 在这里插入图片描述

开始操作(Linux,以Ubuntu为例)

其实吧,SSH可以理解为client,sshd可以理解为server,因为咱们是用Windows去远程连接Linux系统,某种程度上说,被远程连接的这个机子就是咱们的服务器,所以sshd说是要打开的(不知道理解的对不对,我是这么感觉的)

此处操作均已Ubuntu为例,其他的Linux发行版可能shell命令会有所不同,但原理是一样的(为了防止意外错误,可以先转换到root用户下再操作,Ubuntu默认无root,使用 sudo passwd 设置新密码,然后使用 su root输入并新密码进入root用户 )。

检查ssh是否打开ps -e | grep ssh(在终端(terminal)中输入) 应该是没有ssh出现,因为出现了就证明你可以用xshell连接成功,或者问题不是这个 在这里插入图片描述

安装SSH(如果已存在则跳过该步骤) (1) apt-get 可以使用的情况下:           使用如下命令安装:

su root //需要先切换为root用户下才有权限,已切换则不用 // 输入密码 // 一般情况下下面这两步操作是可以不做的 apt-get update //apt-get update是同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。只是更新了apt的资源列表,没有真正的对系统执行更新 apt-get upgrade //进行升级, 过程中需要输入一次 y //进行安装 apt-get install ssh

(2)如果发现在使用如apt-get install ssh 或者sudo apt-get install ssh 等一些命令时无法安装,出现 “unable to locate package xxx” 或是 “Unit sshd.service could not be found” 这样的错误,则使用下面的命令安装ssh

//找一个存放ssh文件的目录 cd /home mkdir myssh cd myssh/ //安装 wget http://ftp.jaist.ac.jp/pub/OpenBSD/OpenSSH/portable/openssh-5.9p1.tar.gz //下载安装包 tar xzvf openssh-5.9p1.tar.gz //解压 此处的5.9版本无用在意,会自动在上一步的网址中下载最新版本,只需要输入open然后用tab键自动补全即可 cd openssh-5.9p1 //进入目录 //配置的过程我也是第一次尝试,不确定每一步的原理与结果,所以有的结果可能会有报错,此处只记录我的解决过程,反正结果是好的 ./configure ./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/usr/local/openssl --with-md5-passwords --mandir=/usr/share/man --with-zlib=/usr/local/zlib2 make make install //查看版本确定是否已经可用 ssh -V //此处应该是直接进行配置文件的设定的,但是此时打开所谓的 /etc/ssh/sshd_config 文件时发现内容很少,很多的配置都是不存在的情况,此时需要再次安装 sudo apt-get install openssh-server //安装ssh服务端 sudo apt-get install openssh-client //安装ssh客户端 systemctl status sshd //查看sshd的状态,在active可以看到绿色文字 running vim /etc/ssh/sshd_config //查看配置文件,将PermitRootLogin yes加上,查看一下就行,估计是有的,我反正没做这步操作,可跳过,如果后面的步骤不顶用,再回过头设置 //此时可以使用xshell等软件进行远程登录连接,应该是可行的 如果不行则重新启动(紫色字体部分) systemctl start ssh //启动ssh服务 ,使用 service sshd start 也一样 systemctl restart ssh //重启ssh服务 systemctl stop ssh // 停止ssh服务 // 设置ssh服务开机自启动 sudo systemctl enable ssh

请添加图片描述 请添加图片描述 请添加图片描述 请添加图片描述 请添加图片描述

在这里插入图片描述

参考文章:

Linux中使用SSH服务远程连接Linux系统 window server如何卸载openssh 虚拟机上的各个端口号代表的意思 为什么在 Windows 上用 SSH 在Windows 10中打开远程桌面连接的5种方法 -File参数的参数’install-sshed.ps1‘不存在| powershell Windows7之SSH,安装OpenSSH实现SSH客户端及服务 Xshell7远程连接失败(connection failed)的问题解决 Linux系统下OpenSSH的安装及基本配置文件详解 Linux安装OpenSSH与SSL Unit sshd.service could not be found Ubuntu 无法连接xshell的问题

写在最后: 首先,如果本篇文章有任何错误,烦请读者告知!不胜感激! 其次,本篇文章仅用于日常学习以及学业复习,如需转载等操作请告知作者(我)一声! 最后,本文会持续修改和更新,如果对本分栏的其他知识也感兴趣,可以移步目录导航专栏,查看本分栏的目录结构,也更方便对于知识的系统总结! 兄弟姐妹们,点个赞呗! 感谢!笔芯!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有