使用Cloudflare Tunnel使Synology NAS能被外網存取

如果家裡有購買Synology NAS的,不妨會利用到Quickconnect這個外網投射的功能
但是又大串,本身又不好看
所以這篇文章將要來教你,如何使用Cloudflare的Zero Trust
來讓你的NAS可以綁定上自己的網域,並讓外部存取

這邊會需要註冊一個Cloudflare的帳號,以及啟用Zero Trust的服務

https://dash.cloudflare.com/sign-up

登錄進去後,進入Zero Trust的頁面

點選Networks裡的Tunnels,並按下Create Tunnel

這邊我們直接選擇Cloudflared

名稱隨意

可以先把下面的Token給記起來,晚點會需要用到

這邊可以選擇自己想要的Domain,Subdomain隨意,Path留空

這邊要注意的是,Synology的NAS是自有憑證的,所以要選擇HTTPS的選項
並且要把下方No TLS Verify打開

好了後我們Save Tunnel,接著換到NAS

進入套件中心,於設定中的套件來源,新增一個SynoCommunity的套件包

https://packages.synocommunity.com

搜尋Cloudflare Tunnel並安裝套件

在安裝的時候會提示你 直接填入剛剛設定Tunnel的Token即可

上述步驟做完後,應該就可以利用剛剛你設定的要連線的網域,成功連線了

到這邊其實就差不多了,但NAS存放著我們自己的資料,想必裡面會有很多重要的東西
所以這時候要來點進階的

利用WARP來連進我們的內網
讓組織內的人才能訪問網站

進入剛剛所創的Tunnel,點選Private Network,並Add一個

我家的內網是192.168.1.0/24網段,這邊就填入你家自己的網段即可

新增完網段後,來到設定,點選WARP Client

在Device posture處,點選Add new
下方的Warp • Warp是因為我已經新增了,所以才會出現

點選Warp,並取一個隨意的名稱,接著按下Save

回到Settings,點選最上面Device enrollment permissions點Manage

Rule name隨意,Rule action要選擇Allow
Include這邊看你想要怎麼驗證,我一般都是使用Email的方式,來獲取驗證碼

好了後按下Save

回到Settings,找到Device settings的Default,點選旁邊更多並選取Configure

滑到下方,有個Split Tunnels,點選Manage

這邊找到我們內網範圍(我的是192.168.1.0/24),我們要找包含他IP範圍的,所以把192.168.0.0/16刪除

刪除之後回到Settings,點選Network

這邊找到Firewall的地方,把Proxy打開,這樣我們就可以勾選UDP的選項,使用UDP來傳資料
ICMP可勾可不勾,看你自己想不想打開

到這邊,設定的部分就差不多結束了,剩下客戶端的部分

這邊下載Cloudflare本身的WARP客戶端

https://one.one.one.one

點選Preferences中的Account,並登錄你的Zero Trust組織

確認是Zero Trust的頁面後,把Warp打開
這邊我使用我自己本身的行動網路來示範,在沒有連接家中內網的情況

輸入內網連線的網址,這樣就可以了

那因為在相同網段的關係,所以內網中其他網頁也可以瀏覽

到這邊,我們就成功將原本Quickconnect做不到的事情,利用Cloudflare本身的服務來達成了
還可以因此來讓我們在外面連接以往連不到的內網服務
這樣再也不用remote家中的Windows VM才可以用東西了
當然,你也可以使用Wireguard來嘗試看看以上的環境,這部分就可以再自行研究
使用Wireguard還可以在外面用家中的網路來上網出去,真棒

感謝收看這次的教學,有什麼寫錯或者疑問可以在下方告訴我><




—–寫完這篇文章後發現的問題—–
欸如果開著WARP,又連家裡網路的話,會內網衝突啦
導致連不了內網的網頁
所以這時候只能把WARP關掉,才能連上了

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *