云服务器太贵了,小主机也买不起?来看看我的!
需要您拥有最新的Windows系统和配套的WSL2,并且主板支持WakeOnLan,并且主机拥有广域IPv6地址。
1. 开启WSL2镜像模式 #
在windows系统的用户目录下创建.wslconfig
文件,配置内容如下
[wsl2]
networkingMode=mirrored # 端口自动转发,Windows和WSL共享端口,都使用127.0.0.1
dnsTunneling=true # WSL的DNS请求通过Windows转发
firewall=true # WSL同步Windows防火墙规则
autoProxy=true # Windows设置代理时自动同步给WSL
[experimental]
# sparseVhd = true # 自动清理磁盘空间
autoMemoryReclaim=gradual # 可以在gradual 、dropcache 、disabled之间选择,开启会造成WSL中Docker启动异常
最重要的是networkingMode=mirrored
,如此配置,wsl2的ipv6地址也将和windows主机的一致。
2. 配置WSL2 SSH Server #
sudo nvim /etc/ssh/sshd_config
可能需要将Port修改为其它非22端口(运营商可能会默认封掉家用宽带的这些端口)
一些关键配置:
# 监听IPv6请求
ListenAddress ::
# 直接使用密钥登录
PubkeyAuthentication yes
# 禁用密码登录
PasswordAuthentication no
之后,配置~/.ssh/authorized_keys
,将SSH客户端的公钥按行存入其中即可。
3. 配置Windows防火墙 #
高级安全 Windows Defender 防火墙
->入站规则
->新建规则
->端口
,允许你所使用的端口的TCP连接。
4. 配置WSL2开机启动(无需用户登录) #
In Windows System
任务计划器
->创建任务
->√不管用户是否登录都要运行
触发器
->新建
->启动时
->确定
操作
->新建
->程序或脚本
选择wsl.exe(通常在C:\Program Files\WSL\wsl.exe)条件
->所有选项取消勾选设置
->除允许按需执行任务
外,其它全部取消勾选- 完成
5. 配置 DDNS #
笔者这里域名用的Cloudflare托管,所以选择cloudflare-ddns这个项目。 一定记得配置DDNS,否则一旦ipv6改变,主机不在身边就会直接失联。
6. 其它优化建议 #
Windows可以搭配Sunshine和与其配套的Moonlight进行串流,外出再也不需要带笔记本了。笔者使用Android平板进行串流实测体验超乎意料的好。
参考资料 #
https://www.ryanshang.com/2024/01/06/WSL2%E8%AE%BE%E7%BD%AE%E9%95%9C%E5%83%8F%E7%BD%91%E7%BB%9C%E6%A8%A1%E5%BC%8F/ https://www.sjdhome.com/blog/post/wsl2-auto-start/