我在 Cloudflare 购买了一个域名,想使用一台 Macbook 远程桌面到家里的 Mac mini 来使用,网上翻了很多帖子,说用 Tunnel 可以实现内网穿透,于是折腾了下,下面是具体的步骤:
使用家里的 Mac mini ,作为服务端操作如下:
1 、在 Cloudflare 控制台选择 Zero Trust 新建一个 Tunnel ,并选择 Cloudflared 类型的 Connector ;
2 、在 Public Hostname Page 中设置了 Subdomain 、Domain 参数,Service 选择了 RDP ,URL 设置为 localhost:3389
;
3 、在 Install and run a connector 的页面,复制安装命令并运行:
brew install cloudflared &&
sudo cloudflared service install eyJhIjoiNGNxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
4 、运行完成后,在 Your tunnels 页面能显示出 Connectors 连接成功。
然后使用 Macbook 作为远程桌面的客户端,同样使用 brew 安装好了 cloudflared ,并运行如下命令:
cloudflared access rdp --hostname xxx.xxx.com --url rdp://localhost:3389
输出日志显示启动成功:
INFO Start Websocket listener host=localhost:3389
然后我使用访达的前往服务器功能,输入:vnc://127.0.0.1:3389
进行连接,连接失败,并有如下日志输出:
ERR failed to connect to origin error="websocket: bad handshake" originURL=https://xxx.xxx.com
检查了两台 Mac 的防火墙均处于关闭状态,google 了上面的错误日志看到有说是 Cloudflare 的网络设置中没有打开 WebSocket 导致,也检查了一下是默认开启的,现在不太确定是哪里的问题,不知道有没有小伙伴有成功的案例,不胜感激。
1
xxgzzzzzz 56 天前
我感觉 zerotier 是最简单最简单的...
或者 wireguard vnt 速度更快点 再或者 如果是 nat1 natmap 可以直连 |
![]() |
2
1423 56 天前
先确定内网能连上吧
而且这个功能也不需要有域名.. |
![]() |
6
oott123 56 天前 via Android
虽然说可能不是这个原因,但 vnc 的默认端口是 5900 ,3389 是 rdp …
|
![]() |
7
adrianzhang 56 天前
提醒你一下,最近开会,我的几条 access 都断了。
|
![]() |
9
fuo OP @adrianzhang 啊这,不过我现在连不上已经关了
|
![]() |
11
idblife 55 天前 via iPhone
tailsacle
|