开启win10下Ubuntu子系统的SSH服务 并设置为开机启动
Win10中安装Ubuntu子系统后默认是没有开启SSH服务的,需要手动配置开启,
1。先通过 bash 进入子系统修改配置
vi /etc/ssh/sshd_config 备注 输入i 表示键入, 按键(ESC)外加 冒号(:WQ) 退出保存
如果文件不存在说明尚未安装,则执行安装
apt-get install openssh-server
2.继续修改配置,下面以密码登录的配置作说明:
Port = 22 # 默认是22端口,如果和windows端口冲突或你想换成其他的否则不用动
#ListenAddress 0.0.0.0 # 如果需要指定监听的IP则去除最左侧的井号,并配置对应IP,默认即监听PC所有IP
PermitRootLogin no # 如果你需要用 root 直接登录系统则此处改为 yes
PasswordAuthentication no # 将 no 改为 yes 表示使用帐号密码方式登录

如果PasswordAuthentication 为false, 上面的密码框不可用, 所以建议为true,如果PermitRootLogin 为false,那么用root 用户会提示拒绝密码,
主要配置以上几项即可
3.然后启动 ssh 服务
service ssh start
如果提示 sshd error: could not load host key 则需要重新生成 key
dpkg-reconfigure openssh-server
4.查看服务状态
service ssh status
# * sshd is running 显示此内容则表示启动正常
5.passwd root # 设置下密码
不要忘了,还要配置防火墙开启端口才能被其他PC访问
打开 Win10 防火墙设置,(可以通过右下角有个向上的箭头点击盾牌快速进入面板)Windows Defender 安全中心,点击下方的高级设置,
最后效果如图:


2.关于开机启动我这里参考的是,我的Ubuntu 是18以上
https://www.cnblogs.com/vaynewang/p/10169134.html
https://blog.csdn.net/toopoo/article/details/85733566
所以需要链接 rc-local.service 文件 然后创建 rc.local 文件并修改权限,大概是这样的:
ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service
touch /etc/rc.local
chmod /etc/rc.local
然后编辑rc.local 大概格式是这样的:
#!/bin/bash
service start ....
exit 0

注意 如果你的vbs文件 无法保存到 启动文件下(win10 会提示什么权限), 那么可以把vbs文件放到其他地方, 创建快捷方式,然后把快捷方式 放到 启动文件夹下

然而,WSL中并不支持通过rc.local 来实现开机启动。在这有个偏方,可以通过windows 的启动项来启动 rc.local中的脚本。
win+r shell:startup <- 进入启动目录
创建一个VBScript脚本wls_rclocal.vbs
写入内容 , 通过bash命令参数去执行rc.local
set ws=wscript.createobject("wscript.shell")
ws.run "C:\Windows\System32\bash.exe -c 'sudo /etc/rc.local'",0

注意 如果你的vbs文件 无法保存到 启动文件下(win10 会提示什么权限), 那么可以把vbs文件放到其他地方, 创建快捷方式,然后把快捷方式 放到 启动文件夹下

