Netstat awk print 5 cut sort uniq sort là gì năm 2024

– Kiểm tra tình trạng tài nguyên server:

htop

– Đếm số lượng connection vào port 80:

netstat -n | grep :80 |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 

– Kiểm tra số lượng connection đang ở trạng thái SYN_RECV:

netstat -n | grep :80 | grep SYN_RECV|wc -l 

– Kiểm tra IP nào mở nhiều SYN:

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 

– 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"

Khi đã phát hiện IP có dấu hiệu bất thường, bạn có thể chặn truy cập IP đó lại:

netstat -n | grep :80 |wc -l

0

Ví dụ: route add 192.168.0.123 reject

Khi server đã bị tê liệt vì tiêu tốn quá nhiều tài nguyên bởi cuộc tấn công. vậy giải pháp để bạn khách phục sẽ là gì. Dưới đây là một vài giải pháp mình đã tham khảo được để giảm thiểu các vấn đề này.

Dưới đây là 1 vài cách thức để giúp bạn kiểm tra số lượng connection tới server của bạn khi bạn cảm thấy server quá tải trì ệ, tê liêt.

Đếm lượng connection vào các port web 80, 443..

netstat -n | grep :80 |wc -l
# Output
# 2034

Kiểm tra số lượng connection đang ở trạng thái SYN_RECV

netstat -n | grep :80 | grep SYN_RECV|wc -l
# Output
# 1034

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
# Output
# 1012 14.177.107.xxx
# 28 14.177.107.xxx
# 1 32.109.222.xxx
# 7 83.102.152.xxx
# ...
netstat -an | grep ':80' | awk '{print $5}' | sed s/'::ffff:'// | cut -d":" -f1 | sort | uniq -c
# Output
# 1012 14.177.107.xxx
# 28 14.177.107.xxx
# ...

Nếu bạn muốn kiểm tra IP nào mở nhiều SYN

netstat -an|grep :80|grep SYN |awk '{print $5}'|cut -d":" -f1|sort|uniq -c|sort -rn
# Output
# 1012 14.177.107.xxx

Nếu bạn sử dụng nhiều server muốn kiểm tra địa chỉ server nào đang bị tấn công

netstat -plan | grep :80 | awk '{print $4}'| cut -d: -f1 |sort |uniq -c
# Output
#   1
#   1012 14.177.107.xxx
#   1 45.32.240.xxx

Khi đã kiểm tra và xác định có dấu hiệu nghi vấn việc cần làm của bạn là block ngay lập tức IP đó lại

route add 14.177.107.xxx reject

Sau đó hãy restart lại tất các các connection đang diễn ra bằng cách restart web server của bạn

service nginx restart

Đây là các giải pháp nhằm mục đích chống tấn công nhanh chóng để khắc phục khi server của bạn bị tê liệt. Hi vọng nó sẽ giúp ích phần nào cho các bạn.

Tấn công từ chối dịch vụ phân tán ( DDoS – Distributed Denial Of Service) là một dạng tấn công nhằm gây cạn kiện tài nguyên hệ thống máy chủ và làm ngập lưu lượng băng thông Internet, khiến truy cập từ người dùng tới máy chủ bị ngắt quãng, truy cập chập chờn, thậm chí không thể truy cập được internet, làm tê liệt hệ thống. Hoặc thậm chí là cả một hệ thống mạng nội bộ.

Trong một cuộc tấn công, kẻ tấn công không chỉ sử dụng máy tính của mình mà còn lợi dụng hoặc sử dụng ( được cho phép ) các máy tính khác. Bằng việc lợi dụng các lổ hổng bảo mật hay sự thiếu hiểu biết của người dùng để kiểm soát các máy tính, sau đó sử dụng các máy tính đó để gửi dữ liệu hoặc các yêu cầu với số lượng lớn vào website hay gửi thư rác đến các địa chỉ email cụ thể.

Các kiểu tấn công DDOS phổ biến

Ở bài viết này Tenten sẽ hướng dẫn các bạn kiểm tra máy chủ khi có dấu hiệu bị DDoS. Quý khách có thể tham khảo hướng dẫn SSH tại đây.

Bài viết hôm nay sẽ giới thiệu tới bạn một số lệnh cơ bản kiểm tra server khi bị DDoS (Distributed Denial of Service) - 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.

– Đế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”

Nguồn: pavietnam