Secure Web Gateway では、DNS トラフィック(example.com のようなドメイン名を IP アドレスに変換するためにデバイスが行うクエリ)を検査し、ユーザーが訪問できる Web サイトを制御できます。接続はすべて DNS ルックアップから始まるため、DNS フィルタリングは接続の最も早い段階で脅威をブロックし、デバイスが宛先に到達する前に止めます。DNS ポリシーを使い、組織全体でマルウェアドメイン、フィッシングサイト、またはコンテンツカテゴリ全体をブロックできます。
DNS クエリは、個々のデバイス(従業員のノートパソコンなど)からも、ネットワークロケーション全体(オフィスルーターなど)からもフィルターできます。導入形態に合う方法を選んでください。
ノートパソコンやスマートフォンなど、個々のデバイスからの DNS リクエストをフィルターするには:
- デバイスに Cloudflare One Client をインストール します。Cloudflare One Client は、デバイスの DNS クエリを Cloudflare 経由で送り、Gateway が検査とフィルタリングを行えるようにする軽量エージェントです。
- 組織の Zero Trust インスタンス [^1] に Cloudflare One Client を登録 します。これにより、WARP が適用する Gateway ポリシーが決まります。
- (任意)リクエストがブロックされたときに一般的なブラウザーエラーではなく カスタムブロックページ を表示したい場合は、デバイスに Cloudflare のルート証明書をインストール します。
オフィスやデータセンターなどのネットワークロケーションから、各デバイスにソフトウェアをインストールせずに DNS リクエストをフィルターするには:
- Cloudflare One の設定に ロケーションを追加 します。DNS ロケーションは、DNS クエリをフィルターしたいネットワーク(オフィスなど)を表します。
- ルーター、ブラウザー、または OS で、DNS サーバー設定をロケーションセットアップ UI に表示される Cloudflare アドレスへ変更します。これにより、そのネットワークからのすべての DNS クエリが Gateway 経由で転送されます。
デバイスの DNS クエリが Gateway を流れていることを確認するには:
- Cloudflare ダッシュボード ↗ で、Zero Trust > Traffic policies > Traffic settings を開きます。
- Log traffic activity で、すべての DNS ログのアクティビティログを有効にします。
- デバイスでブラウザーを開き、任意の Web サイトへ移動します。
- Cloudflare ダッシュボード ↗ で、Zero Trust > Insights > Logs > DNS を開きます。
- デバイスからの DNS queries が表示されることを確認します。
DNS ポリシーは 2 つの部分で構成されます。一致させるクエリを定義する トラフィック条件(ギャンブルサイトへのすべてのクエリなど)と、一致したクエリへの処理を定義する アクション(ブロックするなど)です。新しい DNS ポリシーを作成するには:
- Cloudflare ダッシュボード ↗ で、Zero Trust > Traffic policies > Firewall policies を開きます。
- DNS タブで Add a policy を選択します。
- ポリシーに名前を付けます。
- Traffic で、条件ビルダーを使い、このポリシーを適用する DNS クエリを定義します。セレクター(Security Categories など)、演算子(in など)、1 つ以上の値を選びます。
- トラフィックが条件に一致したときに実行する Action を選びます。たとえば、すべての セキュリティカテゴリ をブロックするポリシーの追加を推奨します。
セレクター 演算子 値 アクション Security Categories in All security risks Block - Create policy を選択します。
-
次の権限を持つ API トークンを作成 します。
種類 項目 権限 Account Zero Trust Edit -
(任意)API の環境変数に アカウント ID と API トークンを含めます。
-
Create a Zero Trust Gateway rule エンドポイントへ
POSTリクエストを送ります。たとえば、次のリクエストは、デフォルトの セキュリティカテゴリ をすべてブロックするポリシーを作成します。trafficフィールドの数値 ID(68、178、80など)は、Cloudflare があらかじめ定義したセキュリティ脅威カテゴリに対応します。対応関係の全体は ドメインカテゴリ を参照してください。precedenceフィールドは、複数のポリシーが一致したときの評価順を制御します(0はこのポリシーを最初に評価することを意味します)。Create a Zero Trust Gateway rulebash curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \ --request POST \ --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ --json '{ "name": "Block security threats", "description": "Block all default Cloudflare DNS security categories", "precedence": 0, "enabled": true, "action": "block", "filters": [ "dns" ], "traffic": "any(dns.security_category[*] in {68 178 80 83 176 175 117 131 134 151 153})", "identity": "" }'{ "success": true, "errors": [], "messages": [] }API は、ポリシーの概要とリクエストの結果を返します。
詳細は DNS ポリシー を参照してください。
最初のポリシーが有効になったら、追加したいほかのポリシーは よく使う DNS ポリシー を参照してください。よく追加されるのは、特定のコンテンツカテゴリ(ソーシャルメディアやストリーミングなど)のブロック、検索エンジンでの SafeSearch の有効化、承認したリゾルバーだけをデバイスが使えるようにする DNS クエリの制限です。