新規のお客様新規アカウントで DNS と CDN の無料プランをご利用いただけます。アカウント作成

WAF とセキュリティ

WAF マネージドルールセット、カスタムファイアウォールルール、レート制限、攻撃対策モード、直リンク防止や国・User-Agent リストなどのアクセス制御を設定します。

8 分で読めます 更新日 2026年10月20日

各 CDN ドメインにはファイアウォールページがあり、エッジがそのドメインに適用するセキュリティポリシーを管理できます。CDN → CDN ドメインに移動し、ドメインを開いて ファイアウォールを選択します。コンソールの URL は /cdn/domains/<domain>/firewall です。

ファイアウォールページには 4 つのタブがあります。

タブ用途
ルール設定カスタムファイアウォールルール、WAF マネージドルールセット、カスタム WAF スコアリングルール
アクセス制御直リンク防止、国・ASN によるブロック、User-Agent リスト、アクセス認証、攻撃対策モード(UAM)、接続保護
WAF 分析ブロックなどのイベントに関する統計(ログと分析を参照)
イベントログブロックまたはチャレンジされたリクエストごとの記録

保存すると、設定が自動的にエッジに送信されます。変更は通常、数秒から 1 分以内に反映され、キャッシュのパージは不要です。

WAF マネージドルールセット

WAF(Web アプリケーションファイアウォール)は、各リクエストの URI、クエリ文字列、User-Agent、Referer、Cookie を検査します。フォームおよび JSON のリクエストボディも検査し、一般的な攻撃ペイロードを検出します。

  1. ファイアウォール → ルール設定を開き、WAF プリセットルールセットカードを探します。

  2. カードのヘッダーにあるメインスイッチを有効にします。

  3. カテゴリを展開し、個別のルールセットを有効または無効にします。

    ルールセット検出対象
    SQL インジェクションSQL インジェクションのペイロード
    XSSクロスサイトスクリプティングのペイロード
    パストラバーサル../ 形式のディレクトリトラバーサル
    コマンドインジェクションOS コマンドインジェクション
    LFI/RFIローカルおよびリモートのファイルインクルード
    プロトコル攻撃不正な形式または異常な HTTP リクエスト
    スキャナー検出一般的な脆弱性スキャナー
    悪意のあるボット既知の悪意のあるクローラー
  4. CRS エンジン設定で、チェックモードを選択します。

    • ブロック: 一致するリクエストを 403 でブロックし、イベントを記録します。
    • ログのみ: イベントを記録しますが、ブロックはしません。新しいルールを適用する前に、誤検知を確認するために使用します。
  5. 保存をクリックします。

異常スコアのしきい値は、スコアリングルールに適用されます。一致したルールごとにリクエストのスコアに加点され、スコアがしきい値に達するとリクエストがブロックされます。デフォルトは 5 です。値を小さくするほど判定が厳しくなります。

注

WAF の利用可否はプランによって異なります。執筆時点では、Professional および Enterprise の CDN プランに含まれ、Free および Starter プランには含まれていません。最新の詳細はプランページで確認してください。プランに WAF が含まれていない場合、スイッチを切り替えてもエッジには反映されません。

ヒント

WAF を初めて有効にする際は、しばらくシミュレーションモードで運用してください。イベントログで、ブロック対象になる正当なリクエストがないか確認してから、有効モードに切り替えます。

カスタム WAF スコアリングルール

マネージドルールセットで要件を満たせない場合は、カスタム WAF ルール、スコアリングカードでルールを追加します。

  • 検査対象: URI(クエリ文字列を含む)、パス、クエリパラメーター、リクエストボディ、リクエストヘッダー、Cookie、User-Agent、メソッドです。ヘッダーと Cookie には名前を指定できます。
  • 一致の種類: 正規表現、SQL インジェクション(libinjection)、XSS(libinjection)です。
  • アクション:
    • ブロック: 即座にブロックします。ステータスコードを指定でき、デフォルトは 403 です。
    • ログ(スコア): ルールのスコアをリクエストに加算します。合計スコアが異常スコアのしきい値に達すると、リクエストがブロックされます。

