WSL 增加 SSH 服务
WSL 增加 SSH 服务
前言
为 WSL 增加 SSH , 并通过公网暴露
搭建步骤
WSL 中
- 检查
service ssh status
- 安装
apt install openssh-server
- 编辑文件
echo "Port 2222" >> /etc/ssh/sshd_config && echo "ListenAddress 0.0.0.0" >> /etc/ssh/sshd_config
- 启动服务
service ssh start
- 检查服务
service ssh status
- 获取 IP
ip -c address
Windows 中 (开放到公网)
如果使用 Cloudflare Zero Trust 或者 Tailscale 可以跳过1
2
3netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=2222 connectaddress=192.168.255.163 connectport=2222
netsh advfirewall firewall add rule name=”Open Port 2222 for WSL2” dir=in action=allow protocol=TCP localport=2222
netsh interface portproxy show v4tov4
测试
1 | ssh [email protected] -p 2222 |
测试 - 通过 cloudflare
以 Tunnels 配置为例:1
2
3
4SubDomain
wsl.pancc.com
Service
SSH://192.168.255.163:2222
windows
编辑文件 %USERPROFILE%\.ssh\config
加入以下内容:1
2Host wsl.pancc.com
ProxyCommand C:\Program Files (x86)\cloudflared\cloudflared.exe access ssh --hostname %h
使用控制台命令1
ssh [email protected] -p 80
或使用 **MobaXterm **
- new session
- host:
wsl.pancc.com
, port80
- 选择 Network settings; 选择 Proxy Type:
Local
, Host:wsl.pancc.com
, Local Proxy Command:cloudflared.exe access ssh --hostname %host
额外
使用 Tailscale
Cloudflare 在大陆的访问并不流畅, 并且需要需要额外配置, 可以使用 Tailscale 省去 .ssh\config
的配置
- 通过 该页面 添加本地机器与 WSL 机器
- 复制 WSL 的 ADDRESSES 在本地机器以任何客户端登录 SSH, 端口为与配置一样为
2222