另外,本文雖然使用 Synology 進行示範,但基本上大部分廠牌甚至自建的 NAS 都適用於這套方案,只是 NAS 端的設定方法還需要各位自己去調查。
網路環境介紹
本人的住家是由房東提供整棟住戶的網路,由於我不知道主路由器的網管密碼,且網路是全體住戶共用的,因此打從一開始就否決了 DDNS 這套方案。從主路由器拉了一條網路線到我的房間,房間中有一台路由器作為主要的 NAT 環境,提供 WIFI 給所有的無線裝置且拉了一條線到電腦旁,由於本來這條線只提供電腦使用,也沒有想到會再購買一台 NAS,又因主路由器只提供到 100M 的網速,因此我又購入了一台交換器將該線的訊號提供給電腦和 NAS 使用,電腦到 NAS 之間有 1000M 的傳輸速度,交換器至路由器之間為 100M,路由器對外也是 100M。另外,全部設備都在 192.168.1.0/24 網段上。
註冊 Cloudflare Zero Trust 平台
首先,進入 Cloudflare Zero Trust,會要求你設定你的團隊名稱,可以輸入一個你喜歡的名字。然後會讓你選擇你想選擇的方案,如果沒有什麼特殊需求或是錢多到沒地方花,可以直接選擇免費方案 (Free)。然後按 Proceed to Payment。之後新增一個付款方式。新增完後,點 Purchase。之後你就會成功進入 Cloudflare Zero Trust 平台。
如果你希望在使用 WARP 直接訪問內網時也可以用 Tunnel 中的 Public hostname 來訪問的話 (直接連 192.168.1.10 而不是經過 Access),可以到 Gateway 下的 Firewall policies 中新增防火牆規則。點 Create a DNS policy。Policy name 一樣隨喜,STEP 2 中選 Domain is 你設定的網址。STEP3 的 Action 則是 Override,Override Hostname 輸入 NAS 的內網 IP。然後 Create policy,你就會在連上 WARP 時,透過網址進入 DSM 直接透過內網 IP 訪問,而不會經過 Access 驗證了。這裡還有許多東西能夠玩,像是封鎖特定網域、特定應用,你可以慢慢摸索。不過要提醒一下,修改完後可能不會馬上生效,因為你的裝置會將 DNS 紀錄暫存,可以手動清理暫存或是等他自己清理。分辨他是經過 Access 或是透過內網IP的方式除了看會不會進入登入畫面、SSL 有沒有被標示不安全以外,也可以直接看網址會不會自動轉跳到帶有 DSM 的 PORT (5000, 5001) 上。
結語
除了 Tunnel、Access、WARP 外,Cloudflare Zero Trust 還有許多功能非常的不錯,這麼棒的一個平台竟然有免費方案,而且限制並不像其他服務多到強迫你得購買付費方案。只能說 Cloudflare 是一間佛心公司。我在設定的時候其實碰到了很多瓶頸,因為相關的資源太少人做了,因此只能用一些很零散的教學和官方文件來尋找各種我需要的功能。不過在設定的過程中我找到了一個針對 Tunnel+WARP 的部分說明得很詳細的教學,要不是有看到這篇文章,我大概也不會成功的設定這個部分了。以下提供該教學的網址給各位參考:Securely access home network with Cloudflare Tunnel and WARP | Savjee.be最後也希望這篇文章能幫助到各位有需求的人。