Cloudflareでセキュリティ対策

Server

以前の記事でCloudflareを使ったWEBサイトを高速化する方法を解説しました

今回はCloudflareを使ってセキュリティ対策を高める方法を解説します

Cloudflareは非常に強力なセキュリティ機能を提供しており、WEBサイトのセキュリティ対策にとても有効です


1.Cloudflareセキュリティ対策内容

1. DDoS攻撃対策

Cloudflareは全プランでDDoS攻撃の自動緩和機能を提供しています。大規模な攻撃を受けてもCloudflareのネットワークが吸収し、サイトを保護します

2. WAF(Web Application Firewall)

有料プランで使えるWAFにより、SQLインジェクションやXSS(クロスサイトスクリプティング)などの一般的なWEB攻撃をブロックできます

3. SSL/TLS暗号化

Cloudflareの無料SSLを使えば、訪問者とあなたのWEBサーバー間の通信をHTTPSで暗号化できます

4. Bot対策

Cloudflareは悪意のあるボットのアクセスを自動的に検出・遮断します。正規の検索エンジンボットは許可されます

5. IP制限・国別ブロック

管理画面から特定のIPや国からのアクセスを制限できます。

6. Rate Limiting(アクセス制限)

指定したパスへのアクセス回数を制限し、ブルートフォース攻撃などを防ぐことができます(有料プラン)

7. セキュリティレベルの設定

トラフィックに対してどの程度のセキュリティチェックを行うかを細かく調整できます(例:チャレンジページの表示)

無料プランでもかなりの保護が可能です


今回はよくある不正アクセスとして、WordPressのログインページ(通常は /wp-login.php や /wp-admin/)への海外からのアクセスをCloudflareでブロックすることをやっていきたいと思います

以下の手順でCloudflareの「ファイアウォールルール」を使って設定できます


2.Cloudflareで海外からのwp-loginアクセスをブロック

  1. Cloudflareにログイン
  2. 対象ドメインを選択
  3. メニューから「Security(セキュリティ)」→「セキュリティルール」をクリック
  4. ルールを作成」をクリック
  5. ルールの設定:

ルール名(自分で決めてOK):Block Foreign WP-Login

  • フィールド:URIパス
  • オペレーター:次と等しい
  • 値:/wp-login.php

右側のANDをクリック

  • フィールド:国
  • オペレーター:次と等しくない
  • 値:Japan

(複数の国を許可したい場合は、次にない を使ってリストにできます)

式のプレビュー: http.request.uri.path eq “/wp-login.php” and ip.src.country ne “JP”

アクション:Block(完全に遮断)または Challenge(CAPTCHA表示))を選択できます

完了したら保存ボタンを押します


【補足】

  • 自分が海外にいる時にログインしたい場合は、VPNで日本経由にすればアクセス可能です
  • 国判定はIPベースなので、CloudflareのGeoIP情報が使われます
  • 特定IP(例:VPNや管理者のグローバルIP)だけを許可する設定も併用可能

他にも無料でできるセキュリティ対策はたくさんありますが、デメリットも多少あるので今回はWordPressのログインページの海外アクセスブロックだけを紹介しました

コメント