通常在 Linux 上安装 SSH 服务(确切地说应该是 SSHd )非常简单容易。

不过你有没有想过,如何在 Windows 上也安装上 SSH 服务呢?


慢着,你说的 SSH 它是个啥?

哦,简单地说 SSHSecure Shell )是一种网络协议,通常用来加密连接登录服务器,然后通过这个加密后的连接来进一步进行后续的各种操作管理。

熟悉 Linux 的小伙伴们应该不会对 SSH 陌生,它是常用的不能再常用的计算机连接方式了。


有时出于某些原因(比如调试程序),我们可能需要连到 Windows 上。

然而只是一些指令性的操作,又不想用远程桌面之类的图形界面来连接 Windows ,那么很显然,我们可以用到 SSH 服务。

不过要知道这是 Windows ,可不像在 Linux 上那么方便了,因此我们就要思考一下,如何快速有效地搭建起一个能在 Windows 上跑的 SSH 服务呢?


这里我们不得不需要插几句话,从 Windows 10 1809Windows Server 2019Windows 开始正式支持 OpenSSH Server 了。

因此,如果你的 Windows 版本较高,可以直接使用 OpenSSH

不过为了照顾至今仍在坚守陈旧版本 Windows 的小伙伴们,我找到一个通用的第三方免费简单好用的 SSH 服务软件: freeSSHd

至于 OpenSSH ,以后我也会写文章分享使用经验给大家。

这次我们先来研究一下这个 freeSSHd


freeSSHd ,一看名字就知道免费好用,这玩意由来已久,自然网上也有不少的教程。

不过因为自己没怎么用过,有些教程呢又写得比较笼统,因此特意将自身的安装使用体验整理成了一个笔记,也方便需要使用 freeSSHd 的小伙伴们参考吧!

各位,准备好了吗?

开始!


官网首页:

http://www.freesshd.com
 

打开来像这个样子。


一大堆的英文啊,似乎不太友好,欺负我这没过四级的,还好有翻译神器在哈!

具体啥意思我就不介绍了,我们直接去下载页面下载 freeSSHd 的安装包吧!


下载页面:

http://www.freesshd.com/?ctt=download
 

我们找到 freeSSHd.exe 那个文件,点击下载即可(文末有备用下载)。


你看它只有 856KB ,可谓小巧玲珑,很快就能下载完。

freeSSHd 的安装也非常简单,通常按下一步保持默认选项即可。

不过有几处地方可能需要特别讲解一番,大家看后面的图示操作。


先来安装吧,双击 freeSSHd 安装程序。


选择安装路径,保持默认吧。


选择 Full installation 完全安装,省得一会儿用的时候缺这缺那。


给它起个在开始菜单中的名字,保持默认,要不你能叫它啥呢,二哈吗?


创建桌面图标,就是启动时找起来方便。


准备安装清单列表,按下按钮即开始安装。


呃...突然出现,这是啥?

原来这是官方推销的同样 SSH 功能的软件,包括服务端和 ActiveX

建议先别着急看,因为它们是付费软件,我们还是先玩玩 freeSSHd 吧!


终于安装好了,不过蹦出个提示来。

叫作:私钥将被创建,干不干?

Private keys should be created. Should I do it now?
 


那还用说,SSH 肯定是需要私钥的,当然干了,点 是(Y)

哎,怎么又来一个,问要不要将 FreeSSHd 作为系统服务跑起来?

Do you want to run FreeSSHd as a system service?
 


Windows 开机即启动 freeSSHd 需求的小伙伴就请点 是(Y) 吧!

最后安装就完美结束啦!


安装完成后桌面就生成了一个新建的 FreeSSHd 图标,点开它我们即可开始使用 freeSSHd


注意,设置方面可能涉及到权限问题,所以最好是使用管理员权限打开它。


呐呢?!刚开始就出师不利,这是什么鬼?

Error connecting to freeSSHd.com
 


看字面意思,似乎是 freeSSHd 升级连接失败。

点击 确定 继续,应该不会有什么影响。

果然,任务栏内多了一个新图标。


我们可以双击任务栏图标,也可以在右键菜单中点选 Settings... 来打开设置。


那么到目前为止, SSHd 服务可以正常使用了吗?

哈哈,应该还不能吧,因为我们还没有给它设置呢,怎么会按我们的意思跑呢!

好,打开设置,你看,TelnetSSH 两个服务都没有真正开始运行。

注意,这里有个坑,后面会讲到是怎么回事。


这个我们可以通过双击任务栏图标,然后在 Server status 服务状态选项卡中查看。

那接下来我们就开始尝试设置一下 SSH 吧。


我们先找到 SSH 选项卡,这个肯定是关键核心设置。


