(请注意,本文内容以杂谈为主,稍微提及了一些在MobaXterm中开启SSH Server可能遇到的情况和解决方法,没有多少干货,请酌情查看,谢谢)
最近比较无聊,使用MobaXterm,无聊翻看里面的功能,发现一个Netword Services功能里面可以开启ssh server,一下子就来了兴趣。
早期的我对Windows远程的概念还是停留在Windows自带的RDP,3389端口的这个玩意,也就是Windows专业版才带的远程桌面功能(如下图)。
在学校机房上课时候,就远程回宿舍的电脑去操作。后面学校机房划分了新vlan,也就连接不上了。用着向日葵之类的走公网的远程。接触到Linux上的VNC后我发现也可以Windows也可以使用VNC Server,然后用于远程。
ssh也是在Linux可谓是在必备服务啊,使用树莓派4B没有额外的显示器,都是靠着sshd来完成Linux无图形界面的学习。Windows的远程在我印象中都是要有图形界面的。
今天偶然发现Windows还可以使用sshd作为管理后,我们顺藤摸瓜来讨论一下常见的几种Windows SSH Server吧。
MobaSSH
准备工作
MobaXterm里面自带了一个简单的MobaSSH,第一次使用这些Server需要去官网下载CygUtils.plugin插件才可以启动。
下载好后放在安装目录下就可以了。
Netword Services功能里面可以开启ssh server,如果开启不了,确认一下插件是不是没有,如果有提示要激活,这个嘛可以网上查一下相关的注册机软件,操作一下,根据不同的版本生成个Custom.mxtpro。
启动
设置是很简单的,主要是可更改运行时间和监听端口。
点击启动按钮后,可以使用netstat查看一下端口监听的情况,再用pid查看一下运行的文件。
C:\Users\alitt>netstat -ano | findstr :65522 TCP 0.0.0.0:65522 0.0.0.0:0 LISTENING 14368 TCP [::]:65522 [::]:0 LISTENING 14368 C:\Users\alitt>wmic process get name,executablepath,processid | findstr 14368 C:\Users\alitt\AppData\Roaming\MobaXterm\slash\bin\sshd.exe sshd.exe 14368
看到文件是在MobaXterm下sshd.exe就没有问题了。
登录
和我们平常登录ssh一样,可以使用密码登录,也可以使用秘钥登录,具体的ssh登录我博客里面详细介绍文章SSH免密登录的配置 - alittlemc - 博客园 (cnblogs.com)。
- 登录账号为当前Windows登录账号
这个时候我发现我们使用的MobaSSHD提供的shell中,cd、ll、ls、dir等等命令都有,路径是虚拟的,模仿Linux的目录结构。比较特殊的有:
- drives:里面链接着Windows分区,比如C:、D:盘。
起初我发现无法使用ping、netstat、pathping之类的Windows经典命令都无法使用时候,在此环境内可能没有连接。当我查看了bin目录下的可执行文件后,发现大部分命令解析来自于busybox.exe。
- 其实是可以运行C:\Windows\System32下提供的文件的
只不过微软使用了全大写用于区分无图形化界面的可执行文件,在cmd中大小写不敏感所以不影响使用。
使用在使用这些命令时候,需要使用这些命令时候使用文件命名的大小就可以了。
PING和PING.EXE效果是一样的。
但是和cmd中又不同的是,MobaSSH提供的shell中是不可以调用环境变量的path值目录下命令,这是一个痛点。
感觉Windows下的sshd没有Linux那么顺手。
当然还有f除了MobaSSH,在Windows下还支持的软件reesshd和openssh sshserver(系统可自带)。
标签:sshd,登录,Windows,Server,SSH,使用,ssh From: https://www.cnblogs.com/alittlemc/p/16748188.html