0


【WSL2亲测可用】以ssh为例,实现宿主机与虚拟机同网络,且宿主机外网LAN主机可访问

问题描述

提示:window11 23H2以后版本,wsl2的Linux虚拟机,可被其他同宿主机网段访问,实现ssh及其他端口访问自由

问题解决:

> 1、升级wsl为wsl2,确认wsl版本为2.0.0以上,如下所示

PS C:\Users\xxxx> wsl --version

WSL 版本: 2.2.4.0//2.0.0版本以上 
内核版本: 5.15.153.1-2
WSLg 版本: 1.0.61....

> 2、配置wsl网络为镜像模式,即mirrored,如下所示

在Windows的用户目录创建一个文件,名字叫.wslconfig。名字就叫.wslconfig。然后再里面配置以下命令:

#Settings apply across all Linux distros running on WSL 2[wsl2]
#如果值为 mirrored,则会启用镜像网络模式。 默认或无法识别的字符串会生成 NAT 网络。
networkingMode=mirrored

....

配置好之后一定要在windows powershell执行wsl --shutdown,然后再重新启动WSL2实例。启动完成后你看到的网络配置长下面这样:

提示:wsl虚拟机的网卡IP,与宿主机相同

在这里插入图片描述


> 3、实现宿主机localhost访问虚拟机ssh
按如下配置:
在这里插入图片描述

提示:使用root登录可能提示密码出错,这是因为Ubuntu默认wsl下root密码为空,需要单独设置;另外OS默认禁用了root登录,需要打开permissionrootlogin

在虚拟机使用如下命令:vim /etc/ssh/sshd_config,将PermitRootLogin 后改为yes,同时删除注释;
在这里插入图片描述


> 4、实现宿主机同网段其他主机访问虚拟机ssh
在windows宿主机环境下,使用ssh工具,访问同IP下的22端口,提示connect reset等错误,主要是以为Windows防火墙规则所限,需要单独添加入站规则:防火墙->高级设置->入站规则->新建规则
在这里插入图片描述
在这里插入图片描述
填写端口号22,下一步命名保存即可;

提示:此时使用ssh工具即可通过宿主机IP+端口号22,访问虚拟机ssh; 其他端口同理
标签: ssh 网络 运维

本文转载自: https://blog.csdn.net/jyzjut/article/details/140079778
版权归原作者 JuniorPotato 所有, 如有侵权,请联系我们删除。

“【WSL2亲测可用】以ssh为例,实现宿主机与虚拟机同网络,且宿主机外网LAN主机可访问”的评论:

还没有评论