如何通过ZeroTier VPN访问自托管Coder服务器?
配置Coder服务器通过ZeroTier VPN访问的步骤
确认ZeroTier网络基础配置
- 确保Coder服务器和需要访问的客户端都已加入同一ZeroTier虚拟网络,服务器的ZeroTier虚拟IP处于在线状态
- 在ZeroTier控制台中,确认服务器和客户端设备已被授权接入网络,无默认规则阻止两者通信
修改Coder服务器监听设置
- 默认情况下Coder可能仅监听本地回环或公网IP,需调整为监听ZeroTier虚拟IP或所有网卡地址:
- 编辑Coder配置文件(通常路径为
~/.coder/config.yaml),设置listen_addr: 0.0.0.0:3000(监听所有地址,端口根据实际情况调整),或者指定ZeroTier IP:listen_addr: <服务器ZeroTierIP>:3000 - 也可通过启动命令直接指定:
coder server --listen 0.0.0.0:3000
- 编辑Coder配置文件(通常路径为
- 默认情况下Coder可能仅监听本地回环或公网IP,需调整为监听ZeroTier虚拟IP或所有网卡地址:
配置服务器本地防火墙
- 允许ZeroTier网段的流量访问Coder服务端口,以ufw为例:
sudo ufw allow from <ZeroTier网段>/24 to any port 3000 - 以iptables为例:
sudo iptables -A INPUT -s <ZeroTier网段>/24 -p tcp --dport 3000 -j ACCEPT
- 允许ZeroTier网段的流量访问Coder服务端口,以ufw为例:
配置ZeroTier网络防火墙(可选)
- 在ZeroTier控制台的网络规则中添加针对性访问规则,比如允许客户端IP访问服务器的Coder端口:
accept tcp from <客户端ZeroTierIP>/32 to <服务器ZeroTierIP>/32 port 3000; - 或允许整个ZeroTier网段访问:
accept tcp from <ZeroTier网段>/24 to <服务器ZeroTierIP>/32 port 3000;
- 在ZeroTier控制台的网络规则中添加针对性访问规则,比如允许客户端IP访问服务器的Coder端口:
验证访问
- 在客户端设备上,通过浏览器访问
http://<服务器ZeroTierIP>:3000(若配置了HTTPS则用https://),能正常进入Coder登录界面即配置成功 - 若访问失败,依次排查:ZeroTier设备在线状态、Coder监听地址配置、本地防火墙规则、ZeroTier网络规则
- 在客户端设备上,通过浏览器访问
内容的提问来源于stack exchange,提问作者quarks
相关产品推荐
相关产品推荐

