曦远 (DealiAxy)一份私人的文字刊物

StarBlog
返回文章列表折页手记阅读全文
Windows

Windows的Linux子系统上配置SSH服务器

安装openssh 这个不用啰嗦太多,首先需要安装openssh-server和openssh-client。 修改sshd-config配置 需要关注的就是这三行。 UsePrivilegeSeparation no #因为wsl没有实现chroot PasswordAuthentication yes ListenAddress 0.0.0.0

曦远 (DealiAxy)约 5 分钟
目录9 个章节

安装openssh

这个不用啰嗦太多,首先需要安装openssh-server和openssh-client。

修改sshd-config配置

需要关注的就是这三行。

UsePrivilegeSeparation no         #因为wsl没有实现chroot
PasswordAuthentication yes
ListenAddress 0.0.0.0                 #这一项在我的发行版里缺省为注释行。

其他的可以根据需求修改。

ListenAddress 0.0.0.0                  # 要让其他计算机能连接上需要加上这一行,或者把经常需要连接的计算机IP加入
PermitRootLogin yes                   # 允许root用户登录。

关闭Windows自带的ssh

我原本还不知道的,查了资料才知道新版Windows自带了ssh服务,不过怎么使用还没有了解。 可以使用powershell来查看这个服务。

PS C:\Users\user> Get-Service -Name ssh*
Status   Name               DisplayName
------   ----               -----------
Stopped  SshBroker          SSH Server Broker
Stopped  SshProxy           SSH Server Proxy

在服务控制台里找到这两个服务停掉就行了。 注意要先停掉sshproxy才可以关掉sshbroker。

以调试方式启动ssh

/usr/sbin/sshd -d

-d表明是以调试方式启动的服务,这种情况下,错误会显示在控制台上。

要注意即使以这种方法启动ssh server,它仍然只是在存在bash窗口时的一个子服务。一旦最后一个bash窗口关闭,这个ssh server也就关闭了,显然这不是我们想要的。接下来看看怎么将ssh server以windows服务或者后台进程来运行。

正常开启ssh

service ssh start

自动启动ssh服务

当前WSL并不支持ssh server作为服务运行。我们需要借助windows计划任务和脚本,使得在windows启动时自动运行这一服务。

set ws=wscript.createobject("wscript.shell")
ws.run "C:\Windows\System32\bash.exe -c '/usr/sbin/sshd -D'",0

将这个文件存为vbs,并在计划任务中添加一个启动任务,触发器设置为系统启动时。 不过使用这个方法的前提是你的WSL默认用户是root,对于默认用户不是root的必须使用sudo方式启动。 但是! 执行sudo时,会提示输入密码,而这时又无法拿到用户的输入。要解决这一问题,需要允许sudo在没有密码的情况下执行命令。

在bash里输入命令:

sudo visudo
#includedir /etc/sudoers.d
username ALL=(ALL) NOPASSWD: /usr/sbin/sshd -D

把username改成你自己的用户名即可。

参考资料

hbaaron.github.io

About

了解更多有趣的操作请关注我的微信公众号:DealiAxy 每一篇文章都在我的博客有收录:blog.deali.cn

_EOF_

Windows的Linux子系统上配置SSH服务器

本文作者:
程序设计实验室
版权声明:
本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

相关文章

这是演习:Win10蓝屏,随你召唤

蓝屏似乎是很多IT之家用户不希望看到的东西,虽然在Win10中你还可以扫描屏幕下方二维码参与微软互动赢取大……那个,蓝屏的好处就是为专业人员提供问题信息,比如当前的内存转储,有助于排查和解决问题。当然,可能光是默认蓝屏给出的信息不够,此时可以开启Win10蓝屏详细信息显示。 ▲这二维码居然“上位”了……VM12虚拟机测试结果 微软在Windows10中安排了手动“调取”蓝屏的方式,那就是**按住右

2021-12-18 · Windows · 约 1 分钟

讨论

共 0 条

良言一句三冬暖,恶语伤人六月寒。

加载评论中…