【CloudFlar】WAF設定(海外遮断・WP管理画面制限)

CloudFlar

 CloudFlareのサインアップ等は既に済んでいる前提。

※Cloudflareは管理画面(UI)の仕様変更が頻繁に行われます。現在の設定場所は以下の通りです。
 [対象ドメイン] > [セキュリティ] > [WAF] > [カスタムルール] > [ルールを作成する]

カスタムルールの順番は、下記通りの順番にする。


1.AS番号「15196」(Google)のアクセスはスルー

 1.AS番号が「15196」はスキップ
 2.スキップするコンポーネントは「残りのすべてのカスタムルール」にチェック。
 3.作成したカスタムルールの右端の三点リーダーをクリックし、「有効にする」をクリックしアクティブ状態に変える

 ただし、家庭用ルーターの「ヘアピンNAT(ループバック)」と言うネットワーク仕様が原因で、GoogleAdsenseのプレビュー画面では表示されません。
 ですが、実際のGoogleの広告配信クローラーは上記設定で巡回出来るようになっています。
 この状態で数日(早ければ数時間〜1日)ほど放置すれば、自宅ネットワーク外からのアクセスで、自動的に広告が配信され始めるはずです。


2.海外からの不正アクセス遮断

下記条件でアクセスのブロックを設定しています。

  1. アクセス元が「日本以外(海外)」であり、
  2. Cloudflareが公認する「安全なボット」でもなく、
  3. User-Agent(ブラウザの種類)に「Googlebot」という文字が含まれておらず、
  4. さらに、サイトマップを読みに来る「Google-Sitemaps」という文字も含まれていない場合、

式:(ip.src.country ne “JP”) and not cf.client.bot and not http.user_agent contains “Googlebot” and not http.user_agent contains “Google-Sitemaps”


3.管理画面・重要ファイルへのアクセス制限

指定の重要パスに対し、自分のIP(固定/作業用)以外からのアクセスに認証(パズル等)を課す。

  • ルール名: 管理画面・重要なパスへのアクセス制限
  • 条件(If):
    • [URIパス] [次に始まる] [/wp-admin]
      AND
    • [送信元IPアドレス] [次に含まれない] [自分の作業用PCのIPアドレス]
    • OR
    • [URIパス] [次に等しい] [/.env]
    • AND
    • [送信元IPアドレス] [次に含まれない] [自分の作業用PCのIPアドレス]
    • AND
    • [ユーザーエージェント][次を含む][Amazon]
  • アクション(Then): [マネージドチャレンジ]
  • 保存: [デプロイ]
Plaintext
(starts_with(http.request.uri.path, "/wp-admin") and not ip.src in {240d:f:660:e200::/64}) or (http.request.uri.path eq "/.env" and not ip.src in {240d:f:660:e200::/64}) and not http.user_agent contains "Amazonbot"


コメント