有几个地方需要改一改,就像图中所示的。

  • Listen address - 侦听地址( 0.0.0.0 表示所有网络接口)
  • Port - 端口(默认是 22
  • RSA key - RSA 密钥(一种非对称加密算法)
  • DSA key - DSA 密钥(另一种非对称加密算法)


侦听地址和端口通常保持默认,这个好办,只不过 RSA 密钥和 DSA 密钥这两个怎么搞呢?

其实不难,看到那个写着 New... 的按钮没,点它,然后选择密钥位数即可。

通常 1024 bits 就够了,选择 2048 bits 嘛密钥更强一些,都可以。


如法炮制,两个都这么干就是了。


SSH 服务设定OK了,然后我们再来添加几个用户,访问 SSH 总要有登录用户的嘛!

找到 User 用户选项卡,点击 Add... 添加。


其中 Login 是登录用户名,这个好理解。

但是下面的 Authorization 认证,应该选哪一个呢?

  • NT autheritication - Windows 用户认证
  • Password stored as SHA1 hash - 以 SHA1 哈希形式保存
  • Public key (SSH only) - 公钥(仅 SSH


如果你想直接用 Windows 上现有的用户,那么就选 NT autheritication 即可,当然要写对用户名称。

你看,密码一栏是不需要填写的。


通常我们选择 Password stored as SHA1 hash ,这样我们就可以灵活地自定义用户名和密码了。


至于 Public key 则可能需要公钥文件比较复杂,就不赘述了。

最后用户属性窗口中的下方有三个选项,就看你的实际需要了。

  • Shell - 执行这台服务器的命令终端
  • SFTP - 就是我们想要登录的 SSH 的服务端目录
  • Tunneling - 建立加密通讯隧道


用户创建好应该是这个样子的。


一旦有用户连上来,我们可以在 Online users 选项卡中查看在线用户。


好,接下来还有几项需要设定,不复杂,接着来哈,很快就好了!

一个设置是 Authentication 认证方式。

通常我们设定了用户密码就需要将 Password authentication 设定为 Requied 必须。


这里简单说明一下三个选项。

Disabled 当然是禁用的意思,至于 AllowedRequired ,前者是允许后者是必须,前者可以有密码也可以没有,而后者则是强制要有的意思。


还有一个设置 Encryption 加密,默认 Any 任意即可。


Tunneling 隧道这个不用改什么,暂时没有启用它。


SFTP 选项卡中有一项是用来设定 SFTP 家目录,默认就是当前登录用户的家目录。

比如张三登录,那么出现的根目录就是张三自己的家目录。

通常在这里用 $HOME\ 表示,不用改动它。

当然你也完全可以指定一个固定的目录路径,那么所有的用户都会跑到同一个目录中。


为了安全起见,Host restrictions 主机限制中可以填写一些不希望被访问的客户主机 IP 地址(支持通配符)。


再正规一些,我们可以开启日志记录,方便以后出现故障可以有迹可循。


最后还有一个 Automatic updates 自动升级的选项卡。

还记得前面启动 freeSSHd 时蹦出来的升级失败的提示吗?

对了,不说也知道啥意思,要是你觉得每次启动嫌那个提示麻烦,就在这里关掉它。

Check for new version on startup.
启动时开始时检查新版本。

Update without asking me for confirmation
升级不用问我确认

Show info messages from freeSSHd.com
显示来自 freeSSHd.com 的提示信息
 


好了,终于设置完毕,别歇着了,赶快启动它看看吧!

切换到 Server status 选项卡,看准 Click here to start it. 那几个字用力点下去!


哎我……启动 SSH 服务,有时就会出现启动失败的情况。

The specified address is already in use.
 


我赶紧用翻译软件这么一翻译,它喵的说是指定的地址已经在用着呢!

这是怎么回事,明明是头一次启动它呀!

使用以下命令查看是哪个程序占用了 22 端口。

netstat -ano
 


还真有一个程序占用了 22 端口,嗯,记下它的 PID ,也就是程序 ID

然后再打开任务管理器看看,呐呢,搞了半天乌龙了,原来就是 FreeSSHd 的服务进程占用了端口 22


FreeSSHd 啥时候自己启动起来了?

哦,想明白了,原来前面我们把它当作系统服务了,那时它就自动启动了。

嘿嘿,前面提到的启动时的坑就在这儿等着我呢!

你可以看一下截图中,FreeSSHd 是以 SYSTEM 用户运行的就明白了。


好了,说白了,我们不需要手动去启动服务了。

那我们直接登录就行了呗?

好像还有问题,可能会导致用户无法正常登录,会提示密码错误。


这又是怎么回事呢?

干脆我们来重新启动一下 FreeSSHd 服务,说不定是前面的配置并没有生效。


重启服务OK,回头再看看服务状态,应该是这个样子的。


服务成功启动,可喜可贺,不过使用中可能我们会遇到几个小问题。


比如,在登录 FreeSSHd 时,可能会出现中文文件名乱码的情况。

这时我们以 WinSCP 为例,点击 高级(A)... ,将文件名 UTF-8 编码设置为开启状态。


另外,有可能在实际访问远程目录时,会出现无法上传写入的情况。


那么我们可以先将远程目录的权限修改为 Everyone 可写(但不可删除自己)。


然后再试下,应该就可以成功上传文件了。


freeSSHd.7z(853K)

下载链接:https://pan.baidu.com/s/1i2iyq0cz5bDkuoMM-Uz-ZQ

提取码:

输入阅读密码,解锁隐藏内容...



★扫码关注公众号, 发送【001031】获取阅读密码


到此关于 freeSSHd 的安装、设置和使用基本介绍完了。

当然作为初学者的我,在这儿也只是向小伙伴们分享比较基础的内容。

虽然是基础内容,不过关键在于我们可以随时随地利用容易上手的 Windows 来搭建简易的 SSH 服务,以备不时之需。

至于其他高级用法,如果你有兴趣可以到官网上多多研究。

当然今后如果有什么关于 freeSSHd 的其他有趣的用法,我也会收集整理起来与大家分享。

好了,小伙伴们,今天的小教程你们记下了吗?

最后祝大家安装使用 freeSSHd 一切顺利哈!


将技术融入生活,打造有趣之故事

网管小贾 / sysadm.cc

暂无评论

登录并提交评论

© 2020-present 网管小贾 | 微信公众号 @网管小贾
许可协议:CC-BY-NC 4.0 | 转载文章请注明作者出处及相关链接