# CloudflareのZeroTrusとは
はやりのZeroTrustを実現するためのサービス群.といった感じでしょうか.
特徴としては,無償である程度の機能が利用出来るという点でZeroTrustに触れてみるには最適なサービスです.
ということで,勉強を兼ねて各種機能を簡単にまとめてみます.
各種機能のイメージ(構成した概要)は以下となります.
認証をEntraIDと連携し,Tunnelsでオンプレミス環境へのリモートアクセスを実現.
Warpアクセスとブラウザアクセスを可能にしてオンプレミス環境へ接続.
ということでどちらからというと,リモートアクセスが主体になっている構成です.
>> Team
ZeroTrustを管理する単位という感じです.
WARPクライントでZero Trustにログインする際やApp LauncherのURLにも利用されます.
>> 認証
今回は,Azure AD(EntraID)を利用しました.その他も現状以下が利用可能なようです.
今回の環境はEntraIDの条件付きアクセスでMDM管理,二要素認証を必須としてセキュリティを向上させています.
これで,EntraIDの認証要件でCloudflare ZeroTrustが利用出来るようになります.
>> WARPクライアント
端末にインストールするエッジクライアントです.
こちらをインストールして,ZeroTrustにログインするとCloudflareにつながります.
>> Tunnel
リモートアクセスがメインなので,オンプレミス環境のLinuxにCloudflare Tunnnelsをインストールします.
これで,端末WARPとオンプレミスCloudflaredがCloudflare側で終端された形となります.
>> Gateway
次に,Gatewayでポリシーを定義します.
設定は,以下の3つに分かれています.
- DNSポリシー
- HTTPポリシー
- ネットワークポリシー
基本は上記の順番の優先順位になるようです.
以上の設定で,インターネット向け,リモートアクセスは制御出来るようになります.
その他細かな設定がかなりありますので,環境に合わせて設定してください.
これで十分利用出来るのですが,セキュリティを向上させるためにHTTPポリシーやネットワークポリシーで再認証を短くしていると,WARPで接続状態になっているのに接続されない(再認証が求められるのが遅れる)状態が見られました.
何度か接続失敗を繰り返しているとやっと再認証となるイメージです.
>> Access
上記考察を解消するために&オンプレミスアプリをSaaS化するためにAccessのアプリケーションを利用してみました.
AppLauncher(ブラウザのポータル画面)で認証が行われ,そこに定義したアプリケーションが利用出来る形となります.
ここでセルフホストでアプリケーションを追加すると,プロキシのような形でオンプレミスアプリが利用可能とります.
指定した認証でオンプレミスアプリへの接続認証が行われるため,昔のようにアプリを公開する必要もありませんし,ブラウザで利用出来るので専用クライアントも不要という便利さです.
また,SSHやRDPはブラウザレンダリングでブラウザで利用出来るのでちゃんと整備すればCloudflareだけで完結しそうです.
※このAccessはWARP認証も利用出来ます.そのためWARPで認証された状態であればAppLauncherの認証はスルーされます.ただし,HTTPやネットワークでブロックされる場合があるので許可されるように設定は必要となります.
無償版といえ,ZeroTrustを検証してみるとか,小規模でリモートアクセスがメインという環境には最適であると思いました.