น้อมรำลึกในพระมหากรุณาธิคุณ และร่วมถวายความอาลัย สมเด็จพระนางเจ้าสิริกิติ์ พระบรมราชินีนาถ พระบรมราชชนนีพันปีหลวง เสด็จสวรรคต ด้วยสำนึกในพระมหากรุณาธิคุณหาที่สุดมิได้
075-845-490 | 097-165-2449
Line ID: @hostnakhonitech
🎉 โปรโมชั่นพิเศษ! ลด 10% สำหรับลูกค้าใหม่
NakhoniTech
075-845-490
support@NakhoniTech.com

Cloudflare Security Guide: วิธีป้องกัน DDoS, Bot Attack และ HTTP Flood สำหรับเว็บโฮสติ้ง Print

  • 100

วิธีตั้งค่า Cloudflare เมื่อเว็บไซต์โดนยิงบ่อย (HTTP Flood / Bot Attack)

หากเว็บไซต์ของคุณถูกยิงบ่อย ทราฟฟิกพุ่งสูงผิดปกติ หรือมีบอทเข้ามารัวจนเว็บช้า/ล่ม ระบบป้องกันหน้าบ้านอย่าง Cloudflare สามารถช่วยกรองทราฟฟิกไม่ปกติ ลดโหลดเซิร์ฟเวอร์ และช่วยป้องกันการโจมตีระดับ HTTP (Layer 7) ได้อย่างมีประสิทธิภาพ

บทความนี้เป็นคู่มือฉบับสมบูรณ์สำหรับผู้ใช้เว็บโฮสติ้ง, WordPress, ร้านค้าออนไลน์ และเว็บทั่วไปของ NakhoniTech ที่ต้องการตั้งค่า Cloudflare ให้ปลอดภัยที่สุด และลดโอกาสเว็บล่มจากการโดนยิง

คำเตือนสำคัญ: หาก Origin IP ของเซิร์ฟเวอร์ “หลุด” ผู้โจมตีสามารถยิงตรงได้ทันที แม้เปิด Cloudflare แล้ว ดังนั้นต้องตรวจสอบ DNS ทุกจุดให้ถูกต้องตามบทความนี้

เหมาะกับใคร

  • เจ้าของเว็บไซต์ WordPress ที่โดนบอทยิง wp-login.php หรือ xmlrpc.php
  • ร้านค้าออนไลน์ที่พบทราฟฟิกผิดปกติจนเว็บช้า
  • เว็บไซต์ธุรกิจ/องค์กรที่ต้องการเสถียรภาพสูง
  • ผู้ใช้โฮสติ้งที่ต้องการป้องกันเว็บล่มจากการโดนยิง

1. ตรวจสอบก่อนเริ่มใช้งาน Cloudflare

  1. Domain ต้องวิ่งผ่าน Cloudflare จริง ๆ
    ไปที่ Cloudflare → DNS ตรวจสอบว่า Record A หรือ AAAA เป็น “เมฆสีส้ม (Proxied)” ถ้าเป็น “เมฆสีเทา (DNS only)” ทราฟฟิกจะไม่ถูกกรอง
  2. ซ่อน Origin IP ของเซิร์ฟเวอร์
    ห้ามเปิดบริการเหล่านี้ผ่านโดเมนที่ Proxied:
    • DirectAdmin / Plesk / Control Panel
    • phpMyAdmin
    • Webmail
    แนวทางที่ถูกต้อง:
    • ใช้ subdomain เช่น cp.example.com → ตั้งเป็น DNS Only
    • หน้าเว็บหลัก example.com, www.example.com → ใช้เมฆส้มเท่านั้น
    หาก Origin IP หลุด ไม่ว่าจะตั้งค่า Cloudflare ดีแค่ไหน ก็สามารถโจมตีตรงได้ทันที

2. เปิดโหมด Under Attack สำหรับการยิงหนัก

เมนู: Overview → Quick Actions → Under Attack Mode

  • เหมาะกับช่วงเว็บเข้าไม่ได้หรือโดนยิงจำนวนมาก
  • Cloudflare จะตรวจสอบทุก request อย่างเข้มงวด
หมายเหตุ: เปิดชั่วคราวเท่านั้น 5–30 นาที เพื่อไม่ให้ผู้ใช้จริงเดือดร้อน

3. ปรับ Security Level ให้เหมาะสม

เมนู: Security → Settings → Security Level

  • ปกติ: Medium
  • เริ่มโดนยิง: High
  • โดนหนัก: I’m Under Attack

4. เปิด Bot Fight Mode / Super Bot Fight Mode

เมนู: Security → Bots

  • Bot Fight Mode → ON
  • ถ้าเป็นแผน Pro/Business เปิด Super Bot Fight Mode เพิ่ม

5. ตั้งค่า Firewall Rules

เมนู: Security → WAF → Firewall Rules

5.1 บล็อก User Agent ว่าง

(http.user_agent eq "")

Action: Block

5.2 บล็อก xmlrpc.php

(http.request.uri.path eq "/xmlrpc.php")

5.3 Challenge สำหรับ wp-login.php

(http.request.uri.path contains "wp-login.php")

5.4 บล็อกประเทศเสี่ยง

(ip.geoip.country in {"CN" "RU" "BR" "IN"})

6. Rate Limiting (จำกัด Request)

