WSL的ssh配置,并实现远程jupyterlab访问
jupyter服务配置可以看这个文章
[https://blog.csdn.net/m0_61601611/article/details/129592102?spm=1001.2014.3001.5502]
ssh 设置端口映射
win10中进行端口映射(命令行管理员模式运行)
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=ssh访问端口 connectaddress=wslIP connectport=文件中的IP
由于wsl的IP可能会在每次重启之后发生变换,wslIP可以直接给localhost,如不可用,可以查询如何固定IP
ssh 端口映射查看
netsh interface portproxy show all
ssh 删除映射
netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=2222
wsl中ssh配置
由于自带的可能无法使用,需要将自带的ssh卸载重新
卸载ssh
sudo apt remove openssh-server
安装ssh
sudo apt install openssh-server
安装net-tools
sudo apt-get update
sudo apt-get install net-tools
重新启动
sudo apt install openssh-server
修改配置信息
sudo gedit /etc/ssh/sshd_config
修改以下内容,ctrl+f搜名称,改参数,前方有#注释的需要删除
Port 2222
ListenAddress 0.0.0.0
PasswordAuthentication yes
PermitEmptyPasswords no
(可选)在#PermitRootLogin prohibit-password下一行加入允许root登录
PermitRootLogin yes
重新启动
sudo apt install openssh-server
查询wslIP
ifconfig
eth0的inet 后就是wslIP
本地测试
在win10 power shell中ssh连接wsl
ssh root@wslIP -p 2222
非本地访问设置
设置端口映射
映射wsl远程端口(远程访问端口号最好设置在2000-3000之间)
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=wsl远程访问端口 connectaddress=wslIP connectport=win10访问wsl的端口
映射jupyter lab端口(远程访问端口号最好设置在2000-3000之间)
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=jupyterlab远程访问端口 connectaddress=wslIP connectport=jupyterlab的端口
如图所示 8182便是jupyterlab的端口号
win10 防火墙设置
打开防火墙
进入高级设置
选择入站规则,在右侧选择新建规则
选择TCP协议,添加允许远程访问的端口(xxxx)
一直下一步,最后添加自定义的名称即可
此处需要添加一个远程ssh端口和一个远程访问jupyter lab的端口,后续需要其他功能则也需要添加端口
远程访问wsl
ssh wsl用户@wsl的win10主机IP -p wsl远程访问端
远程访问jupyterlab
在同一局域网的电脑的浏览器中输入
win10主机IP:jupyterlab远程访问端口