カスタムファイアウォールルール

カスタムファイアウォールルールは、条件とアクションを組み合わせたものです。IP アドレスのブロック、特定の国からのトラフィックのみの許可、ログインエンドポイントの保護などによく使用します。

ルールの作成

  1. ルールで ルールを追加をクリックします。
  2. 名前を入力します。優先度は 1 から 9999 まで指定でき、デフォルトは 100 です。
  3. 条件を 1 つ以上追加します。各条件にはフィールド、任意のキー、演算子、値があります。リクエストが条件をすべて満たす場合にのみ、ルールに一致します。
  4. アクションを選択し、その設定を入力します。
  5. 保存します。一覧からいつでもルールを有効化、無効化、削除できます。

フィールド

フィールド説明
IP アドレスクライアント IP です。「リストに含まれる」では、各値に単一の IP または CIDR 範囲を指定できます
国コードUS や DE などの ISO 3166-1 alpha-2 コードです
ASN13335 などの自律システム番号です
URI パス / パスクエリ文字列を含まないリクエストパスです
Hostリクエストされたホスト名です
メソッドGET、POST などです
User-Agent / Referer対応するリクエストヘッダーです
ヘッダー / Cookie / クエリパラメーターキーフィールドに名前を入力します
拡張子jpg などのファイル拡張子です

使用できる演算子は、等しい、等しくない、含む、含まない、前方一致、後方一致、リストに含まれる、リストに含まれない、正規表現一致、より大きい・小さい(以上・以下を含む)、存在する、存在しないです。リスト演算子では、各値を 1 行ずつ入力してください。

注

国と ASN はクライアント IP アドレスから判定します。IP を対応付けられない場合、それらのフィールドの条件には一致しません。

アクション

アクション効果
ブロックエラーレスポンスを返します。400 から 599 までのステータスコードを指定でき、デフォルトは 403 です
許可WAF と残りのルールをスキップします。信頼できる IP やコールバックエンドポイントに使用します
JS チャレンジ / マネージドチャレンジ攻撃対策モードと同じ仕組みで、訪問者にブラウザー検証ページを表示します。検証を通過した訪問者は、通過の有効期限が切れるまで再度チャレンジされません
レート制限一致するリクエストをカウントし、上限を超えた場合にアクションを実行します(以下を参照)
警告

1 つのリクエストが複数のルールに一致することがあります。同じ範囲に対して許可とブロックを指定するなど、条件が重複しアクションが競合するルールを有効にしないでください。期待どおりの結果にならない可能性があります。

API の例

サブネットをブロックします。

bash
curl -X POST "https://api.yeap.cloud/api/user/cdn/firewall-rules/create" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "domain_id": 123,
    "name": "Block bad subnet",
    "expression": {"op": "and", "conditions": [
      {"collection": "IP", "op": "in", "var": ["203.0.113.0/24"]}
    ]},
    "action": "block",
    "action_config": {"status": 403},
    "priority": 100,
    "enabled": true
  }'

その他のエンドポイント:

  • ルールの一覧取得: GET /api/user/cdn/firewall-rules?domain_id=123
  • ルールの更新: POST /api/user/cdn/firewall-rules/update。ボディに id を指定します
  • ルールの削除: DELETE /api/user/cdn/firewall-rules/delete?id=<id>

レート制限

トラフィックにレート制限を適用するには、レート制限アクションを持つファイアウォールルールを作成します。条件を使用し、/api/login で始まるパスなど、保護するリクエストを選択します。その後、次の項目を設定します。

  • 秒: 時間枠内のカウントが上限を超えると、制限超過になります。
  • キー: IP アドレス、リクエストヘッダー、Cookie、URI パス、国です。ヘッダーと Cookie の場合は、X-Api-Key などの名前も入力します。
  • スコープ: ドメイン全体では、IP ごとに 1 つなど、キーの値ごとに個別のカウンターを保持します。グローバルでは、ルールに一致するすべてのリクエストに 1 つのカウンターを使用します。
  • 上限超過時の動作: 429 でブロック、チャレンジ、ログのみ、ターピットから選択します。ターピットはレスポンスを遅延させますが、拒否はしません。
