使用 Cloudflare Tunnel 取代直接接觸公網

前言廢話

在以前,我們要架設網站,通常都是直接讓網域綁上自己的 IP 位址,但因為危險,所以後來出現了類似 Cloudflare CDN 類型的東西。不過就算是這樣,我們還是需要在防火牆上允許連入。那有沒有方法可以不用在防火牆上允許,Cloudflare 也能從我們這拿到資料?

因此,Cloudflare Tunnel 就此誕生。

建立 Tunnel

在 Cloudflare Dashboard 左側,我們選取 Zero Trust。進入後,選取 Access 裡的 Tunnel。

001.jpg

點選 Create a tunnel

002.jpg

取一個喜歡的名字。

003.jpg

接著,選取你的作業系統及位元,並跟著下面的步驟安裝。(本文章測試環境為 Debian 64-bit)

004.jpg

005.jpg

操作完後,可以看到網頁下方出現連接的裝置,後面也會看到你目前的 IP 位址,可以檢查一下。檢查後按 Next

006.jpg

接著定義一下 Cloudflare 要用什麼方法連上你的伺服器,完成後點選 Save Tunnel

007.jpg

接著畫面會回到 Tunnels 主頁,你可以看到你的隧道已經建立完成!

008.jpg

欣賞成果

接著,我們可以打開我們設定好的網域,由於我的機器上有裝一個 Nginx,所以我可以看到成功顯示畫面。

009.jpg

結語

這個 Cloudflare Tunnel 是一個很酷的玩具!如果你的環境是在 IPv4 NAT 之後,而且不能開 Port;又或者是你甚至連 IPv6 都沒有,沒辦法直接連上。那你可以用這個 Tunnel 就將網站連上,而無須開埠或進行任何安全性設定,對資安上也更有幫助!