August 21, 2015

Chống DDoS với Varnish

Thông thường Varnish sử dụng chính để làm cache front end, tuy nhiên bạn hoàn toàn có thể cấu hình sử dụng để chống DDoS.
Varnish Cache
Hướng dẫn này viết từ trường hợp thực tế, mình đã chống DDoS thành công cho một người bạn. Nếu bạn cũng đang đau đầu về việc bị DDoS, hãy tham khảo bài viết này biết đâu có thể áp dụng được.
Ngay khi kết nối SSH, mình kiểm tra file access.log thì thấy ngay đúng là server đang bị DDoS.
DDoS access.log
Một loạt request có cách thức giống nhau, cùng một user-agent, IP khác nhau. Tính sơ sơ cũng phải đến cả trăm request mỗi giây, hỏi sao server không bị overload.
Nếu sử dụng CSF để block từng IP thì không ổn, vì quá nhiều IP. May thay các request này đều có một điểm chung là user-agent trong header giống nhau, như vậy có thể block lại được toàn bộ những request này dễ dàng.
Do CSF không hỗ trợ block theo header, nên mình phải sử dụng Varnish để filter riêng những request này ra và trả về Error 403. Với một đoạn code ngắn bên dưới để trong block sub vcl_recv { ... }, mình đã khống chế hoàn toàn được vụ DDoS.
sub vcl_recv {
        if (req.http.user-agent ~ "Hotbar") {
                return(synth(403,"Not allowed."));
        }
Ý nghĩa của đoạn code trên là filter những request có user-agent chứa Hotbar, nếu có thì trả lại lỗi 403, ngược lại thì pass cho Nginx webserver xử lý.
nguồn: http://hocvps.com/chong-ddos-voi-varnish/

Related Posts:

  • Hướng dẫn sử dụng text editor vi trong linux Hôm trước, mình có hướng dẫn các bạn cách sử dụng text edior nano trong Linux. Còn một công cụ nữa có chức năng tương tự là vi, hôm nay mình sẽ hướng dẫn sử dụng tiếp. 1. Mở file Cũng giống như các editor khác bạn cần… Read More
  • [LINUX] CÀI ĐẶT WHM/CPANEL TRÊN MÁY CHỦ HOẶC VPS Để cài đặt Cpanel, bạn hãy login vào VPS qua SSH bằng tài khoản root, sau đó sử dụng các lệnh ở phía dưới để cài đặt Cpanel. 1. Cài đặt Cpanel/WHM # yum install selinux coreutils binutils make dialog gcc gcc-* glib* # y… Read More
  • Một số lệnh cơ bản kiểm tra server khi bị DDoS Tấn công từ chối dịch vụ phân tán (DDoS – Distributed Denial Of Service) là kiểu tấn công làm cho hệ thống máy tính hay hệ thống mạng quá tải, không thể cung cấp dịch vụ hoặc phải dừng hoạt động. Trong các cuộc tấn công DDoS… Read More
  • Hướng dẫn tìm file bất kỳ trong Linux Thông thường các webserver hoặc service bạn cài đặt trên server sử dụng 1 file quản lý cấu hình. Mỗi service lại có file cấu hình với đường dẫn khác nhau. Bản thân mình nhiều khi cũng không nhớ nổi file cấu hình được để ở đâ… Read More
  • Lệnh kiểm tra các thông số VPS Linux Một số câu lệnh để các bạn có thể kiểm tra thông số cấu hình của VPS Linux Lệnh kiểm tra CPU: cat /proc/cpuinfo Lệnh theo dõi CPU: top -c Lệnh kiểm tra hệ điều hành: uname -a Lệnh kiểm tra phiên bản hệ điều hành (CentOS)… Read More

0 comments:

Post a Comment