注

各エッジ拠点はそれぞれ独立したカウンターを保持します。クライアントのリクエストが複数の拠点に分散される場合、ネットワーク全体で許可される合計数が拠点ごとの上限を超えることがあります。

アクセス制御

アクセス制御タブには、複数の専用モジュールがあります。各モジュールには独自のスイッチがあります。設定が完了したら、アクセス制御を保存をクリックしてすべて保存します。

直リンク防止(Referer リスト)

  • 空の Referer を許可と同一ドメインを許可: 直接のアクセスと、自分のサイトからのリンクを許可します。
  • 許可するドメイン: 1 行に 1 つ入力します。完全なドメイン名、*.example.com などのワイルドカード、~ で始まる正規表現を使用できます。このリストが空でない場合、Referer はいずれかの項目に一致する必要があります。
  • ブロックするドメイン: 一致するリクエストをブロックします。このリストは許可リストよりも優先されます。
  • 保護する拡張子: .jpg や .mp4 など、特定のファイル形式だけを保護対象にします。空欄にするとすべてのパスを保護します。

国 / ASN によるブロック

国、行政区画(ISO 3166-2 コード)、ASN について、ブロックリストと許可リストを 1 行に 1 項目ずつ設定します。ブロックリストに一致するとブロックされます。ある分類の許可リストが空でない場合、そのリストに含まれる訪問者のみが許可されます。複数の分類を使用する場合、訪問者はすべての分類の条件を通過する必要があります。

User-Agent リスト

デフォルトのアクション、空の User-Agent の処理方法、ブロック時のステータスコードを設定し、ルールを追加します。デフォルトを許可にするとブロックリストとして、ブロックにすると許可リストとして機能します。ルールは上から順に確認され、最初に一致したルールによって結果が決まります。部分文字列、ワイルドカード、正規表現、完全一致、前方一致、後方一致を使用できます。

アクセス認証

CIDR 範囲に対応した IP 許可リストと拒否リストを設定できます。HTTP Basic 認証、トークンパラメーター、署名付き URL(タイプ A、B、C、D)を必須にすることもできます。複数の方式を設定する場合は、リクエストがすべての方式を通過する必要があるか、いずれか 1 つを通過すればよいかを選択します。

攻撃対策モード(UAM)

モード動作
オフ事前のチャレンジを行いません
適応型通常はチャレンジを行いません。プラットフォームの自動保護が異常なトラフィックを検出した場合にのみ、訪問者にチャレンジを行います
攻撃中(5 秒シールド)すべての訪問者が、最初にブラウザー検証(プルーフ・オブ・ワーク)を通過する必要があります
CAPTCHA を強制すべての訪問者が CAPTCHA を解く必要があります。captcha.la に対応しており、Site Key と Secret を入力する必要があります。未入力の場合、代わりにブラウザー検証が行われます

秒(5 以上を推奨)、難易度(15 以上を推奨)、秒を調整できます。0 を入力するとデフォルト値を使用します。許可リストの IP/CIDR は、すべてのモードでチャレンジをスキップします。静的ファイルの拡張子と許可するボットの ASN は適応型モードでのみ適用され、攻撃中モードと CAPTCHA の強制では無視されます。

ヒント

大量のリクエストを送り付ける攻撃を受けている間は、攻撃中モードに切り替えてください。攻撃が終わったら、API クライアントや検索エンジンのクローラーに影響しないよう、オフまたは適応型に戻してください。

接続保護(Slowloris)

IP ごとの同時接続数を制限し、低速リクエスト攻撃を検出します。ボディの最小転送速度、サンプリング時間枠、猶予期間、最大アイドル時間、ボディの最大受信時間を設定できます。0 を入力すると制限なしになります。

関連項目

このページは役に立ちましたか?