このガイドでは、cloudflared と Cloudflare One Client を使って、プライベート IP アドレスへの安全なリモートアクセスを有効にする方法を説明します。プライベートネットワーク全体、サブネット、または静的 IP で定義したアプリケーションを接続できます。
インフラストラクチャを Cloudflare Tunnel で接続するには、次の手順を行います。
-
Cloudflare ダッシュボードで Networking > Tunnels を開きます。
Tunnels を開く ↗ -
新しいトンネルを作成する か、既存の
cloudflaredトンネルを編集します。
-
Cloudflare ダッシュボードで Networking > Routes を開きます。
Routes を開く ↗ -
Create route > Tunnel CIDR を選びます。
-
作成したトンネルを選び、トンネル経由でルーティングする IP/CIDR レンジを入力します(例:
10.0.0.1または10.0.0.0/8)。 -
(任意)このトンネルルートに 仮想ネットワーク を選びます。この手順は、ルートの IP/CIDR レンジがアカウント内の別のルートと重なる場合にだけ必要です。仮想ネットワークを選ばない場合、IP ルートは
defaultネットワークに割り当てられます。 -
Create route を選びます。
デバイスを Cloudflare に接続するには:
- デバイスに Cloudflare One Client をデプロイ し、Traffic and DNS mode にするか、プロキシエンドポイントを生成 して PAC ファイルをデプロイします。
- デバイス登録ルールを作成 し、Zero Trust 組織に登録できるデバイスを決めます。
デフォルトでは、WARP は RFC 1918 空間 ↗ 向けのトラフィックを除外します。これはプライベートネットワークでよく使われ、インターネットから到達できない IP アドレスです。Cloudflare One Client が private network へトラフィックを送るには、Split Tunnels を設定し、private network の IP/CIDR が Cloudflare One Client 経由でルーティングされるようにします。
-
まず、Split Tunnels のモード が Exclude と Include のどちらになっているかを確認します。
-
モードに応じて Split Tunnel のルートを編集します。
Exclude モードを使っている場合:
a. private network の IP/CIDR 範囲を含む ルートを削除 します。たとえば、ネットワークが AWS のデフォルト範囲
172.31.0.0/16を使っている場合は、172.16.0.0/12を削除します。b. private network が明示的に使っていない IP/CIDR 範囲を再追加 します。上記の AWS の例では、
172.16.0.0/13、172.24.0.0/14、172.28.0.0/15、172.30.0.0/16を新たに追加します。こうすると、172.31.0.0/16向けのトラフィックだけが Cloudflare One Client 経由になります。再追加する IP アドレスは、次の計算機で求められます。
計算機の使い方
- Base CIDR に、Split Tunnels から削除した RFC 1918 範囲を入力します。
- Subtracted CIDRs に、private network が使う IP/CIDR 範囲を入力します。
- 計算機の結果を Split Tunnel の Exclude モードのリストに戻します。
Cloudflare One Client に含めるプライベート IP 範囲を狭めると、ユーザーの ローカルリソースへのアクセス を壊すリスクを下げられます。
Include モードを使っている場合:
- 必要な Zero Trust ドメイン または IP アドレス を Split Tunnel の include リストに追加します。
- private network の IP/CIDR 範囲を含める ルートを追加 します。
デフォルトでは、Zero Trust 組織に登録したすべてのデバイスが、Cloudflare Tunnel 経由でプライベートネットワークに接続できます。Gateway を設定すると、ネットワークトラフィックを検査し、ユーザーのアイデンティティとデバイスポスチャに基づいてアクセスを許可またはブロックできます。ポリシー設計の詳細は、最初のアプリケーションを保護する を参照してください。
- Traffic policies > Traffic settings を開きます。
- Proxy and inspection で、Allow Secure Web Gateway to proxy traffic をオンにします。
- TCP を選択します。
- UDP を選択します(内部 DNS リゾルバーへのトラフィックをプロキシするために必要です)。
- (推奨)
pingやtracerouteなどの診断ツールのトラフィックをプロキシするには、ICMP を選択します。cloudflared経由で ICMP トラフィックを許可するには、システムの更新 も必要な場合があります。
-
cloudflare_api_token↗ に次の権限を追加します。Zero Trust Write
-
cloudflare_zero_trust_device_settings↗ リソースを使い、TCP または UDP のプロキシ(あるいは両方)をオンにします。resource "cloudflare_zero_trust_device_settings "global_warp_settings" { account_id = var.cloudflare_account_id gateway_proxy_enabled = true gateway_udp_proxy_enabled = true }
これで Cloudflare は、登録済みデバイスからのトラフィックをプロキシします。split tunnel の設定 で除外したトラフィックは対象外です。Gateway がトラフィックを転送する仕組みの詳細は、Gateway プロキシ を参照してください。
Cloudflare One Client のユーザーがプライベートネットワーク全体にアクセスできないようにするには、プライベート IP 空間向けの キャッチオール Gateway Block ポリシー を作成することを推奨します。そのうえで、特定のアプリケーションや IP へのアクセスを許可する、優先度の高い Allow ポリシー(Access または Gateway)を重ねます。
IP またはホスト名ではっきり定義できるアプリケーションがある場合は、Access アプリケーションを作成 し、SaaS やほかの Web アプリとあわせてユーザーアクセスを管理することを推奨します。従来のファイアウォールモデルでプライベートネットワークを保護したい場合は、IP レンジとドメイン向けに Gateway のネットワークポリシーと DNS ポリシーを作成できます。
Gateway ポリシーの作成について詳しくは、最初のアプリケーションを保護する と よく使うネットワークポリシー を参照してください。
エンドユーザーは、指定したレンジ内の任意の IP アドレスにアクセスして、ネットワーク上の HTTP または TCP ベースのサービスに到達できます。
IP ではなくプライベートホスト名でサービスに到達できるようにするには、Private DNS を参照してください。
このレンジの IP を公開の TCP または UDP トラフィックに公開するには、仮想ネットワークを使って Spectrum アプリケーションを作成する を参照してください。
デバイスが正しく設定されているかを確認するには、ユーザーは https://help.teams.cloudflare.com/ にアクセスし、次を確認します。
- ページに Your network is fully protected と表示されること。
- HTTP filtering で WARP と Gateway Proxy の両方が有効であること。
- Team name が、トンネルを作成した Zero Trust 組織と一致していること。
デバイスのローカル IP アドレスを確認し、プライベートネットワークの IP/CIDR レンジに含まれていないことを確認します。たとえば、一部の家庭用ルーターは 10.0.0.0/24 レンジで DHCP を割り当てます。これは、多くの企業プライベートネットワークが使う 10.0.0.0/8 と重なります。ユーザーの自宅ネットワークがトンネル内のルートと同じ IP アドレスを使うと、デバイスはアプリケーションに接続できません。
IP の競合を解消するには、次のいずれかを行います。
- ユーザーのルーターを、重ならない IP レンジに再設定します。対応ルーターは、通常
192.168.1.0/24、192.168.0.0/24、または172.16.0.0/24を使います。 - Split Tunnel 設定の IP レンジを絞り、
10.0.0.0/24を除外します。これは、プライベートネットワークに10.0.0.0/24内のホストがない場合にだけ有効です。 - プライベートネットワークの IP/CIDR を、家庭用ネットワークでよく使われるレンジと重ならないように変更します。