#show tech >>log

Post title icon Cloudflare ZeroTrusを利用するために機能を整理してみた

# CloudflareのZeroTrusとは

はやりのZeroTrustを実現するためのサービス群.といった感じでしょうか.

特徴としては,無償である程度の機能が利用出来るという点でZeroTrustに触れてみるには最適なサービスです.

ということで,勉強を兼ねて各種機能を簡単にまとめてみます.

各種機能のイメージ(構成した概要)は以下となります.

認証をEntraIDと連携し,Tunnelsでオンプレミス環境へのリモートアクセスを実現.

Warpアクセスとブラウザアクセスを可能にしてオンプレミス環境へ接続.

ということでどちらからというと,リモートアクセスが主体になっている構成です.

Image in a image block

>> Team

ZeroTrustを管理する単位という感じです.

WARPクライントでZero Trustにログインする際やApp LauncherのURLにも利用されます.

>> 認証

今回は,Azure AD(EntraID)を利用しました.その他も現状以下が利用可能なようです.

Image in a image block

今回の環境はEntraIDの条件付きアクセスでMDM管理,二要素認証を必須としてセキュリティを向上させています.

これで,EntraIDの認証要件でCloudflare ZeroTrustが利用出来るようになります.

>> WARPクライアント

端末にインストールするエッジクライアントです.

こちらをインストールして,ZeroTrustにログインするとCloudflareにつながります.

>> Tunnel

リモートアクセスがメインなので,オンプレミス環境のLinuxにCloudflare Tunnnelsをインストールします.

これで,端末WARPとオンプレミスCloudflaredがCloudflare側で終端された形となります.

>> Gateway

次に,Gatewayでポリシーを定義します.

設定は,以下の3つに分かれています.

  1. DNSポリシー
  2. HTTPポリシー
  3. ネットワークポリシー

基本は上記の順番の優先順位になるようです.

以上の設定で,インターネット向け,リモートアクセスは制御出来るようになります.

その他細かな設定がかなりありますので,環境に合わせて設定してください.

Icon in a callout block
考察

これで十分利用出来るのですが,セキュリティを向上させるためにHTTPポリシーやネットワークポリシーで再認証を短くしていると,WARPで接続状態になっているのに接続されない(再認証が求められるのが遅れる)状態が見られました.

何度か接続失敗を繰り返しているとやっと再認証となるイメージです.

>> Access

上記考察を解消するために&オンプレミスアプリをSaaS化するためにAccessのアプリケーションを利用してみました.

AppLauncher(ブラウザのポータル画面)で認証が行われ,そこに定義したアプリケーションが利用出来る形となります.

ここでセルフホストでアプリケーションを追加すると,プロキシのような形でオンプレミスアプリが利用可能とります.

指定した認証でオンプレミスアプリへの接続認証が行われるため,昔のようにアプリを公開する必要もありませんし,ブラウザで利用出来るので専用クライアントも不要という便利さです.

また,SSHやRDPはブラウザレンダリングでブラウザで利用出来るのでちゃんと整備すればCloudflareだけで完結しそうです.

※このAccessはWARP認証も利用出来ます.そのためWARPで認証された状態であればAppLauncherの認証はスルーされます.ただし,HTTPやネットワークでブロックされる場合があるので許可されるように設定は必要となります.

Icon in a callout block
最後に

無償版といえ,ZeroTrustを検証してみるとか,小規模でリモートアクセスがメインという環境には最適であると思いました.