参考 文档:
https://blog.csdn.net/zhouzme/article/details/81087837
https://blog.csdn.net/u012206617/article/details/83026777
https://gist.github.com/dentechy/de2be62b55cfd234681921d5a8b6be11
开启win10下Ubuntu子系统的SSH服务 并设置为开机启动的更多相关文章
- 开启win10下Ubuntu子系统的SSH服务
原文:开启win10下Ubuntu子系统的SSH服务 版权声明:本文为博主原创文章,未经博主允许不得转载. http://blog.csdn.net/zhouzme https://blog.csdn ...
- 把ngnix注册为linux服务 将Nginx设置为linux下的服务 并设置nginx开机启动
一.创建服务脚本 vim /etc/init.d/nginx 脚本内容如下 #! /bin/sh# chkconfig: - 85 15 PATH=/usr/local/nginx/sbin/ DES ...
- win10下Linux子系统开启ssh服务
原文:win10下Linux子系统开启ssh服务 为了便于交流共同学习,博主QQ群242629020(stm32-MCU认认真真交流群) 欢迎批评指导!!!电梯:https://jq.qq.com/? ...
- Linux - ubuntu 16 打开SSH服务
ubuntu 16 打开SSH服务 1.查看是否启动进程 roott@jiqing-virtual-machine:~# ps -ef | grep sshd root 3477 1 0 18:36 ...
- Win10忘记ubuntu子系统密码
原文:Win10忘记ubuntu子系统密码 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/wf19930209/article/details/80 ...
- Win10安装Ubuntu子系统
相信我,这是最后一次折腾系统了qaq,以后一定开始认真用Linux编程 跟的一个博客安装,传送门:Win10安装Ubuntu子系统及图形化界面详细教程 文章是2019的,加上我装的是Ubuntu 20 ...
- Linux(Ubuntu)安装ssh服务
在终端(Ctrl + Alt + T )输入 $ps -e | grep ssh 看到 “ ssh-agent ” 和 “sshd” ,表示没有安装服务,或没有开机启动 1.安装SSH 输入:sudo ...
- Windows10内置ubuntu子系统安装后中文环境设置
原文:Windows10内置ubuntu子系统安装后中文环境设置 第一开启相关设置,使用小娜(Win键+c)直接查找关键字打开更快. ①设置→查找"针对开发人员"→开发人员模式 ...
- win7下exe文件设置为开机启动
如何将自己的exe程序设置为开机自启动 如何将自己的exe程序设置为开机自启动 将自己的exe程序设置为开机自启动话不多说,直接看 首先1:cmd—>regedit 其次找到下面的路径就可以:( ...
随机推荐
- 使用element-ui的常见问题
给组件绑定的事件为什么无法触发? 在 Vue 2.0 中,为自定义组件绑定原生事件必须使用 .native 修饰符: <my-component @click.native="han ...
- NOIP2017提高组Day1T3 逛公园 洛谷P3953 Tarjan 强连通缩点 SPFA 动态规划 最短路 拓扑序
原文链接https://www.cnblogs.com/zhouzhendong/p/9258043.html 题目传送门 - 洛谷P3953 题目传送门 - Vijos P2030 题意 给定一个有 ...
- 使用json web token
由来 做了这么长时间的web开发,从JAVA EE中的jsf,spring,hibernate框架,到spring web MVC,到用php框架thinkPHP,到现在的nodejs,我自己的看法是 ...
- ubuntu中git
1.在ubuntu中安装git $ sudo apt-get install git git-core 2.配置本机的git $ git config --global user.name " ...
- HDU2255 奔小康赚大钱 (最大权完美匹配) 模板题【KM算法】
<题目链接> 奔小康赚大钱 Problem Description 传说在遥远的地方有一个非常富裕的村落,有一天,村长决定进行制度改革:重新分配房子.这可是一件大事,关系到人民的住房问题啊 ...
- UVa11988 Broken Keyboard 损坏的键盘【list】
题目链接:https://vjudge.net/problem/UVA-11988 题目大意: 键盘的home键和end键出现了问题. 在输入一段文本时,home键或end键可能会自动被按下,home ...
- Linux系统开发之路-中
4.Linux的安装(Windows环境下): 1)Windows环境需要借助虚拟机来安装Linux系统,这个推荐使用的软件是VMWare,官网能下载到的最新版本是Workstation Pro15. ...
- Jenkins环境搭建(2)-搭建jmeter+ant+jenkins自动化测试环境
一直想在持续集成方向学习并研究一番,近期正准备结合jmeter+ant+jenkins做自动化接口测试,在学习的同时,正好实践一番,毕竟实践才是真理. 在搭建jmeter+ant+jenkins环境有 ...
- python基础一 ------如何对元组各个元素进行命名
对元组各个元素进行命名 1,通过对元组索引值的命名 2,通过标准库中的collections.nametuple替代内置touple 通过对元组索引值的命名 好比在c中的defined详细见代码 na ...
- (Android数据传递)Service和Activity之间-- 借助BroadcastReceiver--的数据传递
实现逻辑如下: 左侧为Activity中的执行逻辑,右侧为Service中的执行逻辑: /** * <功能描述> Service和Activity之间的数据交互:具体表现为: 1. 从Se ...