前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >几步命令轻松搭建Windows SSH服务端

几步命令轻松搭建Windows SSH服务端

作者头像
乐百川
发布2020-04-08 16:57:36
6.7K0
发布2020-04-08 16:57:36
举报

这里说的SSH,全名叫做Security Shell,相信经常用Linux的同学不会陌生。SSH最常见的作用就是用来远程登录其他系统的命令行界面,当然主要还是给Linux用户使用的。但是其实现在Windows 10已经自带了OpenSSH功能,这样一来,我们就可以在Windows下安装和使用SSH的相关功能了。下面来看看怎么来安装吧。

查看系统版本

首先确定你的系统是否是Windows 10 1809或者更新的系统,如果不是的话,先更新系统,把系统更新到最新状态。

查看系统版本也十分简单,打开开始菜单,选择设置,然后选择系统->关于,即可在最下面找到系统版本号。

系统版本号
系统版本号

又或者,你喜欢命令行的话,也可以从powershell运行下面的命令来查看版本号。

代码语言:javascript
复制
(Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion").ReleaseId

安装OpenSSH

确定了版本号,下面就来安装OpenSSH。安装方式也很简单,还是从开始菜单进入Windows设置,这次选择应用->应用和功能->可选应用->添加功能进入。

可选应用
可选应用

然后找到OpenSSH服务端和客户端,安装这两项。

安装OpenSSH
安装OpenSSH

如果你喜欢简洁的命令行的话,同样简单,先运行下面的命令查看一下OpenSSH功能。

代码语言:javascript
复制
# 先查看一下软件
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

# 应该会展示以下输出,注意版本号将来可能会变,安装的时候注意

Name  : OpenSSH.Client~~~~0.0.1.0
State : NotPresent
Name  : OpenSSH.Server~~~~0.0.1.0
State : NotPresent

然后安装它们即可。

代码语言:javascript
复制
# 安装客户端
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

# 安装服务端
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

# 它们的输出应该类似下面这样

Path          :
Online        : True
RestartNeeded : False

结果和图形界面安装的完全相同。不管采用哪种方式,你现在都拥有了OpenSSH功能了。

启动SSH服务端

下面打开管理员权限的powershell窗口,这次输入下面的命令来查看刚刚安装的OpenSSH服务,下面的sshd就是OpenSSH的服务端了。

代码语言:javascript
复制
Get-Service *|where Name -Like '*ssh*'

Status   Name               DisplayName
------   ----               -----------
Stopped  ssh-agent          OpenSSH Authentication Agent
Stopped  sshd               OpenSSH SSH Server

简单启动该服务即可。

代码语言:javascript
复制
Start-Service sshd

下面就可以用OpenSSH的客户端来连接了,直接在powershell窗口(无需管理员)中输入以下命令即可。这里需要提醒一下,如果你用的是微软账号(也就是微软邮箱)创建和登录用户的话,用户名会被截断为邮箱@符号前面的一部分,具体来说就是你用户文件夹的名字,这也是微软做的比较坑人的一点。

代码语言:javascript
复制
ssh 你的用户名@localhost

然后你应该就会看到命令提示符发生了变化,提示你现在已经进入到了SSH环境中。虽然这个环境还是你的本机。如果你在这个环境里运行命令,应该还会发现,这是一个cmd窗口,而不是powershell终端窗口。

SSH环境
SSH环境

使用SFTP替代FTP

好吧,到这里你可能会产生一个问题,虽然这样我们成功得到了在Windows上运行的OpenSSH服务端,但是它有什么用呢?这个问题问的很好,坦白来说,其实它确实没什么用,但是如果对比来说的话,却是FTP的完美替代产品。

FTP大家应该经常用的吧。我原来就非常喜欢在Windows上开一个IIS服务器,用它来创建FTP服务器来传输文件。相信很多人都会这样用的。但是FTP作为一个老协议,最大的问题就是没有加密,所有流量都是公开传输的,很容易被截获并读取。这时候最好用SFTP来替代,虽然它名字很接近,但是其实和FTP没有任何关系,因为SFTP是基于刚刚介绍的SSH协议的。

那么SFTP怎么用呢?其实很简单,我们刚刚搭建好的OpenSSH服务端自带SFTP支持,所以现在就已经搭建好了SFTP了。用法很简单,打开FileZilla或者WinSCP这样的FTP客户端软件,打开协议的下拉列表,就可以看到SFTP这个选项。只需要用鼠标轻轻一点这个选项,我们就获得了安全、加密、高效的传输协议!

SFTP选项
SFTP选项

另外,如果你是Linux用户,也不要再Linux上面安装vsftpd这类FTP服务端了,同样不安全,还多此一举。直接用你SSH登录Linux的用户名和密码,随便找一个FTP客户端软件(基本都支持SFTP协议),登录即可。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 查看系统版本
  • 安装OpenSSH
  • 启动SSH服务端
  • 使用SFTP替代FTP
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档