wsl可以配置linux服务器吗,如何在WSL(Windows Subsystem for Linux)上的Ubuntu配置SSH服务...

先解释一下WSL的网络,作为子系统的Ubuntu Linux和Windows主系统的IP是一样的。如果在Linux上搭建了Nginx服务器,那么在Windows上的浏览器上输入localhost是可以访问Nginx服务的。如果在Linux上运行netstat -nlp是不会看到任何端口服务的。在Linux上启用端口服务的时候,Windows系统会弹出窗口,询问是否允许相关端口访问。

WSL上的Ubuntu默认安装了openssh-server,也就是ssh服务的软件。但是,这个软件的配置是不完整的,如果启用服务,会报缺失几个密钥文件。为了解决这个问题,我们需要重新安装openssh-server:

$ sudo apt remove openssh-server

$ sudo apt install openssh-server

重新安装完还不行,因为WSL上的Ubuntu的SSH服务配置默认不允许密码方式登录,我们需要改配置:

$ sudo vi /etc/ssh/sshd_config

注意,要修改的文件是sshd_config,而不是ssh_config。两个文件都是存在的。

找到PasswordAuthentication no一行,把no改为yes,保存退出,启动ssh服务:

$ sudo service ssh start

如果之前调试已经启动过ssh服务,则使用重启命令:

$ sudo service ssh restart

此时,我们可以在Ubuntu的Bash下连接自己测试,也可以用Windows的PowerShell连接Ubuntu来测试,命令都是:

$ ssh username@localhost

username要替换称安装WSL Ubuntu时输入的用户名。

如果要在其它机器上访问,需要查找本机IP,把localhost换成IP,那么同一子网(wifi路由器)下的机器也可访问Ubuntu里的服务。

随便提一下,如果是搭建Nginx服务就比SSH简单多了,执行下面命令安装后在浏览器访问localhost即可:

$ sudo apt install nginx

$ sudo service nginx start

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值