我們今天來討論兩個問題
昨天的遺憾,Day24- OPNsense 再續前緣 (填坑時間) ,怎麼在用 cloudflared 的情況下使用內網 IP ping 到內網設備,和學長討論後有一個暫時的解決辦法。
如果你是用 systemctl enable cloudflared && systemctl start cloudflared 指令的話,到現在我實在沒想到辦法。
不過如果是用 cloudflared tunnel run ... 的指令的話有救,執行前須要用指令 sudo sysctl -w net.ipv4.ping_group_range="0 65535"
,或是使用以下指令建立 sysctl.d 檔案,重啟電腦後可以略過執行上面指令
echo "net.ipv4.ping_group_range = 0 65535" | sudo tee /etc/sysctl.d/99-cloudflared-ping.conf
sudo sysctl --system
而原因基本就是 cloudflared 這個 daemon (守護進程) 沒辦法去使用 ping 的權限。
排除這點外,cloudflared 建立的 tunnel 非常方便,不過,我們是否還有更好的選擇?
有的兄弟,有的
在 Day04-網路的建置討論(後篇) 中我有一個非常大的遺憾。
起因是這樣的,為了安全,在外網的設備連線到內網時,我希望登入機器可以留下我獨有的 IP(類似 10.114.114.1/24 亦或是 6.15.44.1/24 這樣的)。而 wireguard 可以完美的做到這樣的事情,可是要拿到本地端的公鑰、vpn 伺服器端公鑰、編輯 vpn 伺服器配置文件和編輯本地端 vpn 軟體的配置文件,配置 VPN 好煩阿。
我有一個夢想,往後配置 VPN 不需要在這麼麻煩了。而答案,就是 cloudflare 大內網
只要設定得當,我們可以為每個裝置設置 CGNAT IP (範圍是 100.96.0.0/12,這是 cloudflare 提供給每個 warp 使用者可用的 IP 的範圍)
而關鍵是以下這兩個設定
詳細設定步驟,明天繼續。
inspired by:
使用 Cloudflare Zero Trust 创建大内网
ref:
Fix Ping Permissions in Debian
再次特別感謝 chess 學長