Trường hợp của site A.com (Có sự hỗ trợ của Cloudflare)Công việc chống DDOS nếu có sự hỗ trợ của Cloudflare thì tương đối đơn giản, theo sự hiểu biết của tôi thì chỉ cần bạn vận dụng tốt Cloudflare, hầu như website của bạn sẽ là bất tử. Tất nhiên để đạt được điều đó bạn cần một số hiểu biết và cấu hình chính xác nhằm loại bỏ kẻ tấn công.
Tôi nhận được trường hợp của 1 website mà tôi tạm gọi là A.com:
Nó đang bị DDoS mặc dù chạy dưới sự bảo vệ của Cloudflare, kiểm tra sơ lược một vòng cho thấy nó là máy chủ ảo giá rẻ cung cấp từ Vultr.com, cấu hình tài nguyên trung bình (4 core cpu). Kẻ tấn công vẫn chưa bypass sự bảo vệ của Cloudflare tức là vẫn chưa biết IP thật của máy chủ, các gói tin hoàn toàn đến từ các máy chủ proxy trung gian của Cloudflare. Máy chủ vẫn chưa đi vào tình trạng "Full-net" tức là chỉ mới tình trạng "
Half-net", CPU/RAM/IO... đang quá tải rất cao, gấp mấy chục lần chịu đựng của máy chủ, trên Cloudflare của chủ nhân trang web, họ có cấu hình sẳn vài rule captcha nhưng không thực sự hoạt động hoặc hoạt động không đúng.
Tôi tiến hành cài vDDoS vào máy chủ, sau đó xóa bỏ tất cả các rule trên Cloudflare, tức là traffic sẽ hoàn toàn đi từ Cloudflare đến vDDoS và sau đó proxy vào backend.
Bật
Javascript-challenges trên vDDoS, (
bởi vì challenges này rất nhanh, mode high của vDDoS chỉ tốn 1s để xác minh trình duyệt của client có bộ xử lý javascript hay không) Việc này cũng có hiệu quả nhưng vẫn không như ý, CPU/RAM/IO... tạm thời không quá tải nhiều lắm nhưng kẻ tấn công vẫn không ngừng lại. Tức là vẫn đang trong tình trạng "
Half-net", CPU/RAM/IO... thì vẫn dành phần lớn tài nguyên để xử lý nhiệm vụ
Javascript-challenges.
Tôi thử bật captcha trên Cloudflare cho toàn thế giới "trừ VN (vì trang này chủ yếu cần khách từ Vietnam) và trừ các BotSearch Google, Bing, Facebook...". Vì tình trạng hiện tại đã rất an toàn, tôi tắt Javascript-challenges trên vDDoS.
Mọi việc khá là tốt, các traffic của kẻ tấn công hoàn toàn bị ngăn chặn tại máy chủ của Cloudflare (do chúng không thể vượt qua captcha), đổi lại, A.com gặp một hạn chế là khi khách truy cập từ các nước vào A.com, họ sẽ bị Captcha-challenges. Mọi việc tốt cho đến ngày hôm sau, kẻ tấn công vẫn không bỏ cuộc.
Ngày hôm sau, máy chủ vẫn trong tình trạng quá tải CPU/RAM/IO... Full Load. Sau khi kiểm tra lại logs của vDDoS ghi nhận, có một cuộc tấn công DDOS từ các IP của VN, kẻ tấn công đã thu thập một lượng IP Vietnam tuy không quá lớn nhưng đủ để đánh sập trang web.
Do đó chúng ta cần bắt đầu lọc các gói tin đến từ VN, tuy nhiên nếu bật Captcha-challenges của Cloudflare luôn cho cả VN thì thật là ngốc, vậy xem như website của chúng ta hoàn toàn bị captcha toàn thế giới. Vì thế, trên Cloudflare tôi vẫn để Allow cho VN và trên vDDoS tôi bật Javascript-challenges.
Tới đây, Cuộc tấn công từ VN nhanh chóng bị dẹp bỏ, CPU/RAM/IO... không còn tình trạng quá tải, website vào từ VN nhanh chóng trơn tru (bởi vì Javascript-challenges của vDDoS rất nhanh, mode high của vDDoS chỉ tốn 1s để xác minh trình duyệt của client có bộ xử lý javascript hay không)
Sau một vài ngày, kẻ tấn công nản chí, từ bỏ, tôi tắt hết tất cả bộ lọc, vDDoS về no, Cloudflare về Medium... kẻ tấn công vẫn không quay trở lại, vì hắn biết nếu hắn tấn công mọi chuyện sẽ như cũ. (
Bạn có thể làm mọi thứ tự động qua API cloudflare cung cấp, ví dụ khi CPU hoạt động 90% sẽ bật captcha trở lại)
Hãy nhớ rằng chúng ta đã allow tất cả truy vấn từ các BotSearchs Google, Bing, Facebook... do đó từ vị trí các Bots này truy cập nó không hể biết gì về challenges, captcha... này nọ dù là của vDDoS hay Cloudflare. Do đó các vấn đề SEO không gặp trở ngại.
Có dễ không? Tôi thấy rất dễ, Cloudflare cung cấp tất cả miễn phí trong gói Free của họ, chỉ cần vận dụng tốt các tùy chọn họ cho phép sử dụng, thậm chí 1 VPS yếu (1 core) bạn có thể giữ cho website hoạt động ở mức chấp nhận được, không chết.
Vậy có điều gì cần thảo luận ở đây? Nếu việc AntiDDOS dễ dàng như vậy thì có gì phải lo lắng? Các SystemAdmin sinh ra để làm gì khi chỉ cần vài cú click chuột trên Cloudflare cũng đủ để ngăn một trận lụt lớn?
Vấn đề thứ 1: sự phụ thuộc, hãy đặt ra câu hỏi nếu không có Cloudflare hoặc vì lý do gì đó họ từ chối không cho bạn sử dụng miễn phí nữa, bạn sẽ làm gì? Bạn sẽ bỏ ra 200USD/tháng để nâng cấp gói lên Business và tài trợ cho công ty họ?
Vấn đề thứ 2: nếu giả sử trong trường hợp site A.com ở trên họ không dùng vps giá rẻ 4 cores từ Vultr mà họ có một máy chủ với sức mạnh x10 hoặc x100 lần. Tôi sẽ làm gì? Tôi cũng sẽ lại làm mấy cái điều ở trên? Và kết quả là cũng tương tự như khi dùng 1 vps 1 core, vậy thì họ mua tài nguyên dư thừa làm gì? Hãy thử tưởng tượng bạn mua 1 máy PC 10kUSD chơi game và trải nghiệm của nó cũng y chang trên 1 máy PC 1kUSD (không khác biệt về đồ họa cũng như âm thanh cảm giác bấm...)
Tôi sẽ gọi đây là vấn đề của "
sự tự vệ thái quá", là sự căm ghét của người dùng đối với captcha sẽ rời bỏ trang web, là một cộng đồng người VN từ khắp các châu lục mỗi khi vào web sẽ bị hỏi captcha (có đến 2tr người VN tại Mỹ). Nếu bạn đọc đến cuối bài viết tôi sẽ cho bạn xem một hướng giải quyết vấn đề "sự tự vệ thái quá" này. Còn câu chuyện site A.com may mắn được kẻ thù bỏ qua cho nên nó sẽ kết thúc tại đây.
Tin tôi, câu chuyện của site B.com kịch tính hơn nhiều.