Chặn comment spam bằng Cloudflare WAF

Mình biết tới vụ này khá lâu, khi viết bài về Edge Caching with BunnyCDN, tác giả bài viết đó tình cờ cũng là tác giả của plugin Forget Spam Comment, xưa đọc thì mình không ưng lắm, vì nó chỉ có tác dụng chặn comment, không chặn được contact form email hay login …. nên không quá để ý

Dạo này contact mình đã bỏ đi hình thức gửi email, cả trang giờ chỉ còn phần comment cần chặn SPAM nên có thể ứng dụng chuyện này 😀

Nếu trang bạn cũng chỉ có phần comment cần chặn spam, đơn giản nhất chỉ cần cài đặt plugin Forget Spam Comment vào là đủ, tác dụng y chang các thứ mình nói bên dưới, đỡ phải làm thủ công màu mè

Bài này gần như là bê bài viết gốc Now Forget about Spam Comment in WordPress của tác giả Gulshan Kumar về thôi, tác giả viết đầy đủ hơn, bạn có thể tham khảo thêm nếu đọc bên dưới mà không hiểu :]]

Ah, tác giả cũng có rất nhiều bài viết hay khác, mọi người nên đọc qua, vì ảnh giải thích rất kĩ và rất chịu khó cập nhập bài viết 😀

Hình thức này chỉ hiệu quả chặn spam trên comment gốc của WordPress

Sử dụng Cloudflare WAF tạo 1 rule

Truy cập vào Cloudflare -> Security -> WAF -> Create rule -> Edit expression

2023 10 31 14 24 10

  • Rule name (required): đặt 1 tên tùy ý để nhớ
  • If incoming requests match…  điền vào
(http.request.uri contains "wp-comments-post.php" and http.request.uri.query ne "bdad9e2ef62632b042bdc9b8b1907c87")

Có thể thay bdad9e2ef62632b042bdc9b8b1907c87 bằng 1 dãy số khác tùy ý cho riêng bạn

  • Then take action… chọn Block

Sau đó ấn vào Desloy

Sử dụng Code Snippets tạo 1 file php với nội dung:

function correct_comment_url_on_scroll() {
// Check if Comment is enabled
if(comments_open()) echo '<script>
let commentForm = document.querySelector("#commentform, #ast-commentform, #ht-commentform");

// Load new comment path on the scroll event
document.onscroll = function () {
    commentForm.action = "/wp-comments-post.php?bdad9e2ef62632b042bdc9b8b1907c87";
};
</script>';
}
add_action('wp_footer', 'correct_comment_url_on_scroll', 99);

Nếu ở bước Cloudflare WAF bạn thay bdad9e2ef62632b042bdc9b8b1907c87 bằng 1 dãy số khác thì sửa bên trong Code Snippets về con số này

Cách thức hoạt động

2023 10 31 14 55 16

Lúc này khi bạn tới phần comment, nó sẽ tự load ra dãy query “bí mật” của bạn, đúng dãy số này thì ấn comment mới được, còn không có hoặc sai thì sẽ bị Cloudflare WAF chặn

2023 10 31 15 00 27

Do mình đang dùng rất nhiều dịch vụ từ Cloudflare, cài đặt chặn qua WAF tiện theo dõi log là chính, chứ không có ưu điểm gì so với cài đặt plugin Forget Spam Comment hết 😀

Hiệu quả

Thường spam là để quảng cáo dịch vụ, backlinks càng nhiều nơi càng tốt, không ai rỗi hơi mà đi spam vào 1 trang, vì thiếu hiệu quả, khoản thù oán cá nhân thì mình không bàn 😀 mà thù oán thì đa phần DDOS cho sập, chứ cũng chẳng ai rỗi hơi spam comment 😀 nên lý thuyết khi bạn chặn spam kiểu này, là gần như không còn thấy spam comment nữa

Về cá nhân thì mình vẫn thích nhất là dùng Simple Cloudflare Turnstile, gần như là chặn spam ở mọi vị trí trên trang, rất nhiều trang to đều đang dùng Cloudflare Turnstile vì hiệu quả của nó mang lại, bạn nào thích có thể dùng thử 😀

Comment policy: We love comments and appreciate the time that readers spend to share ideas and give feedback.
Notes: However, those deemed to be spam or solely promotional will be deleted.

You can create a Gravatar account, add avatar, then use that email to comment here, your account will have a more beautiful Avatar, easier to recognize with other members.

Please use real emails, you can receive notifications when comments are replied