使用zerotier实现ssh远程连接wsl2
目录
- 前言
- 准备工作
- wsl2部署ssh
- windows本地端连接
- 手机客户端连接
前言
ssh连接wsl2可以方便我们远程管理,其方法和直接在ubuntu中设置ssh如出一辙。
准备工作
注册一个zerotier的账户
注册成功之后点击 Create A Network
可以看到我们的NETWORK ID,点击ID 可以看到我们这个网络的具体配置信息。 我们可以更改Name,Description,IPV4的网段等等信息。Access Control 那里一定要是Private,这样才能保护我们的连接隐私性。
wsl2 部署ssh
在 Ubuntu 中安装 SSH 服务器:
- 打开 WSL2 的 Ubuntu 终端。
- 更新包列表:sudo apt update
- 安装 SSH 服务器:sudo apt install openssh-server
- 启动 SSH 服务:sudo service ssh start
安装 ZeroTier One:
- 在 Ubuntu 终端中安装 ZeroTier One:curl -s https://install.zerotier.com | sudo bash
- 加入 ZeroTier 网络:sudo zerotier-cli join [network_id](将 [network_id] 替换为您的 ZeroTier 网络 ID)。
- 在zerotier网页Members列表勾选刚刚加入网络的设备
配置 Windows 防火墙:
- 允许 WSL2 的 Ubuntu 通过 Windows 防火墙。可以在 Windows 防火墙设置中添加一个入站规则,允许 TCP 端口 22。
- 允许 WSL2 的 Ubuntu 通过 Windows 防火墙。可以在 Windows 防火墙设置中添加一个入站规则,允许 TCP 端口 22。
windows本地端连接
在zerotier官网下载windows客户端安装,然后右键托盘区域的软件图标,选择加入我们刚刚创建的网络。同样的,也要在zerotier网页Members列表勾选我们刚刚加入网络的设备。
使用你常用的ssh客户端,比如puty,finalshell等。
然后我们在ssh客户端输入wsl2设备的ip(members列表上显示的),端口22,即可连接。
注意: 你应该在另一台windows设备上安装zerotier客户端连接wsl2。如果你同时启动了wsl2和windows环境下的zerotier,那么windows环境下的zerotier将会闪退。这可能是一个Bug,我已经给官方反馈了。
注意1: 如果你安装了多个wsl 系统,一个系统占用22端口后,其他系统就没法使用,开启ssh会报错。因此当你需要使用ssh时,只开启那一个系统即可。
提示: 你只需要在wsl2中安装zerotier即可使用其他设备远程连接。