- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章几步命令轻松搭建Windows SSH服务端由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
这里说的ssh,全名叫做security shell,相信经常用linux的同学不会陌生。ssh最常见的作用就是用来远程登录其他系统的命令行界面,当然主要还是给linux用户使用的。但是其实现在windows 10已经自带了openssh功能,这样一来,我们就可以在windows下安装和使用ssh的相关功能了。下面来看看怎么来安装吧.
查看系统版本 。
首先确定你的系统是否是windows 10 1809或者更新的系统,如果不是的话,先更新系统,把系统更新到最新状态.
查看系统版本也十分简单,打开开始菜单,选择设置,然后选择系统->关于,即可在最下面找到系统版本号.
又或者,你喜欢命令行的话,也可以从powershell运行下面的命令来查看版本号.
1
|
(get-itemproperty "hklm:\software\microsoft\windows nt\currentversion").releaseid
|
安装openssh 。
确定了版本号,下面就来安装openssh。安装方式也很简单,还是从开始菜单进入windows设置,这次选择应用->应用和功能->可选应用->添加功能进入.
然后找到openssh服务端和客户端,安装这两项.
如果你喜欢简洁的命令行的话,同样简单,先运行下面的命令查看一下openssh功能.
1
2
3
4
5
6
7
8
9
|
# 先查看一下软件
get-windowscapability -online | ? name -like 'openssh*'
# 应该会展示以下输出,注意版本号将来可能会变,安装的时候注意
name : openssh.client~~~~0.0.1.0
state : notpresent
name : openssh.server~~~~0.0.1.0
state : notpresent
|
然后安装它们即可.
1
2
3
4
5
6
7
8
9
10
11
|
# 安装客户端
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的服务端了.
1
2
3
4
5
6
|
get-service *|where name -like '*ssh*'
status name displayname
------ ---- -----------
stopped ssh-agent openssh authentication agent
stopped sshd openssh ssh server
|
简单启动该服务即可.
1
|
start-service sshd
|
下面就可以用openssh的客户端来连接了,直接在powershell窗口(无需管理员)中输入以下命令即可。这里需要提醒一下,如果你用的是微软账号(也就是微软邮箱)创建和登录用户的话,用户名会被截断为邮箱@符号前面的一部分,具体来说就是你用户文件夹的名字,这也是微软做的比较坑人的一点.
1
|
ssh
你的用户名@localhost
|
然后你应该就会看到命令提示符发生了变化,提示你现在已经进入到了ssh环境中。虽然这个环境还是你的本机。如果你在这个环境里运行命令,应该还会发现,这是一个cmd窗口,而不是powershell终端窗口.
使用sftp替代ftp 。
好吧,到这里你可能会产生一个问题,虽然这样我们成功得到了在windows上运行的openssh服务端,但是它有什么用呢?这个问题问的很好,坦白来说,其实它确实没什么用,但是如果对比来说的话,却是ftp的完美替代产品.
ftp大家应该经常用的吧。我原来就非常喜欢在windows上开一个iis服务器,用它来创建ftp服务器来传输文件。相信很多人都会这样用的。但是ftp作为一个老协议,最大的问题就是没有加密,所有流量都是公开传输的,很容易被截获并读取。这时候最好用sftp来替代,虽然它名字很接近,但是其实和ftp没有任何关系,因为sftp是基于刚刚介绍的ssh协议的.
那么sftp怎么用呢?其实很简单,我们刚刚搭建好的openssh服务端自带sftp支持,所以现在就已经搭建好了sftp了。用法很简单,打开filezilla或者winscp这样的ftp客户端软件,打开协议的下拉列表,就可以看到sftp这个选项。只需要用鼠标轻轻一点这个选项,我们就获得了安全、加密、高效的传输协议! 。
另外,如果你是linux用户,也不要再linux上面安装vsftpd这类ftp服务端了,同样不安全,还多此一举。直接用你ssh登录linux的用户名和密码,随便找一个ftp客户端软件(基本都支持sftp协议),登录即可.
到此这篇关于几步命令轻松搭建windows ssh服务端的文章就介绍到这了,更多相关搭建windows ssh服务端内容请搜索我以前的文章或继续浏览下面的相关文章希望大家以后多多支持我! 。
原文链接:https://segmentfault.com/a/1190000022248357 。
最后此篇关于几步命令轻松搭建Windows SSH服务端的文章就讲到这里了,如果你想了解更多关于几步命令轻松搭建Windows SSH服务端的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。 10年前关闭。 Improve this qu
我错误地设置了 ssh key 的密码。 但是每次使用 key 时都要输入密码很烦人。 我想删除我的 key 的密码: $ ssh-keygen -p -f 但是,我担心 key 会被更改。 由于我
你好!我在连接到远程主机时遇到问题。我忘记了 ssh 密码,但我有 SSH key 的指纹。是否可以仅使用指纹进行连接? 最佳答案 不会。机器的指纹仅用于验证您正在连接您认为正在连接的机器。它是用于避
我有一个 Ubuntu 服务器 example.com 并且我已经通过 ssh 进入了它。但只有在我通过 ssh 进入它之后,我才意识到我打算执行 ssh -L 8000:localhost:9000
通过终端,我可以多次 SSH 连接到服务器: (客户端--->网关--->服务器1---->服务器2---) 但是现在要通过Java的JSch库来实现,怎么办呢?首先尝试了端口转发,但在终端上我没有这
在创建一个新的仓库(本地 + 远程)之后,我正在尝试推送提交。但是我遇到了 SSH key 的问题 在我的 ~/.ssh/config 中,我有一个 gitlab 条目定义为 Host MyRepoJ
我发现 ssh 和 ssh-keygen 有一种奇怪的行为:它们根本没有反应。 Cygwin 以管理员权限启动并正常运行。主机 192.168.1.1 已启动,我可以远程桌面到它: 当我尝试时: $
为什么eval语句返回 Illegal variable name $ eval "$(ssh-agent -s)" Illegal variable name. 最佳答案 请尝试$ eval "ss
我正在尝试通过以下命令从我的本地主机连接到远程主机。但是远程主机中有一个设置,我们登录后不久它会提示输入徽章 ID、密码和登录原因,因为它在 profile 中是这样编码的文件在 remote-hos
有时,我被迫在不稳定的互联网连接上使用 ssh。 ping some.doma.in PING some.doma.in (x.x.x.x): 56 data bytes Request timeou
This thread is a response to the titled question : Why ssh-agent doesn't forward my SSH certificate
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 8年前关闭。 Improve this q
因此,我在10.10.10.x子网中有一堆机器,基本上所有这些机器都以相同的方式配置。我将这些与我的10.10.11.x子网中的计算机区分开,后者具有不同的用途。 我希望能够输入“ssh 10.x”以
我不想在 vagrant box 上创建新的 SSH key 对,而是想重新使用主机上的 key 对,使用 agent forwarding 。我尝试过设置 config.ssh.forward_ag
我有一台服务器,可以通过ssh通过pubkey身份验证通过ssh访问: ssh "Host" -l "my identity" 这很好。但是,我无法在一个命令中使用我的私钥进行端口重定向和标识(这是我
创建一对 key 并通过 ssh-copy-id 将公钥发送到服务器后,我仍然无法在没有密码的情况下登录 ssh -v user@host 的输出 debug1:在/home/pumba/.ssh/k
我被困在 Permission denied (publickey) hell 中,试图将公钥复制到远程服务器,以便 Jenkins 可以在构建期间同步文件。 运行: sudo ssh-copy-id
我正在尝试通过我大学的代理服务器ssh到我们实验室的服务器之一。我们的目标是使用paramiko使其自动化,但我试图首先了解终端机级别中正在发生的事情。 我试过了 ssh -o ProxyComman
我在说明问题上有问题,我想通过SSH切换到我的Cisco交换机,但是我遇到了一些麻烦 我写了两个脚本, 有了这个我没有任何问题,我可以通过运行脚本并输入用户名和密码来更改默认网关: from Exsc
每个人 我目前正在使用一个集群,并且会经常使用“ssh”连接到它。有时我需要打开多个终端。因此,每次需要连接时,我都必须输入“ssh username@cluster.com”,然后输入“密码”(我在
我是一名优秀的程序员,十分优秀!