使用Cloudflare进行内网穿透

发布于 2022-05-12  836 次阅读


在没有公网IP的情况下,想要在外网进行访问则需要要进行内网穿透,而Cloudflare的零信任网络正好就提供了内网穿透的功能,由于Cloudflare也是DNS解析服务商,所以使用它的内网穿透可以直接与现有的域名一同使用,非常方便。但它也有缺点,就是只能穿透网页服务,如果想要用做游戏服务器或数据库之类的东西,则像异地组网一样,需要在双方都安装客户端。

首先需要登陆Cloudflare账号并进入仪表板,在仪表板的左侧点击Zero Trust进入Zero Trust配置面板。

初次进入可能需要绑定付费方式和选择套餐,这里选择免费套餐就好。

在Cloudflare Zero Trust面板中,内网穿透功能在Access中的Tunnel里面。点击之后选择Create a tunnel来创建一个隧道。

首先输入隧道的名字,输入一个方便辨认的名字就好。输入完成后需要选择客户端运行的操作系统,选择之后会给出如何运行客户端的说明。为了方便起见,推荐使用Docker来运行。

选择Docker,下面会给出包含Token的命令,注意不要泄漏。当然要是不小心泄漏了可以更换一个新的Token。复制命令并且粘贴到客户端中执行即可。

隧道创建完成之后就可以创建和内网其他机器的端口映射,选择Add a public hostname进入到设置界面。在Public Subdomain中输入要使用的子域,在Domain中选择要使用的域名,如果要限制外网能访问的路径,则在最后一栏输入允许访问的路径,最后点击保存。

保存完成后,可以在域名的DNS记录中发现多了刚才添加的子域的CNAME条目,测试一下能否正常访问即可。