備忘録:Cloudflare Tunnelを使って無料で自宅WEBサーバーを公開する手順
Cloudflare Tunnel を使って無料で自宅の Raspberry Pi に構築した Web サーバーを公開する手順の備忘録。
1. 動作環境
- ハードウェア
Raspberry Pi 4 Model B - OS
Raspberry Pi OS Lite (64-bit) - Web サーバー
nginx
2. 概要
Raspberry Pi にコネクタ(Cloudflared)をインストールして Cloudflare のネットワークと Web サーバーを接続する。アクセスの概要は以下の通り。
3. 事前準備
事前に以下の準備を行っておく。
- 自宅サーバーへの Web サーバーの構築。
- 独自ドメインの取得。
- Cloudflare のアカウントの登録。
4. 公開手順
Cloudflare でドメインの接続と Cloudflare Tunnel の設定を行い公開する。
4.1. ドメインの接続
Cloudflare ダッシュボードの右上の「+ 追加」などからドメインの接続の設定に進み、「既存のドメインを入力」にドメインを入力して「続行」を押下する。

プラン「Free」を選択する。

「アクティベーションに進む」を押下する。

表示される Cloudflare ネームサーバーを、取得した独自ドメインのレジストラ側で設定し「続行」を押下する。

接続したドメインのステータスが「アクティブ」になるのを待つ。

4.2. Zero Trust の設定
Cloudflare ダッシュボードのサイドメニューから「Zero Trust」を選択して「チーム名」を入力し「次へ」を押下する。

プラン「Free」を選択し支払い方法などを設定する。

4.3. トンネルの設定
Zero Trust ホームのサイドメニューから「ネットワーク」 > 「Tunnels」を選択して「トンネルを追加する」を押下する。

トンネルの種類の選択で「Cloudflared」を選択する。

トンネル名を入力して「トンネルを保存」を押下する。

オペレーティングシステムとして Debian を選択して表示されるコマンドを Raspberry Pi で入力しコネクタをインストールする。正常にインストールされると下部の Connectors に情報が表示されるので「次へ」を押下する。

パブリックホスト名の設定で「ホスト名」と「サービス」を入力して「セットアップを完了する」を押下する。
- ホスト名
Cloudflare に接続した独自ドメインに任意にサブドメインとパスを付加したもの
(例:test123.[独自ドメイン]) - サービス名
Raspberry Pi 上でアクセスする Web サーバーの URL。
(例:http://localhost:80)

トンネルのステータスが「HEALTHY」になっていればアクセス可能。

ブラウザからhttps://test123.[独自ドメイン]にアクセスし自宅の WEB サーバーのコンテンツが表示されれば OK。

Discussion