เมนู: Security → WAF → Rate Limiting Rules

  • URL: /*
  • Threshold: 200 req/min/IP
  • Action: Block หรือ Challenge
  • Duration: 10 นาที

ถ้าโดนหนักมาก:

100 requests / 10 วินาที / IP

7. Cache Rules / Page Rules

Cache Everything

  • URL: https://example.com/*
  • Cache Level: Cache Everything
  • Edge Cache TTL: 1 ชั่วโมง

Bypass Admin

  • URL: https://example.com/wp-admin/*
  • Setting: Bypass Cache

หมายเหตุ: Free Plan มี Page Rules แค่ 3 รายการ


8. เสริมความปลอดภัยฝั่งเซิร์ฟเวอร์ (Origin Hardening)

  • ปิด port ที่ไม่จำเป็น
  • ตรวจพอร์ต:
    ss -tulnp | grep LISTEN
  • จำกัดการเข้าถึง DirectAdmin/Plesk ด้วย IP / VPN
  • ตรวจ Log เพื่อดูว่าถูกยิงจากอะไร

9. แนวทางสำหรับ WordPress (สรุป)

  1. เมฆส้มสำหรับหน้าเว็บ
  2. Security Level: Medium/High
  3. Bot Fight Mode = เปิด
  4. Firewall:
    • Block xmlrpc.php
    • Challenge wp-login.php
    • Block User Agent ว่าง
    • Block ประเทศเสี่ยง
  5. Rate Limiting 200 req/min/IP
  6. Cache Everything (ยกเว้น /wp-admin)

10. ข้อผิดพลาดที่พบบ่อย

  • DNS เป็นเมฆเทา ทำให้ Cloudflare ไม่ได้ช่วยกรองใด ๆ
  • เข้าหลังบ้านด้วยโดเมนเมฆส้ม ทำให้ IP หลุด
  • เปิด Under Attack Mode ไว้นานเกินไป
  • ตั้ง Rate Limiting เข้มเกินจนผู้ใช้จริงเข้าไม่ได้

11. สรุป

เพื่อให้ป้องกันเว็บโดนยิงได้ผล ควรทำ 3 อย่างร่วมกัน:

  1. เปิด Proxy (เมฆส้ม) และซ่อน Origin IP
  2. ใช้ฟีเจอร์ Cloudflare เช่น Firewall, Bot Fight, Rate Limiting
  3. เสริมความปลอดภัยที่เซิร์ฟเวอร์ เช่น ปิดพอร์ต ตรวจ Log

เมื่อทำครบทั้งหมด เว็บจะทนการยิงได้ดีขึ้น โหลดลดลง และเสถียรภาพสูงขึ้นมาก


 

 

FAQ – คำถามที่พบบ่อย

1) เปิดเมฆส้มแล้วทำไมยังโดนยิง?

เพราะ Origin IP หลุด ต้องตรวจสอบ DNS และบริการอื่น ๆ ให้ไม่เปิดเผย IP

2) Under Attack Mode เปิดทิ้งไว้ได้ไหม?

ไม่แนะนำ เพราะผู้ใช้จริงจะต้องผ่าน Challenge ทุกครั้ง

3) Bot Fight Mode จะมีผลกับปลั๊กอินไหม?

ส่วนใหญ่ไม่กระทบ แต่ API บางตัวอาจถูก Challenge

4) Rate Limiting ตั้งเท่าไหร่ดี?

200 req/min/IP เป็นค่ามาตรฐาน ถ้าโดนหนักปรับลดได้

5) ต้องใช้ Cloudflare Pro ไหม?

ถ้าโดนยิงบ่อยหรือเป็นเว็บธุรกิจสำคัญ แนะนำ Pro เพื่อได้ WAF ที่ดีกว่า


 

 

เวอร์ชันย่อสำหรับมือใหม่

  1. เปิดเมฆส้มใน DNS ทุกตัวที่ชี้เว็บ
  2. ห้ามใช้โดเมนเมฆส้มเข้าหลังบ้าน (Origin IP จะหลุด)
  3. เปิด Bot Fight Mode
  4. Under Attack Mode เมื่อโดนหนัก
  5. Firewall: Block xmlrpc / Challenge wp-login / Block Country
  6. Rate Limiting 200 req/min/IP
  7. Cache Everything (ยกเว้น /wp-admin)

สรุป: เปิดเมฆส้ม → ซ่อน IP → ตั้ง Firewall → จำกัด Request → ปรับ Cache → ตรวจ Log


 

 

┌──────────────────────────────────────────┐
│   CLOUDLARE PROTECTION FLOW (NakhoniTech)   │
└──────────────────────────────────────────┘

1) DNS Setup
   • เมฆส้มสำหรับหน้าเว็บ
   • เมฆเทาเฉพาะ Control Panel / Webmail
   • ห้ามให้ Origin IP หลุด

2) Basic Protection
   • Security Level = Medium / High
   • Bot Fight Mode = ON
   • เปิด HTTPS เท่านั้น

3) Emergency Mode
   • Under Attack Mode (ใช้เฉพาะจำเป็น)

4) Firewall Rules
   • Block User Agent ว่าง
   • Block /xmlrpc.php
   • Challenge /wp-login.php
   • Block Countries ที่ไม่ต้องการ

5) Rate Limiting
   • 200 req/min/IP
   • 100 req/10s/IP (กรณีโดนหนัก)

6) Cache Optimization
   • Cache Everything
   • Bypass /wp-admin/*

7) Origin Server Hardening
   • ปิด port ไม่จำเป็น
   • จำกัดการเข้าถึง DirectAdmin/Plesk
   • ตรวจ Log เป็นประจำ

Was this answer helpful?

« Back