私はツイッターの使用を中止することにしましたが、自分のコンテンツのために、そしてその野蛮な侵略者に対するウクライナを支援するために、私は現代のメディアの風景がかなり断片化されていることを理解しました。私はMastodon、Bluesky、LinkedInに賭けています。私の流れは次のとおりです:私が興味深い作品を読んだとき、私はそれを出版する予定です。問題は、ソーシャルメディアのすべてのプラットフォームが異なるスケジュールを持っていることです:Mastodonは LinkedInには内蔵機能があり、Blueskyには...何もありませんでした。 マストドン スケジュール したがって、私は複数のソーシャルメディアプラットフォームで投稿をスケジュールするアプリケーションを構築し始めました. Details are irrelevant to this post. It's enough to say, modules are running in a Docker container on my Synology NAS at home. 私が家に帰るときにアクセスしますが、私はすぐに 何週間も続けてコンテンツの発行を続けたいのですが、その後質問が浮かび上がりました: ホームネットワークを暴露せずにそこから安全にアクセスする方法は? ? A.地元の名前 オーストラリア旅行 私のプライバシーを脅かす 問題 I have already written a full-fledged post on the 以下、概要です。 サブドメインによるプライバシー問題 ポート転送はあなたのホームIPアドレスを暴露します。 Dynamic DNS は常に更新が必要です。 オープンポートはセキュリティリスク SSL証明書は管理するのに困難です。 私は、以下のような解決策を望んでいた。 ホームネットワークを安全に保つ HTTPS を自動提供 認証追加 シンプルに維持 Cloudflare トンネル Cloudflare Tunnel 作成 a あなたのネットワークからCloudflareのインフラストラクチャに。あなたのドメインへのリクエストはこのトンネルを通じてあなたのアプリケーションにルーティングされます。 secure outbound connection 流れはシンプル: → → → → インターネット CloudFlare Edgeについて トンネル ナス アプリケーション すべての接続はNASから出入りしているので、ファイアウォールは影響を受けないままです。 トンネルの設置 ドキュメンタリーはかなり良いですが、以下はステップです。 前提条件 すでに持っていた: Cloudflareによって管理されるドメイン My NAS で動作する Docker サービス Docker コンテナとして動作するアプリケーション 名称トンネルを作る Cloudflare Zero Trust ダッシュボード: Navigate to Access > トンネル トンネルを作る トンネルを作る Cloudflaredを選択 好きなように名前をつけて、たとえば、NAS トンネルトークンのコピー - あなたはすぐにそれを必要とします このトークンは、あなたのトンネルを Cloudflare に認証します。 「RUN cloudflared on the NAS」 Dockerの公式画像をダウンロード: docker pull cloudflare/cloudflared:2025.9.1 次に、以下の設定で Synology Docker UI を介してコンテナを作成します。 コンテナ名: Cloudflared コマンド: tunnel --no-autoupdate run 環境変数: TUNNEL_TOKEN=<your-token-here> ネットワーク:アプリケーションが接続しているネットワークと同じネットワーク、例えば、ブリッジ ここで重要な部分は、ネットワークです。 コンテナとアプリケーションは同じネットワークに存在する必要があります。 cloudflared Create a link from the アプリケーションコンテナへのコンテナ: cloudflared リンクコンテナ: リンクしたいコンテナの名前、たとえば myapp Alias: あなたが雲からそれにアクセスする名の下で. あなた自身に好意を払い、同じ名前を使用します。 許可する アプリケーションに到達するには 港を発見する必要もない。 cloudflared http://myapp:<PORT> 公開ホスト名の設定 Cloudflare ダッシュボードに戻り、トンネル構成で: Public Hostname タブへ Click Add a Public Hostname をクリックします。 あなたのサブドメイン、ドメイン、およびサービスパス、例えば、 http://myapp:<PORT> ここにあるホスト名は、Docker リンクで設定したものに正確に匹敵する必要があります。 dial tcp: lookup wrongname on 192.168.1.254:53: no such host 追加認証 この時点で、URLを持つ誰でもアプリケーションにアクセスできます. それはオプションかもしれませんが、それは私の文脈ではありません。 私は独自の認証メカニズムを作成することを検討しましたが、最終的にそれに反対しました。Cloudflareは、構成のみで必要なすべてを提供します - コードの変更は必要ありません。 複数サポート : Cloudflare アクセス アイデンティティプロバイダー 電子メールで一度のPIN GitHub Googleの Azure AD オクタ など を追加するために 方法: 1回のPINログイン Navigate to Access > アプリケーション Add an application > Self-hosted をクリックします。 アプリケーション名、ドメイン、サブドメインでアプリケーションを設定する CLICK NEXT Create a policy: Policy name: "Allow myself" Action: Allow Configure rules: Click + Add include Selector: Emails Value: john@doe.it 次をクリックし、アプリケーションを追加します。 ♪ トンネルにポリシーを追加することを忘れないでください 最初は正しくリンクしていなかったので、Cloudflareがなぜ私にメールを送ってくれなかったのか疑問に思いました。 Cloudflare ポリシーは非常に強力です. 見てください。 結果 次に、外部からのアプリケーションを参照してみると、 Cloudflare が認証ページを表示 I fill in my email Cloudflareは一度のコードを送信します。 オリジナル Cloudflare プロキシはトンネルを通じてリクエストします。 申請は申請を受け取ります。 どこからでも投稿できます! 結論 Cloudflare Tunnel は、自己ホスティングのためのエレガントなソリューションです。インストールには約30分かかり、その大半をコンテナ名やポリシー割り当てで自分自身のエラーを修正することに費やしました。 自宅から実行する個人プロジェクトでは、コストなし、自動HTTPS、内蔵認証、ネットワーク曝露ゼロなどが難しく、上記の設定が同じ問題に直面している他の人に役立つことを願っています。 さらに進むには: Cloudflare Tunnel for Home アシスタント Cloudflare アクセスコントロール Cloudflare ポリシー Cloudflare Zero Trust トンネル