Khi số lệnh truy cập quá lớn, máy chủ sẽ quá tải và không còn khả năng xử lý các yêu cầu. Hậu quả là người dùng không thể truy cập vào các dịch vụ trên các trang web bị tấn công DDoS.
Mình xin chia sẻ lại bài của BKNS, giới thiệu một số lệnh cơ bản để kiểm tra server trong trường hợp này.
– Đếm lượng connection vào Port 80:
netstat -n | grep :80 |wc -l
– Kiểm tra số lượng connection đang ở trạng thái SYN_RECV:
netstat -n | grep :80 | grep SYN_RECV|wc -l
– Hiển thị tất cả các IP đang kết nối và số lượng kết nối từ mỗi IP:
netstat -an|grep :80 |awk '{print $5}'|cut -d":" -f1|sort|uniq -c|sort -rn
– Nếu muốn kiểm tra IP nào mở nhiều SYN thì thêm vào:
netstat -an|grep :80|grep SYN |awk '{print $5}'|cut -d":" -f1|sort|uniq -c|sort -rn
– Đối với server có nhiều IP, để kiểm tra IP nào đang bị tấn công:
netstat -plan | grep :80 | awk '{print $4}'| cut -d: -f1 |sort |uniq -c
– Hiển thị tất cả các IP đang kết nối và số lượng kết nối từ mỗi IP:
netstat -an | grep ':80' | awk '{print $5}' | sed s/'::ffff:'// | cut -d":" -f1 | sort | uniq -c
– Hiển thị số lượng kết nối mỗi loại
netstat -an | grep :80 | awk '{print $6}' | sort | uniq -c
61 ESTABLISHED 13 FIN_WAIT1 17 FIN_WAIT2 1 LISTEN 25 SYN_RECV 298 TIME_WAIT
– Hiển thị tất cả các IP đang kết nối và số lượng kết nối từ mỗi IP
watch "netstat -an | grep ':80' | awk '{print \$5}' | sed s/'::ffff:'// | cut -d\":\" -f1 | sort | uniq -c"
watch "netstat -an | grep :80 | awk '{print \$6}' | sort | uniq -c"
Cài này chặn IP thì không hoạt động tốt lắm với những web đằng sau CloudFlare. Có ai có ứng dụng WEB bị ddos thì thử cài vDDoS Protection Reverse Proxy ở https://sourceforge.net/p/vddos-protection. Nó chống ddos ở Layer 7 lọc gói tin DOS, DDOS, SYN Floods, HTTP Floods...
Trả lờiXóaDDoS chỉ có thể hạn chế chứ không thể chống được , hạn chế DDoS là một bài toán tốn nhiều công sức và tiền bạc trên mọi layer . Câu lệnh netstat chỉ dùng để liệt kê số lượng connection tới server hoặc hệ thống .
Xóa