# 20240211141946 Raspi4 Cloudflareでトンネルを作る #raspi #cloudflare ## 注意 色々なサイトを参考にしたけど、変化が激しいので100%参考になることは無かった。おそらくこのメモもすぐに陳腐化すると思う。私はこの分野の専門ではないので、全然わからないで適当にやっている。 ## トンネルとは [トンネリングとは?| ネットワークにおけるトンネリング | Cloudflare](https://www.cloudflare.com/ja-jp/learning/network-layer/what-is-tunneling/) ## 前提 - ドメインを持っている - ネームサーバーをcloudflareに移管できる - 操作はcloudflareの画面上で実行。 raspi上でコマンドラインでやる方法もあるっぽいが、試してない cf. [Create a locally-managed tunnel (CLI) · Cloudflare Zero Trust docs](https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/get-started/create-local-tunnel/) ## cloudflareでアカウントを作る [Cloudflare | Web Performance & Security](https://dash.cloudflare.com/sign-up) ここからサインアップしてアカウントを作る。 ## サイトを追加する ログインしてダッシュボードが表示されたら、 "+サイトを追加する"ボタンを押す。 ドメイン名を入力して"続行"ボタンを押す。 料金プランはFreeでOK ネームサーバーの変更をすることで、そのドメインはcloudflare管理にすることができる。 変更(これはドメインを取得したサイト側で行う)後、"続行" ボタンを押す。 クイック スタート ガイド 画面は(私はよくわからないので)全部デフォルトのまま保存して完了させる。 保留中はこの先の操作ができるのか不明。保留が解除されたら次へ進む。 20240211 時点では5分程度だった。 ## トンネルを作る ### Overviewの設定 Cloudflareダッシュボードから、Zero Trust を選択。新規タブが表示される。 Networks -> Tunnels をクリック、 表示された画面で "+ Create a tunnel"をクリック。 Select your connector: Cloudflared -> next Name your tunnel 適当に名前をつける。例: pi4 -> Save tunnel Configure 画面に遷移するので、自分の環境用のものを選ぶ。 Raspi4でraspbianを使っているなら、 Debian, arm64-bit この画面に書いてあるコマンドを順次実行して、インストール。 `sudo cloudflared service install `以降の文字列はアクセストークンなので、どこかにメモッておいた方がいいかもしれない。 [[20240211165804 cloudflareのaccess token|cloudflareのaccess token(private)]] 無事にインストールできたら、サービスが動いてるかを確認 ``` $ sudo systemctl status cloudflared ● cloudflared.service - cloudflared Loaded: loaded (/etc/systemd/system/cloudflared.service; enabled; preset: enabled) Active: active (running) since Mon 2024-02-05 21:19:34 JST; 11s ago Main PID: 2181 (cloudflared) Tasks: 10 (limit: 3918) CPU: 207ms CGroup: /system.slice/cloudflared.service └─2181 /usr/bin/cloudflared --no-autoupdate tunnel run --token ... ``` ### Public Hostnameの設定 [[20240211193602 Cloudflare Public Hostnameの設定|Cloudflare Public Hostnameの設定]]