其他分享
首页 > 其他分享> > Cloudflare Tunnel试用

Cloudflare Tunnel试用

作者:互联网

cloudflare tunnel 介绍

cloudflare tunnel通过在源站和cloudflare边缘节点建立一条隧道,所有访问此服务的流量都要先到达cloudflare,再经过cloudflare和服务器源站之间建立的cloudflare tunnel到达源站。同理,源站对客户端的响应也要先通过cloudflare tunnel送到cloudflare的边缘节点,再由cloudflare边缘节点送给客户端。cloudflare tunnel提供了两点好处:(1)隐藏源站,所有的流量都要经过cloudflare边缘节点,在cloudflare配置访问控制规则,可以过滤掉非法请求;(2)可以借助cloudflare tunnel提供内网内的服务。如接入家用宽带的服务一般只能在同一个网络内才能访问,但是借助cloudflare tunnel可以让在其他网络中的设备通过互联网访问此服务。

下图是cloudflare tunnel的工作原理示意,建立cloudflare tunnel需要一个工具,这就是cloudflare提供的cloudflared。将cloudflared部署在源站服务器上,cloudflared主动和cloudflare边缘节点建立隧道,并将信息上报给cloudflare。隧道建立后,如果有合法的流量访问源站服务,则cloudflare会通过cloudflare tunnel将流量送到源站。

cloudflare tunnel 使用

step0 设置nameserver

首先准备一个域名,并将域名的nameserver设置为cloudflare的nameserver(更改后到真正生效可能需要一段时间,大概几小时吧:))。

step1 配置域名

setp1-1 创建Tunnel

到cloudflare的零信任控制台Access》Tunnels点击Create a tunnel,然后给tunnel命令即可。

step1-2 配置Public Hostname

创建完test-tunnel隧道之后,进入配置界面,选择Public Hostname,点击Add a public hostname按钮,添加一个子域名,并配置本地服务。

配置子域名(Subdomain)和本地服务(Service),并保存。这里选择了HTTP协议,选择选择栏还有其他协议可以选择,如SSH、RDP、TCP等。其实只要是非HTTP/HTTPS的TCP流量(如SSH、RDP等)都可以选择TCP协议(因为内部只区分TCP和HTTP/HTTPS)。

配置完成之后,如下所示:

step2 源站安装cloudflared

找到控制台的如下信息,按照提示拷贝到源站服务器执行,并在源站起一个http服务(端口是8000)。

step3 验证效果

上面的操作执行完了之后就可以找一台测试机器,用浏览器打开www.whoami.monster,It works!

标签:Cloudflare,Tunnel,源站,TCP,tunnel,域名,试用,cloudflare,cloudflared
来源: https://www.cnblogs.com/triangleowl/p/16293619.html