Chống DDOS bằng CloudFlare

11
6396

Mở đầu :

Bị tấn công từ sáng đến chiều suốt 2 tháng liền khiến website của mình ngắc ngoải

 

Ae trên mạng hướng dẫn sử dụng CloudFlare đơn giản quá nên mình xin phép chia sẻ các bước chống DDOS bằng CLoudFlare mà mình đã thao tác
Mình sẽ diễn đạt cách “cơm gạo” nhất để anh em chỉ đọc và sử dụng thôi, khỏi phải trình bày cao siêu.

CloudFlare  (CF) là gì , cấu hình sử dụng DNS của cloudflare như thế nào thì mình không đề cập vì đầy rẫy trên mạng rồi , mình chỉ liệt kê các công dụng chính sau:

–  Bạn sẽ ẩn được địa chỉ IP thực của server khi sử dụng CloudFlare , điều này rất quan trọng vì ddos-er sẽ không thể biết được địa chỉ IP thực của server , như vậy sẽ loại trừ được khả năng bị ddos qua IP  , chỉ còn lại trường hợp bị ddos qua tên miền .
–   CloudFlare cung cấp công cụ tường lửa rất hiệu quả . Với gói Free mặc định theo mình là dùng quá ổn.

Lưu ý : Việc sử dụng cloudflare làm proxy trung gian dẫn tới việc check access log (trên apache hoặc nginx )  sẽ hiển thị toàn là IP của CloudFlare (không phải IP thực của Client) , vì vậy các bạn nên tham khảo bài này , để CF trả lại IP thực của Client khi bạn check access log , điều này sẽ rất hữu ích trong quá trình chống DDOS.

 

Chống DDOS bằng chức năng “Under Attack Mode”

Để kích hoạt chức năng này , bạn chỉ cần vào Panel quản trị của CF và bật “Under Attack Mode”

Sau khi kích hoạt , Client truy cập website lần đầu tiên , trình duyệt sẽ hiển thị như hình dưới

Trình duyệt sẽ hiển thì bước check này trong 5s , sau đó sẽ cho phép truy cập vào website .
Cá nhân mình thấy chức năng này chỉ lọc được mấy thánh auto F5, ddos quy mô nhỏ, hạn chế được ddos-er newbie , tinh ý 1 chút , chỉ cần để độ trễ lớn hơn 5s để vượt qua bước check này , sau đó ddos là … Toang.

Trên mạng chỉ thấy các bro hướng dẫn tới bước này .

Thời gian đầu , khi ddos-er chỉ sử dụng 1 vài IP riêng lẻ và vượt qua bước check 5s, thì mình có thể check access log và block IP bằng tay qua chức năng Firewall của CF

Cách này khá bị động khi dịch vụ có dấu hiệu bị gián đoạn thì mình mới xử lý, và căn bản do mình cũng lười.
Dùng cách này được 1 thời gian , thì các cháu ddos-er nản nên không xài IP riêng lẻ nữa , mà chuyển sang sử dụng nhiều IP hơn :v ,ngồi block IP bằng tay style nông dân không nổi =)) chức năng “Under Attack Mode” coi như phế , vì vậy mình không dùng nữa mà chuyển qua cách bên dưới.

 

Chống DDOS bằng Firewall Rules

CloudFlare cung cấp Firewall Rules (bộ quy tắc tường lửa) khá chặt chẽ và cực kỳ hiệu quả
Để truy cập chức năng này bạn có thể tham khảo hình bên dưới .
Với gói CF free , chỉ cho phép tạo được 5 Firewall Rules, theo mình là quá đủ.

Phân tích 1 chút , đa phần đều nguồn ddos là IP nước ngoài, website của mình là content Tiếng Việt , việc cho phép các IP nước ngoài truy cập là không cần thiết , nvì vậy mình set rule block toàn bộ IP nước ngoài , hé hé

Thêm nữa , 1 số bot thu thập index của google , yandex …. đều có IP là nước ngoài , nên mình set thêm rule cho phép IP của bot đi qua , các bạn có thể tham khảo hình dưới.

Các bạn chỉ việc Deploy và đợi khoảng 1′ để CF kích hoạt rule này
Như vậy là bái bái các cháu ddos-er =))

Tuy nhiên được 1 thời gian , các cháu ddos-er cũng nhận ra điều này , vì vậy đã chuyển sang dùng nhiều dải IP của Việt Nam để tấn công, website của mình lại ngắc ngoải 1 lần nữa :v

Lần này mình set thêm rule lọc IP bắt nguồn từ VN như sau:

Việc chọn “Challenge (Captcha) , có nghĩa rằng khi 1 IP bắt nguồn từ VN truy cập lần đầu tiên , sẽ phải vượt qua bước xác thực robot như hình dưới :

Như vậy , chỉ khi nào các cháu ddos-er lập trình được AI vượt qua được bước này thì mới lo ngại
Đến đây , mình lại bái bai các ddos-er 1 lần nữa , website hoạt động ổn định sau khi set 2 rule này

Ngoài ra mình điều chỉnh thêm cấu hình phần “Challenge Passage” như hình dưới :

 

Mục đích của chức năng này là , với IP client vượt qua bước check robot , giao diện check robot sẽ kích hoạt trở lại sau 1 khoảng thời gian mình thiết lập , ở đây mình set 1 tuần để tránh gây khó chịu với người dùng thật.

11
Leave a Reply

avatar
7 Comment threads
4 Thread replies
227 Followers
 
Most reacted comment
Hottest comment thread
8 Comment authors
Phan Viet Thanhrs8ThắngJ.Padmin Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Sun Solution
Guest
Sun Solution

Tìm hiểu cloudflare trên mạng, thấy bài của bạn là ngon lành cành đào nhất, còn các site khác hướng dẫn chung chung. Mình đã làm theo và site đã chạy ổn định.
Cảm ơn bạn!

dep_trai_nhat_xom
Guest
dep_trai_nhat_xom

Bài viết hay đúng cái mình đang quan tâm, nhưng tạo cái Rule Captcha thì không ổn lắm, vì nó cực kỳ gây khó chịu cho người dùng (mình truy cập 10 trang bắt gõ capcha thì out hết 9 trang), vừa mất khách lại không tốt cho Seo. Hy vọng tác giả có một phương án khác ổn áp hơn, tks!

Nam
Guest

Chỗ firewall rule cho phép IP VietNam và Knows Bot. Theo mình là dùng điều kiện hoặc (Or) chứ không phải AND. Có nghĩa là hoặc IP VN hoặc Bot hợp lệ

rs8
Guest

Mình thử theo điều kiện Or thì nó chặn luôn VN ko vào được luôn

J.P
Guest
J.P

Tuyệt vời nha, ra thêm các phương pháp tối ưu hơn đi bạn. Thanks!

trackback

[…] Chống DDOS bằng CloudFlare PrevTrướcKhuyến mãi 16/10 – 31/10 SauGo Top Mạng Xã HộiNext […]

Phan Viet Thanh
Guest

Cách của bạn thấy rất ok, nhưng việc gọi đến API thì sao có thể sử lý captcha??
Nhờ bạn có thể suggest cho mình cách đượck không?

Thắng
Guest
Thắng

Xin chào ban có thể hỗ trợ mình trực tiếp

Phan Viet Thanh
Guest

Các của bạn thấy rất ok, nhưng việc gọi đến API thì sao có thể sử lý captcha??
Nhờ bạn có thể suggest cho mình cách đượck không?