Kiểm tra số lượng kết nối hoạt động trên cổng 80?


27

Tôi có một máy chủ web, tôi cần kiểm tra số lượng kết nối trong máy chủ của mình tại thời điểm đó,

tôi đã sử dụng sau đây

netstat -anp |grep 80 |wc -l

cái này trở lại với

2542

nhưng từ phân tích google của tôi, tôi biết rằng người dùng đồng thời không quá 100.

is this correct ? 
if not how to i get the active number of connections ? 
is this sign of a victim of DOS attack how do i know that ?

Với ssbạn có thể lọc cổng và trạng thái nhanh hơn một chút : ss -nt dport == :80 and state connected.
eckes

Số lượng kết nối không phải là số lượng người dùng. Mỗi trình duyệt người dùng có thể mở nhiều kết nối cùng một lúc. Ngược lại, trong khi hiếm hơn, nhiều người dùng sử dụng cùng một proxy chỉ có thể xuất hiện thông qua một kết nối.
Patrick Mevzek

Câu trả lời:


50

Hãy thử chỉ đếm các kết nối THÀNH LẬP:

netstat -anp | grep :80 | grep ESTABLISHED | wc -l

Ngoài ra, hãy cẩn thận về việc không sử dụng dấu hai chấm trong câu lệnh grep cổng của bạn. Chỉ cần tìm kiếm 80 có thể dẫn đến kết quả sai từ các pids và các cổng khác có các ký tự 80 trong đầu ra của chúng.


5
grep -w 80giải quyết vấn đề đó, và loại bỏ những thứ như 8093.
Michael Hampton

1
vâng, bạn nói đúng: 80 cũng có thể giới thiệu dương tính giả.
d34dh0r53

@MichaelHampton Cả grep -w 80 và: 80 cũng sẽ tính các kết nối http đi, nếu có. netstat -ntp | awk '{print $ 4}' | grep -w 80. Và vâng, tôi quan tâm quá nhiều về màu sắc của bikeshed :) :).

Cái này được cải thiện .. netstat -an | grep -w 80 | grep -i thành lập | awk {'in $ 5'} | cắt -d: -f1 | sắp xếp | uniq -c | sort -n
user169015

2

Lấy @ d34dh0r53 trả lời một bước "xa hơn" (hướng tới câu trả lời với phối cảnh "rộng hơn"), bạn cũng có thể kiểm tra tất cả các kết nối được sắp xếp theo trạng thái của chúng bằng cách sau:

netstat -ant | grep :<port_num> | awk '{print $6}' | sort | uniq -c | sort -n

ví dụ:

netstat -ant | grep :8000 | awk '{print $6}' | sort | uniq -c | sort -n

Một đầu ra có thể có thể là:

1 CLOSING
1 established
1 FIN_WAIT2
1 Foreign
2 CLOSE_WAIT
6 FIN_WAIT1
7 LAST_ACK
7 SYN_RECV
37 ESTABLISHED
44 LISTEN
297 TIME_WAIT

Hy vọng nó sẽ giúp và xin vui lòng tăng lên bất kỳ công phu và / hoặc ý kiến ​​bạn có ở trên.

Chúc mừng

Chàng.


1

Bạn chỉ có thể đặt địa chỉ IP của mình vào đó thay vì lo lắng về việc xâu chuỗi nhiều greps, sed và awks với nhau.

netstat -anp | grep -c $(hostname -i):80

Sử dụng $(hostname -i)sẽ cho phép sử dụng lệnh này trên bất kỳ hộp, IP tĩnh / động, v.v.


0
ss -tn src :80 or src :443

Điều này sẽ hiển thị tất cả các kết nối đến các cổng cục bộ 80 hoặc 443 (thêm / sửa đổi cổng nếu cần).

Tuyên bố miễn trừ trách nhiệm: Tôi nhận ra đây là một câu hỏi cũ, nhưng nó vẫn là kết quả hàng đầu tại Google, vì vậy tôi nghĩ rằng nó xứng đáng là một câu trả lời sử dụng các tiện ích hiện đại.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.