Chống DDoS cho VPS, Chống DDoS cho server Windows

Chống DDoS cho VPS, Chống DDoS cho server Windows

 

Làm thế nào chống DDoS cho VPS?

 

Bài viết này sẽ hướng dẫn bạn cách chống DDoS cho VPS chạy trên hệ điều hành Linux (Ubuntu, Centos, Redhat,..),

Đối với chống DDoS cho Windows, về nguyên lý cũng tương tự

Đa số nhu cầu các bạn dùng VPS để chạy Website và khi bị đánh DDoS không biết kẻ tấn công đánh bạn theo đường nào để chặn, mình xin chia sẻ như sau:

Thực ra chống DDoS cho VPS rất đơn giản

Điều quan trọng thứ 1: Bạn cần hiểu trên VPS bạn đang chạy những dịch vụ gì và port dịch vụ tương ứng là gì.

Những dịch vụ nào sẽ phơi ra bên ngoài (public), những port nào không nên.

Đề cập tới dịch vụ sử dụng nhiều nhất là Website chẳng hạn,

  • Apache thường chạy ở port 80 hoặc 443 ->  Thông thường sẽ phơi port này ra bên ngoài ra Internet để người dùng truy cập vào
  • Mysql thường chạy ở port 3306  -> Port này nhiều bạn để public do quá trình cài đặt mặc định theo phần mềm. Lưu ý đặc biệt không nên để public, rất dễ bị hack và xâm nhập.

Hãy vào setting trên Mysql và listen sang IP 127.0.0.1, phiên bản mới của mysql-server thường đặt config cấu hình tại: 

/etc/mysql/mysql.conf.d/mysqld.cnf

bind-address            = 127.0.0.1

Điều quan trọng thứ 2:  Đừng phơi (public) bất cứ dịch vụ nào khác ra bên ngoài Internet, chỉ public cổng dịch vụ Web (80, 443)

Nếu chẳng may phải public dịch vụ khác như SSH (truy cập từ xa) thì hãy dùng key để xác thực

Đến lúc này, hãy đảm bảo VPS của bạn chỉ public port Website 80, 443 thôi nhé.

Như vậy mình có thể đảm bảo với bạn, tấn công DDoS TCP chỉ nhắm vào port 80, 443, giờ thì chặn DDoS trên 2 port này là xong.

 

Cách ngăn chặn DDoS trên VPS vào dịch vụ Web đúng cách

Nhiều bạn cài phần mềm như Firewall trên VPS để giới hạn truy cập với hi vọng ngăn chặn truy cập DDoS. Cách này cũng đỡ được phần nào nhưng chưa đúng do phần mềm Firewall sẽ chặn theo nguồn IP.

Bạn hãy thử nghĩ nhiều người trong 1 cơ quan hay 1 tòa nhà dùng chung 1 IP WAN thì như thế nào, bạn sẽ vô tình chặn rất nhiều người vào dịch vụ của bạn.

Thêm nữa, với bộ rule firewall không tối ưu sẽ làm request vào dịch vụ trên máy chủ chậm hơn, đồng thời dẫn tới tài nguyên CPU trên VPS tăng cao.

 

Nên chặn DDoS bằng cách nào?

Hãy chặn tại máy của người dùng cuối, bằng cách nhận dạng người dùng theo cookie, user-agent,…

Có nhiều công cụ hỗ trợ việc này, cách phổ biến bạn dùng Nginx làm ứng dụng Web có thể dùng module nginx là ratelimit

Cách này yêu cầu tính kỹ thuật và đặt ngưỡng limit cho đúng.

Còn 1 cách khác, bạn có thể dùng Free tài khoản chống DDoS của TABATECH hoặc CloudFlare, tham khảo hướng dẫn

Hướng dẫn đăng ký chống DDoS miễn phí

Cơ chế chống DDoS của CloudFlare và TABATECH giống nhau ở chỗ họ sẽ là Proxy ở giữa và hứng chịu toàn bộ tấn công giúp bạn,

  • Với CloudFlare, họ sẽ phân phối nội dung Web của bạn đi nhiều máy chủ nước ngoài để tăng khả năng chịu đựng cuộc tấn công đi nhiều vị trí. Có thể Web với nội dung thay đổi liên tục sẽ khá lâu để nội dung của bạn tự động được update, và do server của họ ở nước ngoài nên tốc độ truy cập từ Viet Nam sẽ chậm hơn một chút.
  • Với TABATECH, sẽ giới hạn truy cập tại người dùng cuối và bổ sung tầng cache tăng tốc độ Website của bạn hơn.

Trên đây là hướng dẫn cách chặn DDoS trên VPS sao cho hiệu quả. Đối với bạn bảo vệ sản phẩm thương mại nên cân đối sử dụng giải pháp tối ưu, tránh chặn DDoS ok nhưng chặn nhầm sang nhiều người dùng khác.