NỘI DUNG
Hướng dẫn chặn bot bằng Cloudflare hiệu quả nhất để giảm lượng bot AI và bot độc hại truy cập website.
Trong thời gian gần đây, lượng bot tự động truy cập website ngày càng gia tăng, đặc biệt là các bot AI dùng để thu thập dữ liệu (crawl) phục vụ huấn luyện mô hình. Những bot này thường không mang lại giá trị thực cho website, nhưng lại tiêu tốn đáng kể tài nguyên hệ thống như CPU, RAM và băng thông.
Nếu không kiểm soát, tình trạng này có thể khiến website chậm, tăng chi phí vận hành, thậm chí ảnh hưởng đến trải nghiệm người dùng thật. Vì vậy, việc chủ động chặn hoặc hạn chế bot là một bước quan trọng trong quản trị hệ thống.
Cloudflare cung cấp công cụ mạnh mẽ để xử lý vấn đề này thông qua Security Rules.
Như ảnh minh hoạ bên dưới mà tôi đang xử lý. Bot meta-webindexer python-requests/2.33.1 và Bytespider đang cào một cách khủng khiếp dẫn đến tình trạng quá tải.



Cách chặn bot trên Cloudflare
Để chặn bot trên Cloudflare trước tiên bạn phải cấu hình web lên Cloudflare. Nếu chưa biết cách hãy thực hiện như sau
Chặn một bot cụ thể
Security => WAF => Custom rules sau đó chọn như sau
Rule name (required): Đặt tên bất kỳ cho quy tắc
When incoming requests match…
- Field: User Agent
- Operator: contains
- Value: meta-externalagent
Choose action: Chọn Block hoặc Managed Challenge
Quy tắc expression
(http.user_agent contains "meta-externalagent")

Chặn nhiều bot cùng lúc
Ví dụ thực hiện chặn AI-scraper bots phổ biến như (Amazonbot, PetalBot)
Rule name (required): Đặt tên bất kỳ cho quy tắc
When incoming requests match…
- Field: User Agent
- Operator: contains
- Value: meta-externalagent
Sau đó chọn Or và lặp lại các thuộc tính trên
Quy tắc expression
(http.user_agent contains "meta-externalagent") or
(http.user_agent contains "Amazonbot") or
(http.user_agent contains "PetalBot")
Nên chọn Block hay Managed Challenge?
Cloudflare cung cấp nhiều hành động khác nhau khi một request khớp với quy tắc.
- Block: Chặn hoàn toàn request. Đây là lựa chọn phù hợp nếu bạn chắc chắn bot không mang lại lợi ích cho website.
- Managed Challenge: Cloudflare sẽ tự động áp dụng cơ chế xác minh phù hợp. Nếu là người dùng thật vẫn có thể tiếp tục truy cập, trong khi phần lớn bot tự động sẽ bị chặn.
Nếu chưa chắc chắn bot có ảnh hưởng đến website hay không, bạn nên sử dụng Managed Challenge trước để theo dõi. Sau một thời gian nếu xác định bot chỉ gây tiêu tốn tài nguyên, có thể chuyển sang Block.
Lưu ý
- Không nên chặn Googlebot hoặc Bingbot nếu website cần lập chỉ mục trên các công cụ tìm kiếm.
- Sau khi tạo quy tắc, hãy theo dõi mục Security Events để xác nhận các bot đã bị chặn như mong muốn.
- Nếu website vẫn bị crawl mạnh dù đã chặn theo User-Agent, rất có thể bot đang giả mạo User-Agent. Khi đó bạn nên kết hợp thêm các quy tắc dựa trên ASN, IP Address, Country hoặc sử dụng Cloudflare Bot Management (nếu gói dịch vụ hỗ trợ).
Kết luận
Việc chặn các AI crawler không cần thiết là một trong những biện pháp đơn giản nhưng rất hiệu quả để giảm tải cho máy chủ. Chỉ với vài quy tắc trên Cloudflare, bạn có thể giảm đáng kể lượng request từ các bot tự động, tiết kiệm CPU, RAM và băng thông, đồng thời đảm bảo website luôn hoạt động ổn định cho người dùng thực.
Với kinh nghiệm thực chiến từ việc tiếp xúc hàng ngày với vô vàn vấn đề về Website, Hosting, VPS, Server tại Phòng Kỹ thuật AZDIGI, mình luôn ấp ủ niềm đam mê chia sẻ kiến thức.
Mình xây dựng các blog không chỉ để tự trau dồi kỹ năng mà còn để cung cấp những tài liệu, hướng dẫn hữu ích nhất đến cộng đồng. Rất mong nhận được sự quan tâm của các bạn!
Để lại thông tin, mình sẽ phản hồi ngay.
