2023年9月のCasaOSチュートリアルは、単なるリンクの紹介ではなく、実際の手順を順に説明した記事です。当時CasaOSユーザーが行っていた一連の流れ、つまりCloudflaredアプリをインストールし、リモート管理されるCloudflare Tunnelを作成し、コネクタートークンをコピーして、そのトークンをCasaOS Cloudflared Web UIに貼り付け、コネクターを起動し、Cloudflareでトンネルの状態が「Healthy」と表示されることを確認するまでを詳しく説明しています。
基本的なアーキテクチャは現在も役立ちますが、長期間掲載するページにするには2点を更新する必要があります。1つ目は、Cloudflare Zero Trustのインターフェースが2023年以降に変更されたことです。2つ目は、現在のCloudflare Tunnelの設定で表示されるコネクタートークンは機密性の高い認証情報であり、スクリーンショットで公開したり、他のユーザーの例からコピーしたりしてはいけません。
これはZimaOSの手順ではなく、CasaOSのチュートリアルです
この情報源はCasaOSカテゴリーに属し、独自の小規模なCloudflared Web UIを備えたCasaOS App Storeパッケージを使用しています。ZimaOSでも同じ上流のCloudflareテクノロジーを実行できる可能性はありますが、そのアプリ管理インターフェースやネットワークモデルが2023年のスクリーンショットと完全に一致すると想定してはいけません。
ステップ1:CasaOS App StoreからCloudflaredをインストールする
このアプリの目的は、自宅サーバー上でCloudflareコネクターを実行することです。コネクターはCloudflareへの送信方向の暗号化経路を確立するため、トンネルをオンラインに保つだけの目的で、ルーターに新たな受信ポート転送ルールを設定する必要はありません。
ステップ2:Cloudflare Zero Trustでトンネルを作成する
特定のアプリケーションではなく、サーバーや場所を識別できる名前をトンネルに付けます。1つのコネクターで複数のホスト名やサービスにルーティングできるため、次のような名前が適しています ホーム-CasaOS または サーバールーム ~より長持ちする Jellyfin専用.
ステップ3:コネクタートークンを非公開でコピーする
現在のCloudflareのガイダンスでは、セキュリティ境界が明確に示されています。トンネルトークンは、そのリモート管理トンネル用のコネクタを実行するのに十分です。パスワードと同じように扱ってください。実際のトークンが公開スクリーンショットやログに表示されたことがある場合は、ローテーションしてください。
ステップ4:CasaOS Cloudflared Web UIを開く
当時のパッケージには、CasaOSアプリのアイコンから起動できる小さなインターフェースが用意されていました。このUIではコネクタトークンを入力できたため、ユーザーが完全なDockerコマンドを手動で組み立てる必要はありませんでした。
この利便性を提供するレイヤーは、そのCasaOSパッケージに属していました。現在のCloudflaredコンテナは、環境変数、コマンド引数、Composeファイル、または現在のパッケージの設定から構成する場合があります。
ステップ5と6:トークンを保存してコネクタを起動する
2023年のUIでは、トークンを貼り付けて保存するとボタンの表示が「Start」に変わりました。コネクタを起動すると、その表示は「Stop」に変わります。これらの表示状態はパッケージ固有のものでしたが、2つの別々の確認を表しています。設定が受け入れられ、その後コネクタプロセスが実際に起動したということです。
最新のコネクタがすぐに終了する場合は、DNSレコードを変更する前にログを確認してください。接続されていないトンネルは、CloudflareのDNS設定に関係なくホスト名をルーティングできません。
最終ステップ:トンネルが正常であることを確認する
元のチュートリアルではCloudflare Tunnelsの一覧に戻り、Healthyステータスを確認していました。これは現在も重要な検証手順です。公開ホスト名が設定されていても、コネクタ自体が接続されていることの証明にはなりません。
「Healthy」とは、Cloudflareがトンネル用のアクティブなコネクタを少なくとも1つ認識できる状態を意味します。ただし、コネクタがその先にあるローカルアプリケーションへ到達できることを証明するものではありません。
正しいローカルサービスへのルートを追加する
コネクターがオンラインになったら、ホスト名を実際のアプリケーションのオリジンにマッピングします。HTTPアプリケーションの場合、LAN IPとポートの組み合わせ、またはCloudflaredが到達できる別のコンテナーアドレスを指定できます。
Cloudflaredが通常のDockerブリッジネットワーク内で実行されている場合、 localhost Cloudflaredコンテナー自体を指します。これは自動的にCasaOSホストを意味するわけではありません。この違いは、正常なトンネルが502や接続エラーを返す最も一般的な原因の一つです。
ルーターのポートフォワーディングが不要な理由
コネクターはCasaOSからCloudflareへのアウトバウンド接続を作成します。受信したブラウザーリクエストはCloudflareに到達し、確立済みのトンネルを通って戻ってきます。そのため、ルーターに受信用のポートフォワーディングが設定されていなくても、Cloudflare Tunnelでサービスを公開できます。
Cloudflare Accessで機密性の高いサービスを保護する
トンネルは通信手段であり、認証ポリシーではありません。ダッシュボード、ターミナル、パスワードマネージャー、管理UIをパブリックホスト名で公開する場合は、Cloudflare Accessまたは適切な別の認証レイヤーでIDポリシーを追加してください。
アプリケーション独自の認証も有効にしておきましょう。Cloudflare Accessとアプリケーション認証は、それぞれ異なる境界を保護します。
デプロイメントの管理者が変わったらトークンをローテーションする
サーバーを売却、再構築、または別の管理者に譲渡する場合は、古いトンネル認証情報を失効させるか、ローテーションしてください。永続Dockerボリュームによって、想定以上に長く設定が保持されることがあるため、認証情報のライフサイクルは意図的に管理する必要があります。
CasaOS上のCloudflare Tunnel FAQ
Cloudflare Tunnelにはポートフォワーディングが必要ですか?
いいえ。コネクターはCloudflareへのアウトバウンド接続を確立します。
元のCasaOSチュートリアルでは、設定に何を使用していましたか?
ユーザーがリモート管理トンネルのトークンを貼り付けた、小さなWeb UIを備えたCloudflaredアプリ。
コネクタートークンをチュートリアルのスクリーンショットに表示しても安全ですか?
いいえ。本物のトークンは秘密情報として扱い、公開されてしまった場合はローテーションしてください。
「Healthy」なら、アプリケーションにはすでにアクセスできますか?
必ずしもそうではありません。「Healthy」はコネクターがオンラインであることを確認するだけで、オリジンへのルートとアプリケーションが正しく設定されている必要があります。
